This is just something I noticed, and I wonder why. Anyone know?
I set up Pi-hole and unbound containers, giving them IPv4 and IPv6 addresses. Pi-hole was installed following the wiki (plus the IPv6 address, see below); unbound was just a case of setting its interface/addresses and pulling the image.
# Config line for the Pihole for both IPv4 and IPv6
/interface/veth/add address=192.168.1.46/24,[redacted]::46/64 gateway=192.168.1.254 gateway6=[redacted]::254 name=vethPihole
Using them with IPv4 works perfectly.
IPv6 however doesn’t, unless I also add the IPv6 addresses to the containers’ interfaces in the /IPv6/address section. I didn’t need to do that for IPv4 and /ip/address/print does not show them, as expected.
Without the above I can’t even ping the containers’ IPv6 addresses.
Just curious… why the difference?
My Pi-hole->unbound DNS is working nicely on both IPv4 and IPv6 now… I love my new RB5009
And yes, I know I technically don’t need both IPv4 and IPv6 DNS, but since when does ‘need’ have anything to do with it?
Not for pihole but another container IPv6 working fine for me. You have to add gateway addresses which you mentioned in vethPihole to ip/ipv6 address for vethPihole and that’s all. I suggest you to go pihole shell and check interface details something like ifconfig or whatever os distro support. Maybe you get more details why interface don’t get v6.
The Pi-hole ifconfig reports that it has the IPv6 address I gave. Thus, it appears that the VETH interface config is being passed to the container as expected.
The failure then is elsewhere. I guess that the container’s IPv4 address is discovered by ARP as normal, but its IPv6 address for some reason isn’t discovered by ND. Checking…
The IPv4 address appears in the router’s ARP table, but the IPv6 address does not appear in the IPv6 neighbour list, even though it’s configured in the addresses and I’ve just pinged it successfully from my PC. The auto-assigned link local address for the container’s interface does appear in the neighbour list and can also be pinged.
So… it looks like the statically assigned IPv6 address isn’t being discovered by ND, at all, and doesn’t function for the router’s side of things unless I manually assign it to the interface.
Maybe it’s something I’m doing, or lack of IPv6 knowledge (although I’m not bad I don’t think).