my 2 cents: timing is always a problem, maybe you could arping the next hop and then activate the carp ?
On Wed, Apr 3, 2013 at 9:34 AM, Stuart Henderson <s...@spacehopper.org>wrote: > On 2013/04/03 14:54, Camiel Dobbelaar wrote: > > > > In some cases when a network port comes up, it does not indicate that > > the network is ready. But on linkup, carp(4) will try to get out of > > the INIT state as soon as possible. And because all is quiet it will > > decide to become master. > > > > This then leads to master-master situations. > > > > Here are two examples when this can happen, there are probably more: > > > > (1) spanning tree may be in effect, and not yet forwarding > > > > (2) a powering-up or rebooting switch that activates its ports > > immediately, but does not forward anything while not completely up > > yet (this may be an openbsd bridge too) > > > > I wonder if carp(4) needs an extra knob (*shudder*) to pause in the > > INIT state while the rest of the network gets ready after a linkup. > > > > I see in the source code there are already two mechanisms/workarounds > > that are related, but a pause may be a bit more generic: > > - sc_suppress > > - sc_delayed_arp > > > > Anyone else observe/fix this by other means? Opinions? > > > > > > slightly messy, though at least this also applies to the case with > things other than carp which could also have problems: add "!sleep 5" > or something in hostname.if for the physical interface... > > -- --------------------------------------------------------------------------------------------------------------------- () ascii ribbon campaign - against html e-mail /\