I finally got CARP _working_ :)

I've a problem when I do "ifconfig carp1 down" on the MASTER host to
test if BACKUP takes over the traffic..

It does work so far. But the problem is that if I'm streaming Internet
radio or are connected to IRC the radio will get stalled when I do
"ifconfig carp1 down" on MASTER, and the IRC disconnects and then
tries to reconnect which of course works.

I think something is wrong, since it shouldn't affect the traffic flow
at all when MASTER interrupt.

I have three interfaces in each host. and my setup looks like
(here is a diff link http://pastebin.com/pastebin.php?diff=749904)

MASTER HOST:
# ifconfig
lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> mtu 33192
       groups: lo
       inet 127.0.0.1 netmask 0xff000000
       inet6 ::1 prefixlen 128
       inet6 fe80::1%lo0 prefixlen 64 scopeid 0x7
hme0: 
flags=8b63<UP,BROADCAST,NOTRAILERS,RUNNING,PROMISC,ALLMULTI,SIMPLEX,MULTICAST>
mtu 1500
       lladdr 08:00:20:9e:7c:60
       groups: egress
       media: Ethernet autoselect (100baseTX full-duplex)
       status: active
       inet6 fe80::a00:20ff:fe9e:7c60%hme0 prefixlen 64 scopeid 0x1
       inet 192.168.1.10 netmask 0xffffff00 broadcast 192.168.1.255
rl0: flags=8943<UP,BROADCAST,RUNNING,PROMISC,SIMPLEX,MULTICAST> mtu 1500
       lladdr 00:08:a1:8e:64:70
       media: Ethernet autoselect (100baseTX full-duplex)
       status: active
       inet 192.168.10.100 netmask 0xffffff00 broadcast 192.168.10.255
       inet6 fe80::208:a1ff:fe8e:6470%rl0 prefixlen 64 scopeid 0x2
fxp0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
       lladdr 00:50:8b:0e:30:02
       media: Ethernet autoselect (100baseTX full-duplex)
       status: active
       inet 192.168.254.254 netmask 0xffffff00 broadcast 192.168.254.255
       inet6 fe80::250:8bff:fe0e:3002%fxp0 prefixlen 64 scopeid 0x3
pflog0: flags=141<UP,RUNNING,PROMISC> mtu 33192
pfsync0: flags=41<UP,RUNNING> mtu 1460
       pfsync: syncdev: fxp0 maxupd: 128
enc0: flags=0<> mtu 1536
carp0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
       carp: MASTER carpdev hme0 vhid 1 advbase 1 advskew 0
       groups: carp
       inet 192.168.1.100 netmask 0xffffff00 broadcast 192.168.1.255
carp1: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
       carp: MASTER carpdev rl0 vhid 2 advbase 1 advskew 0
       groups: carp
       inet 192.168.10.50 netmask 0xffffff00 broadcast 192.168.10.255
# cat /etc/hostname.*
inet 192.168.1.100 255.255.255.0 192.168.1.255 vhid 1 pass foo
inet 192.168.10.50 255.255.255.0 192.168.10.255 vhid 2 pass bar
inet 192.168.254.254 255.255.255.0 NONE
dhcp NONE NONE NONE
up syncif fxp0
inet 192.168.10.100 255.255.255.0 NONE

BACKUP HOST:
# ifconfig
lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> mtu 33192
       groups: lo
       inet 127.0.0.1 netmask 0xff000000
       inet6 ::1 prefixlen 128
       inet6 fe80::1%lo0 prefixlen 64 scopeid 0x7
hme0: 
flags=8b63<UP,BROADCAST,NOTRAILERS,RUNNING,PROMISC,ALLMULTI,SIMPLEX,MULTICAST>
mtu 1500
       lladdr 08:00:20:9c:5d:3a
       groups: egress
       media: Ethernet autoselect (100baseTX full-duplex)
       status: active
       inet6 fe80::a00:20ff:fe9c:5d3a%hme0 prefixlen 64 scopeid 0x1
       inet 192.168.1.7 netmask 0xffffff00 broadcast 192.168.1.255
rl0: flags=8943<UP,BROADCAST,RUNNING,PROMISC,SIMPLEX,MULTICAST> mtu 1500
       lladdr 00:c0:26:6d:ff:6c
       media: Ethernet autoselect (100baseTX full-duplex)
       status: active
       inet 192.168.10.200 netmask 0xffffff00 broadcast 192.168.10.255
       inet6 fe80::2c0:26ff:fe6d:ff6c%rl0 prefixlen 64 scopeid 0x2
fxp0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
       lladdr 00:50:8b:0e:7d:7d
       media: Ethernet autoselect (100baseTX full-duplex)
       status: active
       inet 192.168.254.253 netmask 0xffffff00 broadcast 192.168.254.255
       inet6 fe80::250:8bff:fe0e:7d7d%fxp0 prefixlen 64 scopeid 0x3
pflog0: flags=141<UP,RUNNING,PROMISC> mtu 33192
pfsync0: flags=41<UP,RUNNING> mtu 1348
       pfsync: syncdev: fxp0 maxupd: 128
enc0: flags=0<> mtu 1536
carp0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
       carp: BACKUP carpdev hme0 vhid 1 advbase 1 advskew 50
       groups: carp
       inet 192.168.1.100 netmask 0xffffff00 broadcast 192.168.1.255
carp1: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
       carp: BACKUP carpdev rl0 vhid 2 advbase 1 advskew 50
       groups: carp
       inet 192.168.10.50 netmask 0xffffff00 broadcast 192.168.10.255
# cat /etc/hostname.*
inet 192.168.1.100 255.255.255.0 192.168.1.255 vhid 1 advskew 50 pass foo
inet 192.168.10.50 255.255.255.0 192.168.10.255 vhid 2 advskew 50 pass bar
inet 192.168.254.253 255.255.255.0 NONE
dhcp NONE NONE NONE
up syncif fxp0
inet 192.168.10.200 255.255.255.0 NONE

And pf.conf at both hosts are identical:
# cat /etc/pf.conf
set loginterface fxp0
nat on hme0 from rl0:network to any -> hme0
pass in  on hme0  all
pass out on hme0  all
pass quick on { fxp0 } proto pfsync keep state
pass on { hme0 rl0 } proto carp keep state

any suggestions are welcome
--
/Bachman

Reply via email to