Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 1 Mar 2017 15:06:46 +0100
From:      "Lutz Donnerhacke" <lutz@donnerhacke.de>
To:        <ari@ish.com.au>
Cc:        <freebsd-stable@freebsd.org>
Subject:   Re: CARP forcing failover
Message-ID:  <000001d29295$1260ec90$3722c5b0$@donnerhacke.de>

next in thread | raw e-mail | index | archive | help
> igb0.2: flags=3D8943<UP,BROADCAST,RUNNING,PROMISC,SIMPLEX,MULTICAST> =
metric 0 mtu 1500
> 	status: active
> 	vlan: 2 vlanpcp: 0 parent interface: igb0
> 	carp: BACKUP vhid 3 advbase 1 advskew 50
> 	groups: vlan
>=20
> That's two internal vlans and one external network. Each interface has =
its
> own vhid since that's the advice I had in the past.
>=20
> Now, what command can I type that I could run remotely (SSH over the =
em0
> link) to force all the CARP addresses simultaneously to decrease the =
advskew
> and become MASTER. Alternatively I could run something on the MASTER =
to make
> it BACKUP. Everything I've done so far is one command per interface =
which has
> got me in trouble before as I manage to accidentally remove my own =
access to
> the box before I'm done.


You have to provide the correct subset of the parameters to change the =
behaviour without changing the other properties.

# ifconfig igb0.2 vhid 3 advbase 1 advskew 250 pass 'xxxx'

This will change the parameters for the vhid 3 on the interface igb0.2 =
only.
But the change will cover *all* vhid parameters, so if you left some =
off, they will vanish.

Of course, you are free to use multiple IPs per interface using the =
"alias" option.
It does work even for carp instances.

VHIDs needs to be unique per layer2 segment, because they are used as =
selectors for the kernel code to validate the CARP packet.
Please note, that VRRP/HSRP/GLBP may use the same packet format as CARP, =
so their VHIDs should be different from yours.




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?000001d29295$1260ec90$3722c5b0$>