Patrick M. Hausen
2018-Mar-21 10:19 UTC
IPv6 connectivity lost when combining if_bridge with a VLAN ...
Hi all, a follow-up to my discovery that certain chipsets don't support 100baseTX any more. ;-) We use these servers as jail hosts and use if_bridge with VIMAGE and iocage a lot. Our tried and true setup used to be like this: ------------- sysctl net.link.bridge.inherit_mac=1 ------------- ifconfig_ixl0="up" ifconfig_ixl1="up" cloned_interfaces="bridge0 bridge1" ifconfig_bridge0_name="inet0" ifconfig_bridge1_name="mgmt0" ifconfig_inet0="up addm ixl0" ifconfig_inet0_alias0="inet <address>/24" ifconfig_inet0_ipv6="inet6 <address>/64 auto_linklocal" ifconfig_mgmt0="up addm ixl1" ifconfig_mgmt0_alias0="inet <address>/16" ifconfig_mgmt0_ipv6="inet6 auto_linklocal" defaultrouter="<address>" ipv6_defaultrouter="fe80::11%inet0" ------------- So we use link-local v6 addresses for the default gateways in every VLAN. The last octet in the GW address is simply the VLAN number ... Now, because I had to run improvised wires to a different switch before we get to upgrading the entire rack to Gbit connectivity we tried to use a single cable and a trunk port: ------------- sysctl net.link.bridge.inherit_mac=1 ------------- ifconfig_ixl0="up" cloned_interfaces="vlan7 vlan11 bridge0 bridge1" ifconfig_vlan7="up vlan 7 vlandev ixl0" ifconfig_vlan11="up vlan 11 vlandev ixl0" ifconfig_bridge0_name="inet0" ifconfig_bridge1_name="mgmt0" ifconfig_inet0="up addm vlan7" ifconfig_inet0_alias0="inet <address>/24" ifconfig_inet0_ipv6="inet6 <address>/64 auto_linklocal" ifconfig_mgmt0="up addm vlan11" ifconfig_mgmt0_alias0="inet <address>/16" ifconfig_mgmt0_ipv6="inet6 auto_linklocal" defaultrouter="<address>" ipv6_defaultrouter="fe80::11%inet0" ------------- Nothing overly fancy in my opinion, just an orthogonal combination of technologies. In principle this seems to work, but ... - IPv4 connectivity comes up reliably and stays up - external IPv6 connectivity does not come up at reboot - I can ping6 the default GW from the machine (link-local address) - I can ping6 other machines in the same VLAN (global unicast) - route -6 delete default; route -6 add default fe80::11%inet0 restores external connectivity - external connectivity get's lost again after a couple of hours Only IPv6 seems to be affected, not IPv4. Any ideas? ;-) Thanks, Patrick -- punkt.de GmbH Internet - Dienstleistungen - Beratung Kaiserallee 13a Tel.: 0721 9109-0 Fax: -100 76133 Karlsruhe info at punkt.de http://punkt.de AG Mannheim 108285 Gf: Juergen Egeling