2

I am maintaining an office network with several VLANs. These VLANs are terminated by a redundant pair of Linux boxes as router. Between those I am running VRRP (with keepalived). On failure I am shifting my (virtual) gateway IPs between the two boxes. For IPv4 I am sending a bunch of GARPs afterwards to update the neighbour cache.

How should I proceed with IPv6? From the specs I would guess to do the same, just send an ND NA (with the S bit unset). Would that be right? If - what would be the preferred way for this? Unfortunately I was not able to find a tool like arping for GARP. Any Hints?

Thanks!

2
  • A VRRP implementation that's compliant with RFC 5798 should take care of this for you automatically with no further action needed on your part. Unfortunately keepalived's documentation is ten years out of date and I'm not in the mood to go read the source code... Dec 18, 2012 at 8:25
  • Good hint. But I am just using keepalived as a VRRP daemon and handle the addressing stuff myself. keepalive is soo clumsy!
    – Michuelnik
    Dec 18, 2012 at 8:31

1 Answer 1

2

You shouldn't have to do anything special; I have exactly the same setup as you (multiple VLANs routed by a HA pair of Linux boxes using keepalived).

I see keepalived sends Unsolicited NA's when a box takes MASTER:

<snip>
Dec 18 12:03:29 fw1 Keepalived_vrrp[23646]: VRRP_Instance(ipv6) Sending Unsolicited Neighbour Adverts on bond0.11 for 2001:44b8:xxxx:xxxx::f0
Dec 18 12:03:29 fw1 Keepalived_vrrp[23646]: VRRP_Instance(ipv6) Sending Unsolicited Neighbour Adverts on bond0.12 for 2001:44b8:xxxx:xxxx::f0
Dec 18 12:03:29 fw1 Keepalived_vrrp[23646]: VRRP_Instance(ipv6) Sending Unsolicited Neighbour Adverts on bond0.14 for 2001:44b8:xxxx:xxxx::f0
Dec 18 12:03:29 fw1 Keepalived_vrrp[23646]: VRRP_Instance(ipv6) Sending Unsolicited Neighbour Adverts on bond0.15 for 2001:44b8:xxxx:xxxx::f0
Dec 18 12:03:29 fw1 Keepalived_vrrp[23646]: VRRP_Instance(ipv6) Sending Unsolicited Neighbour Adverts on bond0.16 for 2001:44b8:xxxx:xxxx::f0
Dec 18 12:03:29 fw1 Keepalived_vrrp[23646]: VRRP_Instance(ipv6) Sending Unsolicited Neighbour Adverts on bond0.18 for 2001:44b8:xxxx:xxxx::f0
Dec 18 12:03:29 fw1 Keepalived_vrrp[23646]: VRRP_Instance(ipv6) Sending Unsolicited Neighbour Adverts on bond0.19 for 2001:44b8:xxxx:xxxx::f0
<snip>
2
  • As just answered to Michael Hampton's comment on my question I am just (ab)using keepalived as the VRRP daemon, because it's so clumsy. It does not support "includes" in the configuration and doing daemon restarts for adding interfaces (this happens "sometimes" though regularly) is clumsy, too. And I just want to run /one/ VRRP session, since I cant handle split horizons properly at all....
    – Michuelnik
    Dec 18, 2012 at 8:34
  • Ah I see; I'm not aware of any (common) tools in Linux to send Unsolicited NA's (equivalent of arping -U). OT, but I've never found a problem with adding/removing interfaces. Shutdown the daemon on BACKUP host, then killall -HUP keepalived on the MASTER works for me.
    – fukawi2
    Dec 18, 2012 at 22:20

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .