Re: using bgpd and ospfd

Previous thread: what's makes a route not valid in openbgpd? by Aaron Glenn on Monday, October 29, 2007 - 4:40 pm. (5 messages)

Next thread: carp on wan interface by Aaron on Monday, October 29, 2007 - 11:27 pm. (9 messages)
To: misc <misc@...>
Date: Monday, October 29, 2007 - 9:19 pm

I set up a test network with bgpd/ospfd, a standard service provider design
where ospf carries the network links and loopbacks and bgp carries
everything,
bgp routers doing nexthop self, core full mesh and access routers rr-clients
of the two nearest core routers.

I'm seeing some pretty odd behaviour that I haven't seen before when only
using bgpd.

Are there any know issues with using this kind of design with bgpd/ospfd ?

Quick example:

View from an access router at another prefix on the other side of the
network
ar1# route get 10.1.102.0
route to: 10.1.102.0
destination: 10.1.102.0
mask: 255.255.255.0
gateway: 172.16.1.6
interface: vlan602
if address: 172.16.1.5
flags: <UP,GATEWAY,DONE,PROTO1>
use hopcount mtu expire
1470 0 0 0

ar1# bgpctl show fib 10.1.102.0
...
flags destination gateway
*B 10.1.102.0/24 172.16.1.6

ar1# bgpctl show rib 10.1.1.02.0
...
flags destination gateway lpref med aspath origin
I*> 10.1.102.0/24 192.168.0.1 120 3010 i
I* 10.1.102.0/24 192.168.0.2 120 3010 i

ar1# ospfctl show fib 192.168.0.1
flags: * = valid, O = OSPF, C = Connected, S = Static
FLags Destination Nexthop
*O 192.168.0.1/32 172.16.1.6

ar1#

So far so good. I now shut down the core router 192.168.0.1
The moment I do that the connectivity dies, even though there is another
path.

ar1# route get 10.1.102.0
route to: 10.1.102.0
destination: 10.1.102.0
mask: 255.255.255.0
gateway: 172.16.1.6
interface: vlan602
if address: 172.16.1.5
flags: <UP,GATEWAY,DONE,PROTO1>
use hopcount mtu expire
1646 0 0 0

ar1# bgpctl show fib 10.1.102.0
...
flags destination gateway
*B 10.1.102.0/24 172.16.1.6

ar1# bgpctl show rib 10.1.1.02.0
...
flags destination gateway lpref med ...

To: misc <misc@...>
Date: Tuesday, October 30, 2007 - 5:16 am

lookslike there is a case we miss listening to the routing socket, or
there is sth in the message that makes us skip it.
can you run "route monitor" on the misbehaving machine while causing
the change and send me the output (no need to spam the list with that
tho)?

--
Henning Brauer, hb@bsws.de, henning@openbsd.org
BS Web Services, http://bsws.de
Full-Service ISP - Secure Hosting, Mail and DNS Services
Dedicated Servers, Rootservers, Application Hosting - Hamburg & Amsterdam

To: misc <misc@...>
Date: Tuesday, October 30, 2007 - 6:17 am

Will do.

So running a setup where ospfd and bgpd carries the same prefixes should
work ?
In the lab setup both ospf and bgp carry the loopback and links, and all
non-core
prefixes are in bgp only.

When I run bgp-only things work like a charm, except for a bit of funkiness
with
existing tcp-sessions to routers showing a bit of funky routing...

/Tony

To: misc <misc@...>
Date: Tuesday, October 30, 2007 - 6:50 am

oh. the same ones. that is a bit iffy right now.

--
Henning Brauer, hb@bsws.de, henning@openbsd.org
BS Web Services, http://bsws.de
Full-Service ISP - Secure Hosting, Mail and DNS Services
Dedicated Servers, Rootservers, Application Hosting - Hamburg & Amsterdam

To: misc <misc@...>
Date: Tuesday, October 30, 2007 - 7:09 am

That was the answer I was looking for =)

No worries, I will adapt the live design I'm implementing as I want it
working
well on 4.2. I can either make sure ospfd and bgpd and don't carry the same
prefixes, which is possibly in this particulare case, or I can go bgp-only.
I'm most likely going bgp-only, hot-potato routing is something I want.

If there is any testing I can do to assist please let me know,
otherwise I'll just continue to play with it. It is my form of mediation
to clear my mind from work.

/Tony

To: Tony Sarendal <tony@...>
Cc: misc <misc@...>
Date: Tuesday, October 30, 2007 - 6:31 am

I had problems with this, I think bgpd was stomping on the ospf route
of my IX's /24, causing the routes from peers to fail nexthop validation
on the other routers. I didn't get to the bottom of it so I just started
filtering that /24 in bgpd but I don't think it's meant to do that.

The routing table doesn't handle multiple routes with differing
priorities, so the daemons must watch for updates on the routing socket
and react to them, I guess this is somewhat delicate but I don't have
a diff so I'll shut up (-:

Previous thread: what's makes a route not valid in openbgpd? by Aaron Glenn on Monday, October 29, 2007 - 4:40 pm. (5 messages)

Next thread: carp on wan interface by Aaron on Monday, October 29, 2007 - 11:27 pm. (9 messages)