Lee <[email protected]> writes: > I have a desktop and a laptop - neither one is picking up the ipv6 > network prefix from the router advertisement. 'ifconfig -a' on both > show a single 'inet6 fe80::' line under each interface.
Well, how do you manage your network? Is there a checkbox to check or uncheck somewhere? A firewall blocking the RAs? For me IPv6 works without enabling anything specifically. On my computers I mostly use systemd-networkd but I seem to have nothing IPv6-related in configuration. Except in the router but there it's to make sure RAs are sent and since I only have 6rd, the tunnel is created. > I checked with wireshark - the RAs look good. Checked how? > but so is accept_ra > $ sysctl -a 2>/dev/null | grep 'accept_ra ' > net.ipv6.conf.all.accept_ra = 1 > net.ipv6.conf.default.accept_ra = 1 > net.ipv6.conf.enp1s0.accept_ra = 0 > net.ipv6.conf.lo.accept_ra = 1 > net.ipv6.conf.wlp2s0.accept_ra = 0 > > How do I get the default "accept_ra = 1" set on _all_ interfaces? You use sysctl -w to set those permanently. For testing, manipulate the virtual files in /proc/sys/net/ipv6/conf/. Although, to me that looks OK, as in, it's what I have and for me IPv6 works, weird as it is. Forwarding is off and accept_ra is like yours: net.ipv6.conf.all.accept_ra = 1 net.ipv6.conf.default.accept_ra = 1 net.ipv6.conf.docker0.accept_ra = 0 net.ipv6.conf.enp5s0.accept_ra = 0 net.ipv6.conf.lo.accept_ra = 1 and yet enp5s0 has a public IPv6 address.

