[j-nsp] BGP origination

Richard A Steenbergen ras at e-gerbil.net
Wed Jan 29 02:17:15 EST 2003


I have a question about which technique people use to originate BGP 
routes.

Ok let's say you're originating some routes. Since Juniper lacks the
equivilent of IOS's "network" statement inside bgp, the only way to get
the routes in is through the import policy-statement. Obviously
redistribution of routes you're going to be announcing globally is pure
evil, so the first thought that comes to mind is to create static holddown
routes like one would normally do on a crisco, and then add a community
tag which controls announcement. Thie seems simple enough, and it even has
some great advantages like being able to specify communities, as-path,
etc, on a per route basis. It works great, until you run into the case
where you need to announce a prefix that is the same length as your use of
it inside your network. For example, you have a customer with a /24
implemented as a .1/24 address on an interface, and you need to announce
that /24 for them. The interface route will override the static route
because of preference, the route with the community tags attached will
never get into the rib, and the route will never be announced. (or
somewhat conversely say the /24 is used inside your network and
redistributed via an IGP, the static would win and you would need to 
specify a working next-hop in your holddown route).

So, the second thought one has on a "better way" is to create a
prefix-list which contains all the prefixes to announce. This is
functional, and you can even get the necessary attributes (like
communities) on your routes as part of the import policy-statement. The
problem is, since it's just a prefix-list and not a "route", you lose out
on the incredibly nice functionality of being able to set communities,
as-path, etc, on a per-route basis.

Is there some other technique people are using that combines the benefits
of the two methods? It seems like Juniper gives you just enough rope to
hang yourself by not providing a "network" statement and making you import
routes with a policy-statement, and just not enough to make sure you can't
do any cool rope tricks.

Any ideas would be appreciated.

-- 
Richard A Steenbergen <ras at e-gerbil.net>       http://www.e-gerbil.net/ras
GPG Key ID: 0xF8B12CBC (7535 7F59 8204 ED1F CC1C 53AF 4C41 5ECA F8B1 2CBC)


More information about the juniper-nsp mailing list