Populating BGP from Connected or IGP routes
jof at thejof.com
Mon Jan 23 15:04:20 CST 2012
On Mon, Jan 23, 2012 at 12:46 PM, Eric C. Miller <eric at ericheather.com> wrote:
> Hi all,
> I'm looking for a best practice sort of answer, plus maybe comments on why your network may or may not follow this.
> First, when running a small ISP with about the equivilent of a /18 or /19 in different blocks, how should you decide what should be in the IGP and what should be in BGP? I assume that it's somewhere between all and none, and one site that I found made some good sense saying something to the following, "Use a link-state protocol to track interconnections and loopbacks only, and place all of the networks including customer networks into BGP."
> Secondly, when is it ok, or preferable to utilize "redistribute connected" for gathering networks for BGP over using a network statement? I know that this influences the origin code, but past that, why else? Would it ever be permissible to redistribute from the IGP into BGP?
This is one of those questions where the answer will depend heavily on
who you ask. In my opinion, I would
- Keep externally-learned eBGP routes in one table. The "Internet" table.
- Keep internal links (loopbacks, single-homed (to me) customers,
networks containing next-hops outside your AS) in an IGP (like OSPF or
IS-IS). These routes should very rarely get exchanged outside the AS.
- Where possible, have multi-homed customers speak BGP to your AS and
just treat those routes as those you'll provide transit for
(re-announcing them to other external peers)
-- In cases where customers multi or single-home with their own
address space that they'd like you to address, put very specific
filters and tagging on the routes. This way, you can perform careful
filtering on allowing those routes to cross the boundary from IGP to
EGP (and onto your external peers).
More information about the NANOG