IPv6-only interfaces does not start up on boot. Baselayout scripts tries to first set up all IP addresses on the interface and then set the interface up. This approach is not valid for IPv6, because kernel does not accept any IPv6 addresses when interface is down. This was tested with iproute2 module on sys-apps/baselayout-1.11.7-r2. The result is: # /etc/init.d/net.dummy0 start * Starting dummy0 * Bringing up dummy0 * 3ffe:80e0::2e0:81ff:fe52:f2ca/128 RTNETLINK answers: Network is down [ !! ] # cat /etc/conf.d/net modules=( "iproute2" ) config_dummy0=( "3ffe:80e0::2e0:81ff:fe52:f2ca/128" ) Reproducible: Always Steps to Reproduce: See details. Actual Results: See details. Expected Results: It should set up the interface correctly.
I was about to report a similar problem. On my machine, the ipv6 address for the interface is not added at all, though the ipv4 addresses are. The problem seems to be that IPv6 addresses can only be added on a UP-ed interface. This is how I edited my /etc/conf.d/net to work around the problem, until it eventually gets fixed. modules=( "iproute2" ) postup() { if [ ${IFACE} = "eth0" ]; then /sbin/ip addr add dev ${IFACE} "2001:240:516:1::2/64" fi return 0 }
This problem should be fixed by baselayout-1.11.8 However, IPv6 addresses starting with a letter won't get added ok - this will be fixed by baselayout-1.11.9
Created attachment 48431 [details, diff] fixes adding IPv6 addresses beginning with a letter
Fixed by baselayout-1.11.9