LAGG and CARP troubles
Alexander Lunev
sol289 at gmail.com
Mon Mar 19 19:34:13 UTC 2012
On Fri, Mar 16, 2012 at 7:42 PM, Freddie Cash <fjwcash at gmail.com> wrote:
> If you're adventurous, could you upgrade a test box to 10-CURRENT and
> try the new CARP code?
Ok, i've set up a distributed network:
10-C1 === internet === 8.2-R === internet === 10-C2
10-C1 and 10-C2 is 10-CURRENT on vmware running on different machines
and located in different networks, they are openvpn clients, which
connects to real server 8.2-R through internet, and none of them can
see other on data link level.
10-C1 differs from 10-C2 only in MAC addresses and in em0
configuration, which is interface for connecting to internet. There
are no firewalls on 10-C, just the network interface, openvpn, bridge
and carp.
ifconfig for 10-C (skipping em0 lo0 plip0):
# ifconfig
em1: flags=8943<UP,BROADCAST,RUNNING,PROMISC,SIMPLEX,MULTICAST> metric
0 mtu 1500
options=98<VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM>
ether 00:0c:29:91:9d:ea
inet 10.100.100.100 netmask 0xffffff00 broadcast 10.100.100.255 vhid 1
nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
media: Ethernet autoselect (1000baseT <full-duplex>)
status: active
carp: MASTER vhid 1 advbase 1 advskew 0
tap0: flags=8943<UP,BROADCAST,RUNNING,PROMISC,SIMPLEX,MULTICAST>
metric 0 mtu 1500
options=80000<LINKSTATE>
ether 00:bd:4e:4d:00:00
nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
Opened by PID 1166
bridge0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
ether 02:d7:b7:da:d6:00
inet 10.80.90.6 netmask 0xffffff00 broadcast 10.80.90.255
nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL>
id 00:00:00:00:00:00 priority 32768 hellotime 2 fwddelay 15
maxage 20 holdcnt 6 proto rstp maxaddr 2000 timeout 1200
root id 00:00:00:00:00:00 priority 32768 ifcost 0 port 0
member: em1 flags=143<LEARNING,DISCOVER,AUTOEDGE,AUTOPTP>
ifmaxaddr 0 port 3 priority 128 path cost 20000
member: tap0 flags=143<LEARNING,DISCOVER,AUTOEDGE,AUTOPTP>
ifmaxaddr 0 port 7 priority 128 path cost 2000000
CARP configured by same command on both 10-C1 and 10-C2 with advskew
100 parameter on one of them:
10-C1# ifconfig em1 vhid 1 pass pppp 10.100.100.100/24
10-C2# ifconfig em1 vhid 1 advskew 100 pass pppp 10.100.100.100/24
After configuring CARP i see advertisings on bridge0 interface of
8.2-R from both 10-C, i see advertisings from 10-C1 on bridge0
interface of 10-C2 and vice versa, and i see advertisings on em1
interfaces of 10-C1 and 10-C2 from both 10-C:
# tcpdump -ne -i em1 net 10.100.100
22:06:14.660011 00:0c:29:cc:fa:84 > 01:00:5e:00:00:12, ethertype IPv4
(0x0800), length 70: 10.100.100.100 > 224.0.0.18: VRRPv2,
Advertisement, vrid 1, prio 0, authtype none, intvl 1s, length 36
22:06:14.769632 00:0c:29:91:9d:ea > 01:00:5e:00:00:12, ethertype IPv4
(0x0800), length 70: 10.100.100.100 > 224.0.0.18: VRRPv2,
Advertisement, vrid 1, prio 0, authtype none, intvl 1s, length 36
^C
I see same strings in /var/log/messages of 10-C1 and 10-C2
Mar 19 21:08:50 home kernel: carp: VHID 1 at em1: INIT -> BACKUP
Mar 19 21:08:53 home kernel: carp: VHID 1 at em1: BACKUP -> MASTER (master down)
So, result is basically the same as in my old post here: i see CARP
messages on both ends on interfaces but CARPs doesn't see them.
BUT HERE'S THE NEWS:
# netstat -s -p carp
carp:
3164 packets received (IPv4)
0 packets received (IPv6)
0 packets discarded for wrong TTL
0 packets shorter than header
0 discarded for bad checksums
0 discarded packets with a bad version
0 discarded because packet too short
0 discarded for bad authentication
> 3164 discarded for bad vhid
0 discarded because of a bad address list
1962 packets sent (IPv4)
0 packets sent (IPv6)
0 send failed due to mbuf memory error
Though net.inet.carp.log = 2, i see no messages about bad packets.
Why CARP thinks that vhid are bad? Can i debug CARP on 10-C?
--
your sweet isn't ready yet
More information about the freebsd-net
mailing list