Hello,

I don't know, if this is a bug, but I can recognize a strange thing. Im
setting up a redundant pair of routers and run some tests with carp for
the failover on the lan side. Because of the bug refreshing the kernel
routing table when changing carp-state I use ifstated with an route
delete / route add statement. You can read more about this here:

http://marc.info/?l=openbsd-misc&m=118368434807925&w=2

Everything works fine and I want to optimize my config. I tried to use
"route change" instead of "route delete + route add". But when I was
running tests on the failover (disabling the link on switch side) a
strange thing happened: my bgp session to the rest of the world died.

Jul  7 23:25:48 pinky ifstated[24699]: changing state to primary213
Jul  7 23:25:48 pinky ifstated[24699]: running route change -inet
195.140.213.0/24 -interface 195.140.213.1
Jul  7 23:27:56 pinky bgpd[18893]: neighbor 217.79.210.25 (IXEurope Link
2): received notification: HoldTimer expired, unknown subcode 0
Jul  7 23:27:56 pinky bgpd[18893]: neighbor 194.9.86.8 (iBGP AS35548):
received notification: HoldTimer expired, unknown subcode 0
Jul  7 23:27:56 pinky ifstated[24699]: changing state to backup213

When enabling the link from switch side again, the session came back.

Isn't route change the smartest way to configure the routing in my case?
Or is there a bug in OpenBGPd or the kernel routing table update code?

Regards,

Falk

Reply via email to