I could use some help understanding IPv6 autoconfiguration on OpenBSD5.0 If an OpenBSD system is configured to be an IPv6 host and to use 'rtsol', and the network IPv6 router running rtadvd sends a prefix (like 2001:.../64) as part of the route advertisements, then isn't the host supposed to use the prefix to generate an IPv6 address with that 2001: prefix and fill the last 64 bits with bits from the ethernet ID / EUI?
I'm trying to work my way through / debug this, and I'm stumped. I'll document what I have checked - please let me know any other configurations or responses I should check. /etc/hostname.re0 (setup during installation, with rtsol selected) inet 10.0.1.2 255.255.255.0 up rtsol /etc/sysctl.conf net.inet6.icmp6.rediraccept=1 net.inet6.ip6.forwarding=0 net.inet6.ip6.accept_rtadv=1 (although installation set rediraccept to 1, I needed to manually set ip6.forwarding=0 and ip6.accept_rtadv=1 - perhaps this should be fixed in the install script) $ ifconfig re0 (sanitized of real EUI) re0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500 lladdr c1:a1:c1:a1:f1:e1 priority: 0 groups: egress media: Ethernet autoselect (1000baseT full-duplex,master,rxpause,txpause) status: active inet 10.0.1.2 netmask 0xffffff00 broadcast 10.0.1.255 inet6 fe80::c1a1:c1ff:fea1:f1e1%re0 prefixlen 64 scopeid 0x1 (note - only the link-local IPv6 address) tcpdump of the router advertisement (sanitized), the router is an Apple Airport ExtremeN which advertises the link-local address of the router, and also advertises the prefix for this LAN: $tcpdump -v -i re0 12:00:00.000000 fe80::c1a1:b1ff:fea1:b1e1 > ff02::1: icmp6: router advertisement(chlim=64, O router_ltime=1800, reachable_time=0, retrans_time=0)(src lladdr: c1:a1:b1:a1:b1:e1)(prefix info: LA valid_ltime=14400, preferred_ltime=3600, prefix=2001:470:dead:beef::/64)[ndp opt] (len 80, hlim 255) routing table (output of netstat -rn -f inet6, sanitized) Internet6: Destination Gateway Flags Refs Use Mtu Prio Iface ::/104 ::1 UGRS 0 0 - 8 lo0 ::/96 ::1 UGRS 0 0 - 8 lo0 default fe80::c1a1:b1ff:fea1:b1e1%re0 UG 0 214 - 4 re0 ::1 ::1 UH 14 0 33196 4 lo0 ::127.0.0.0/104 ::1 UGRS 0 0 - 8 lo0 ::224.0.0.0/100 ::1 UGRS 0 0 - 8 lo0 ::255.0.0.0/104 ::1 UGRS 0 0 - 8 lo0 ::ffff:0.0.0.0/96 ::1 UGRS 0 0 - 8 lo0 2001:470:dead:beef::/64 link#1 UC 0 0 - 4 re0 2002::/24 ::1 UGRS 0 0 - 8 lo0 2002:7f00::/24 ::1 UGRS 0 0 - 8 lo0 2002:e000::/20 ::1 UGRS 0 0 - 8 lo0 2002:ff00::/24 ::1 UGRS 0 0 - 8 lo0 fe80::/10 ::1 UGRS 0 0 - 8 lo0 fe80::%re0/64 link#1 UC 1 0 - 4 re0 fe80::c1a1:b1ff:fea1:b1e1%re0 c1:a1:b1:a1:b1:e1 UHLc 1 7 - 4 re0 fe80::c1a1:c1ff:fea1:f1e1%re0 c1:a1:c1:a1:f1:e1 HL 1 0 - 4 lo0 fe80::%lo0/64 fe80::1%lo0 U 0 0 - 4 lo0 fe80::1%lo0 link#4 UHL 0 0 - 4 lo0 fec0::/10 ::1 UGRS 0 0 - 8 lo0 ff01::/16 ::1 UGRS 0 0 - 8 lo0 ff01::%re0/32 link#1 UC 0 0 - 4 re0 ff01::%lo0/32 fe80::1%lo0 UC 0 0 - 4 lo0 ff02::/16 ::1 UGRS 0 0 - 8 lo0 ff02::%re0/32 link#1 UC 0 0 - 4 re0 ff02::%lo0/32 fe80::1%lo0 UC 0 0 - 4 lo0 Isn't there supposed to be an IPv6 address like: 2001:470:dead:beef:c1a1:c1ff:fea1:f1e1 I can ping6 my default router: ping6 -I re0 fe80::c1a1:b1ff:fea1:b1e1 but I cannot ping6 any global addresses ping6 -I re0 2001:4860:800f::68 (ipv6.google.com) results in all packets lost I'm left wondering - is it (A) some configuration on the OpenBSD 5.0 machine that I'm missing? (B) OpenBSD 5.0 not handling the route advertisement prefix? (C) the Apple Airport-ExtremeN router sending a bad route advertisement and prefix? I'm trying to be realistic and not think I've discovered a bug. Thank you for any help.