Hi,

We're running carp on two Openbsd 4.0 routers on vlan interfaces and
we're observing a state change from backup to master to backup on the
host that should stay as the backup. This happens periodically and
adjusting the advbase and advskew seems to have no effect apart from
adjusting the periodicity of the state change.

Here's what a tcpdump looks like:

17:26:35.892363 0:0:5e:0:1:2 1:0:5e:0:0:12 0800 70: CARPv2-advertise 36: vhid=2 
advbase=1 advskew=0 demote=0 (DF) [tos 0x10]
17:26:36.902391 0:0:5e:0:1:2 1:0:5e:0:0:12 0800 70: CARPv2-advertise 36: vhid=2 
advbase=1 advskew=0 demote=0 (DF) [tos 0x10]
17:26:37.248384 0:0:5e:0:1:2 1:0:5e:0:0:12 0800 70: CARPv2-advertise 36: vhid=2 
advbase=2 advskew=100 demote=0 (DF) [tos 0x60]
17:26:37.248387 0:0:5e:0:1:2 33:33:0:0:0:12 86dd 90: fe80::211:43ff:fecd:3cbe > 
ff02::12: ip-proto-112 36 [class 0x60]
17:26:37.912426 0:0:5e:0:1:2 1:0:5e:0:0:12 0800 70: CARPv2-advertise 36: vhid=2 
advbase=1 advskew=0 demote=0 (DF) [tos 0x10]
17:26:38.922447 0:0:5e:0:1:2 1:0:5e:0:0:12 0800 70: CARPv2-advertise 36: vhid=2 
advbase=1 advskew=0 demote=0 (DF) [tos 0x10]
17:26:39.932482 0:0:5e:0:1:2 1:0:5e:0:0:12 0800 70: CARPv2-advertise 36: vhid=2 
advbase=1 advskew=0 demote=0 (DF) [tos 0x10]
17:26:40.942505 0:0:5e:0:1:2 1:0:5e:0:0:12 0800 70: CARPv2-advertise 36: vhid=2 
advbase=1 advskew=0 demote=0 (DF) [tos 0x10]
17:26:41.952534 0:0:5e:0:1:2 1:0:5e:0:0:12 0800 70: CARPv2-advertise 36: vhid=2 
advbase=1 advskew=0 demote=0 (DF) [tos 0x10]
17:26:42.962565 0:0:5e:0:1:2 1:0:5e:0:0:12 0800 70: CARPv2-advertise 36: vhid=2 
advbase=1 advskew=0 demote=0 (DF) [tos 0x10]
17:26:43.972590 0:0:5e:0:1:2 1:0:5e:0:0:12 0800 70: CARPv2-advertise 36: vhid=2 
advbase=1 advskew=0 demote=0 (DF) [tos 0x10]
17:26:44.318530 0:0:5e:0:1:2 1:0:5e:0:0:12 0800 70: CARPv2-advertise 36: vhid=2 
advbase=2 advskew=100 demote=0 (DF) [tos 0x60]
17:26:44.318534 0:0:5e:0:1:2 33:33:0:0:0:12 86dd 90: fe80::211:43ff:fecd:3cbe > 
ff02::12: ip-proto-112 36 [class 0x60]
17:26:44.982625 0:0:5e:0:1:2 1:0:5e:0:0:12 0800 70: CARPv2-advertise 36: vhid=2 
advbase=1 advskew=0 demote=0 (DF) [tos 0x10]
17:26:45.992650 0:0:5e:0:1:2 1:0:5e:0:0:12 0800 70: CARPv2-advertise 36: vhid=2 
advbase=1 advskew=0 demote=0 (DF) [tos 0x10]
17:26:47.002679 0:0:5e:0:1:2 1:0:5e:0:0:12 0800 70: CARPv2-advertise 36: vhid=2 
advbase=1 advskew=0 demote=0 (DF) [tos 0x10]
17:26:48.012707 0:0:5e:0:1:2 1:0:5e:0:0:12 0800 70: CARPv2-advertise 36: vhid=2 
advbase=1 advskew=0 demote=0 (DF) [tos 0x10]

You can see when the state change happens. The backup host advertises
with advskew of 100, advbase of 2 and promptly decides it's the master
until the next advertisment arrives from the machine that really
should be the master. The backup also issues a CARP IPv6 announcement,
which is strange because we don't have IPv6 configured.

It's also random ie. after a reboot of either of the routers it might
work fine, but one of the other carp instances might start misbehaving
in the same way (we have 3 configured altogether). When carp is
working fine, there are no IPv6 announcements. pf is eplicitly set to
allow carp on the interfaces concerned.

Has anyone else seen this before? It's times like this I wish CARP was
actually documented in some sort of RFC type fashion :)

Regards,
Nigel

Reply via email to