hi all, i am relative new to openbsd (comming from linux) - and i am trying to set up a openbsd firewall with carp/pfsync as described by this: http://www.countersiege.com/doc/pfsync-carp/ very fine article.
I am also using the soekris 4801 hardware - so there should be any hardware problems. I've installed the current openbsd snapshot with flashdist (modifyied to get a kernel with carp enabled). My Setup (for testing purpose at time) ist nearly the same as described in the article - only my internal net is 172.16.0.0/24 instead of 192.168.0.0/24 my config for the machine A (Master) is: -------------------rc--------------------- sysctl -w net.inet.carp.preempt=1 sysctl -w net.inet.carp.arpbalance=1 sysctl -w net.inet.carp.log=1 sysctl -w ddb.panic=0 ifconfig lo0 127.0.0.1 netmask 255.0.0.0 ifconfig sis0 10.0.0.254 netmask 255.255.255.0 broadcast 10.0.0.254 ifconfig sis1 172.16.0.254 netmask 255.255.255.0 broadcast 172.16.0.255 ifconfig sis2 192.168.254.254 netmask 255.255.255.0 broadcast \ 192.168.254.255 ifconfig carp0 10.0.0.1 netmask 255.255.255.0 broadcast \ 10.0.0.255 vhid 1 pass pass1 ifconfig carp1 172.16.0.1 netmask 255.255.255.0 broadcast \ 172.16.0.255 vhid 2 pass pass2 ifconfig pfsync0 up syncif sis2 ------------------------------------------ my config for the machine B (Backup) is: -----------------rc----------------------- sysctl -w net.inet.carp.preempt=1 sysctl -w net.inet.carp.arpbalance=1 sysctl -w net.inet.carp.log=1 sysctl -w ddb.panic=0 ifconfig lo0 127.0.0.1 netmask 255.0.0.0 ifconfig sis0 10.0.0.253 netmask 255.255.255.0 broadcast 10.0.0.255 ifconfig sis1 172.16.0.253 netmask 255.255.255.0 broadcast 172.16.0.255 ifconfig sis2 192.168.254.253 netmask 255.255.255.0 broadcast \ 192.168.254.255 ifconfig carp0 10.0.0.1 netmask 255.255.255.0 broadcast \ 10.0.0.255 vhid 1 advskew 100 pass pass1 ifconfig carp1 172.16.0.1 netmask 255.255.255.0 broadcast \ 172.16.0.255 vhid 2 advskew 100 pass pass2 ifconfig pfsync0 up syncif sis2 ------------------------------------------ my pf.conf on both machines is: --------------pf.conf--------------------- ext_if="sis0" int_if="sis1" cross_if="sis2" pass quick on { $cross_if } proto pfsync pass on { $ext_if $int_if } proto carp keep state ------------------------------------------ which seems to be correctly (thats my point of view). The two boxes are on one switch (there will be two switches in production and a crossover cable). The are both starting correctly - i can connect through the serial cable. I've also connected my linux box to the switch (with the internal ip) so that i can test things. The Problem now is - that nothing works. I can't ping the machines from my linux box - neither i can ping from machine A (254 address) to machine B (253) address. When i try to see the arp cache then i first get some "ether address is broadcast for IP address 10.0.0.2" messages - and then i'll get: ? (10.0.0.2) at (incomplete) on sis0 ? (10.0.0.253) at 00:00:24:c1:c7:48 on sis0 static ? (10.0.0.254) at (incomplete) on sis0 ? (172.16.0.46) at (incomplete) on sis1 so it seems that it can't get the right hardware addresses. here is now my ifconfig -a from machine A (not all cables are on) -------------------------------------------------- lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> mtu 33224 inet 127.0.0.1 netmask 0xff000000 sis0: flags=8943<UP,BROADCAST,RUNNING,PROMISC,SIMPLEX,MULTICAST> mtu 1500 address: 00:00:24:c1:c7:90 media: Ethernet autoselect (100baseTX) status: active inet 10.0.0.254 netmask 0xffffff00 broadcast 10.0.0.254 sis1: flags=8943<UP,BROADCAST,RUNNING,PROMISC,SIMPLEX,MULTICAST> mtu 1500 address: 00:00:24:c1:c7:91 media: Ethernet autoselect (none) status: no carrier inet 172.16.0.254 netmask 0xffffff00 broadcast 172.16.0.255 sis2: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500 address: 00:00:24:c1:c7:92 media: Ethernet autoselect (none) status: no carrier inet 192.168.254.254 netmask 0xffffff00 broadcast 192.168.254.255 pflog0: flags=0<> mtu 33224 pfsync0: flags=41<UP,RUNNING> mtu 1348 pfsync: syncif: sis2 maxupd: 128 enc0: flags=0<> mtu 1536 carp0: flags=41<UP,RUNNING> mtu 1500 carp: MASTER vhid 1 advbase 1 advskew 0 inet 10.0.0.1 netmask 0xffffff00 carp1: flags=41<UP,RUNNING> mtu 1500 carp: MASTER vhid 2 advbase 1 advskew 0 inet 172.16.0.1 netmask 0xffffff00 ------------------------------------------------- and my ifconfig -a on the machine B (not all cables are on) ------------------------------------------------- lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> mtu 33224 inet 127.0.0.1 netmask 0xff000000 sis0: flags=8943<UP,BROADCAST,RUNNING,PROMISC,SIMPLEX,MULTICAST> mtu 1500 address: 00:00:24:c1:c7:48 media: Ethernet autoselect (100baseTX) status: active inet 10.0.0.253 netmask 0xffffff00 broadcast 10.0.0.255 sis1: flags=8943<UP,BROADCAST,RUNNING,PROMISC,SIMPLEX,MULTICAST> mtu 1500 address: 00:00:24:c1:c7:49 media: Ethernet autoselect (none) status: no carrier inet 172.16.0.253 netmask 0xffffff00 broadcast 172.16.0.255 sis2: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500 address: 00:00:24:c1:c7:4a media: Ethernet autoselect (none) status: no carrier inet 192.168.254.253 netmask 0xffffff00 broadcast 192.168.254.255 pflog0: flags=0<> mtu 33224 pfsync0: flags=41<UP,RUNNING> mtu 1348 pfsync: syncif: sis2 maxupd: 128 enc0: flags=0<> mtu 1536 carp0: flags=41<UP,RUNNING> mtu 1500 carp: MASTER vhid 1 advbase 1 advskew 100 inet 10.0.0.1 netmask 0xffffff00 carp1: flags=41<UP,RUNNING> mtu 1500 carp: MASTER vhid 2 advbase 1 advskew 100 inet 172.16.0.1 netmask 0xffffff00 ---------------------------------------------------- so - can anyone tell me what i am doing wrong ? best regards Wolfgang