bgp feed to customer

Hi,

This is probably a typical setup for border router not speaking BGP, wonder
how to handle it properly. Border router B is connected with customer router
C. Router C wants default-only/partial/full routes. Router B can't or is not
willing to handle it. Router C has a multihop EBGP session with a backbone
router A. To get router B know the customer routes, router A redistributes
them from EBGP to OSPF.

The issue is redistribution from EBGP to OSPF works half way. OSPF database
has the external routes, but forwarding address is set to Router A. So the
routing loop occurs between A and B.

I wonder if it is a design issue or configuration issue?

Thanks,
Richard

---------- -------------- ------------

BGP rtr A | ============ | no-BGP rtr B | ============ | Customer C |

---------- -------------- ------------

If the link to the customer is of a type that detects up/down quickly, the easiest way to get around this is to simply point a default to the customer interface at router B.

Another option is running a separate OSPF instance between B and the customer.

Or just ignore the issue that if/when the link to the customer goes down, router B doesn't notice and keeps forwarding packets into the void. You would want to make sure that the customer's prefix isn't propagated in OSPF, though, so the issue is limited to this one router, not the whole AS.

Hi Richard,

Just a SWAG, but run IBGP on router B with just your internal routes
(including the customer route) instead of exporting into OSPF?

Regards,
Bill Herrin

Hi Richard,

Just a SWAG, but run IBGP on router B with just your internal routes
(including the customer route) instead of exporting into OSPF?

Regards,
Bill Herrin

Hi Richard,
       Could you run a bgp session on Router B ? I had to do this once for
a customer because we had layer 3 switches on the edge with routing. I
configured 2 BGP sessions at the customer's router. The first session was
between Customer C and Router B. I only sent the default route to the
customer. The next session was ebgp multihop between Router A and Customer
C with full routing. I did allow the customer to announce the /30 to
Router B just so Router A could learn the return path or you could just
static route the /30 from Router A

Now if the link Breaks between Router B and Customer C BGP will drop both
sessions.

Thanks
Jim Gonzalez

When Router A redistributes external routes to OSPF, it sets the next hop to
itself. All the routers include Router B in the AS sends to traffic to
Router A which sends to Router B and causes a loop. The root cause is the
inability to set next-hop address for ospf route even though external routes
have a 'forward address' field.

It looks like that there are three solutions,
(a), Router B talks EBGP with Router C and then redistribute to OSPF
(b), Router B talks IBGP with Router A and then redistribute to OSPF,
redistribution may not be necessary if you don't care traffic from other
routers goes to Router A first, then to B and C.
(c), Create a tunnel between Routers A and C so that A sends traffic to
tunnel IP, instead router C

Personally I prefer (b) because only one EBGP is required to the customer. I
just need to figure out the IBGP config on Router A so that it only sends
the customer routes instead of the whole table.

Thanks,
Richard