Problems with vlan + carp + alias

Giulio Ferro auryn at zirakzigil.org
Wed Jun 18 22:35:48 UTC 2008


Scenario : freebsd 7.0 stable amd64 (compiled today), bce network interface

Simply put, I'm trying to create multiple aliases on the same carp 
interface.
I did this without vlans (on physical interfaces) and it always worked.

Here's what I do:

---rc.conf
...
ifconfig_bce0="inet 192.168.1.1 netmask 255.255.255.0"
ifconfig_vlan10="inet 192.168.10.1 netmask 255.255.255.0 vlan 10 vlandev 
bce0"

ifconfig_carp10="vhid 10 pass qweq 192.168.10.10 netmask 255.255.255.0"
ifconfig_carp10_alias0="192.168.10.11 netmask 255.255.255.0"
ifconfig_carp10_alias1="192.168.10.12 netmask 255.255.255.0"
ifconfig_carp10_alias2="192.168.10.13 netmask 255.255.255.0"
ifconfig_carp10_alias3="192.168.10.14 netmask 255.255.255.0"
ifconfig_carp10_alias4="192.168.10.15 netmask 255.255.255.0"
ifconfig_carp10_alias5="192.168.10.16 netmask 255.255.255.0"
ifconfig_carp10_alias6="192.168.10.17 netmask 255.255.255.0"
ifconfig_carp10_alias7="192.168.10.18 netmask 255.255.255.0"
ifconfig_carp10_alias8="192.168.10.19 netmask 255.255.255.0"
ifconfig_carp10_alias9="192.168.10.20 netmask 255.255.255.0"
...
---

First of all, whenever I try to reload a carp configuration by
/etc/rc.d/netif restart the system goes kernel panic. I always have
to restart the server to load the new configuration. This is not
the core of the problem, however.

If I issue a
ifconfig carp10
I can see all the aliases and the interface is in MASTER state.

When I try to ping these addresses from another machine in the same
vlan (10), I can only ping the vlan base address (192.168.10.10) and the
first aliased address (192.168.10.11). All other aliases don't respond to
external pings.

If I try to inspect incoming packets with tcpdump :
tcpdump -i vlan10 -n icmp
I can see the packets coming in, but the other aliased addresses seem 
inactive.

What is interesting is that an arp request actually takes places and is 
answered
(all aliased ifs have the same mac address), but nobody respond to the ping
but the first alias and the vlan base address.

Does someone have any ideas?






More information about the freebsd-net mailing list