Injecting routes into BGP via the
network command may not always be practical or even possible, and
injecting routes via redistribution can result in polluting other
autonomous systems with unwelcome, incorrect, or otherwise undesirable
information. For example, redistributing the entire IGP table into BGP
could result in private addresses (or even illegal addresses) being leaked
outside the AS, where they definitely do not belong. In some cases, routes
with inappropriate prefix lengths could make it upstream to your provider
where they are not needed. For example, host routes are generally greeted
with disdain by annoyed systems administrators.
Mutual redistribution between IGP and BGP can
also result in the propagation of flawed routing information. In this
case, a BGP route that was injected from the outside could be sent back
into BGP via the IGP, as if the route originated within the AS. The figure
illustrates the danger of mutual redistribution between protocols.
In the figure, AS100 is the source of NetA and is
sending this information via BGP to AS200. The border router RTC injects
that information into the IGP, and RTB learns about it. RTB is configured
to redistribute the IGP information into BGP. NetA will end up being
advertised via BGP back to the Internet as if it had originated from
AS200. This is very misleading to AS's connected to the Internet because
NetA now has two sources rather than one source (AS100).
To remedy these situations, special filtering should
be put on the border routers to specify what particular networks should be
injected from the IGP into BGP. For protocols that differentiate between
internal and external routes, such as OSPF, you can configure the IGP to
ensure that it will redistribute only internal routes into BGP. (In the
Cisco implementation, external OSPF routes are automatically blocked from
being redistributed into BGP, although you have the option of overriding
this behavior.) For protocols that do not distinguish between internal and
external routes such as RIP or IGRP, special route tagging should be
performed to differentiate between external routes and internal routes.