CARP within VirtualBox Does it work?

Damien Fleuriot ml at my.gd
Thu Nov 29 20:48:20 UTC 2012



On 29 Nov 2012, at 21:07, dweimer <dweimer at dweimer.net> wrote:

> On 2012-11-29 12:53, Fleuriot Damien wrote:
>> On Nov 29, 2012, at 6:43 PM, dweimer <dweimer at dweimer.net> wrote:
>> 
>>> I was trying to setup a test of CARP on two virtual machines running in VirtualBox 4.2.4r81684 I am not sure if I have something wrong with my CARP configuration or if VirtualBox just doesn't work right with it.  I can only ping the CARP interface IP address from the machine listed as MASTER, if I do an ifconfig carp0 down on the MASTER the other machine correctly switches form BACKUP to MASTER and then I can ping the interface from it but not from the Original system.
>>> 
>>> The VirtualBox systems are both using bridged networking, and the host cannot ping the carp0 IP address but can ping the interface IP address.
>>> 
>>> Before I go through more trouble shooting, does anyone know if CARP doesn't work with VirtualBox?
>>> 
>>> carp configuration
>>> Machine1:
>>> ifconfig_em0="UP"
>>> ifconfig_em0_name="LAN"
>>> ipv4_addrs_LAN="10.20.190.201/16"
>>> defaultrouter="10.20.111.2"
>>> cloned_interfaces="carp0"
>>> ifconfig_carp0="vhid 1 advskew 100 pass ReduntantCarpTest 10.20.190.203/16
>>> 
>>> ifconfig carp0:
>>> carp0 flags=49<UP,LOOPBACK,RUNNING> metric 0 mtu 1500
>>> inet 10.20.190.203 netmask 0xffff0000
>>> nd6 options=29<PREFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
>>> carp: MASTER vhid 1 advbase 1 advskew 100
>>> 
>>> 
>>> Machine2:
>>> ifconfig_em0="UP"
>>> ifconfig_em0_name="LAN"
>>> ipv4_addrs_LAN="10.20.190.202/16"
>>> defaultrouter="10.20.111.2"
>>> cloned_interfaces="carp0"
>>> ifconfig_carp0="vhid 1 pass ReduntantCarpTest 10.20.190.203/16
>>> 
>>> ifconfig carp0:
>>> carp0 flags=49<UP,LOOPBACK,RUNNING> metric 0 mtu 1500
>>> inet 10.20.190.203 netmask 0xffff0000
>>> nd6 options=29<PREFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
>>> carp: BACKUP vhid 1 advbase 1 advskew 0
>>> 
>>> FreeBSD version is 9.1RC3 on both test machines.
>> 
>> 
>> 
>> We're using FreeBSD and CARP in virtualized environments at work,
>> albeit not on VirtualBox but on Proxmox/KVM.
>> 
>> First, I would advise replacing 10.20.190.203/16 with 10.20.190.203/32
>> 
>> 
>> I notice your carp0 is MASTER on machine1 with an advskew of 100 vs
>> machine 2 advskew 0, same advbase.
>> Confirm this is *after* you've set carp0 down on machine2.
>> 
>> If both carps are up and machine1 with advskew 100 beats machine2
>> with advskew 0, you have an additional problem.
>> 
>> 
>> See if you have any more luck with the /32 address on carp0 anyway.
> 
> The documentation shows the mask matching that of the interface:
> hostname="hostb.example.org"
> ifconfig_fxp0="inet 192.168.1.4 netmask 255.255.255.0"
> cloned_interfaces="carp0"
> ifconfig_carp0="vhid 2 pass testpass 192.168.1.51/24"
> 
> This is consistent with the man page for CARP on the system as well.  Regardless I tried with the /32 and had the same result as I did with the /16.  I had done various UP/DOWN on interfaces so the current MASTER was just the last one to have not been DOWN.  I think I might just copy these VMs to my VMWARE Workstation 9 install on my home PC after work tonight and see if the problem persists.
> 
> -- 
> Thanks,
>   Dean E. Weimer
>   http://www.dweimer.net/

You wouldn't be the famous Weimer from whom weidu originates would you ?

Anyway back on topic, we've had problems here with masks shorter than /32 on carp interaces on 8.x so we changed them all to /32 and they work like a charm.

Might you have the time to test on 8.3 with virtualbox ?

I'll see if I can install 2 of these tomorrow during my lunch break if that's not possible for you, and reproduce your test case.


More information about the freebsd-questions mailing list