Adguard - DHCP - IPv6 Issues

I have Adguard configured and is doing a good job filtering and caching DNS queries on my LAN. Since my ISP doesn’t support IPv6, I disabled it on my router and in HomeAssistant OS running on a RPi 4. I recently added a Huawei 5G CPE to be my main router, and disabled DHCP server on it, but the entire network fell over. No DNS seemed to work and I lost access to HA via homeassistant.local:8123 Even directly connecting to IP of the server doesn’t work. After hours of tests and trying different devices, I found a device that was still working and it is configured to use a static IP. Once I did the same on other devices I was able to connect (ie DNS started working again and was able to log in to HA by both homeassistant.home and the static IP).

The only difference, I can see, is that when I set the IP config to manual there is no IPv6 assigned to my devices, however when I set it to auto/DHCP assigned, there is an IPv6 address assigned and I don’t know how or where this is coming from! The following is the one being assigned to an Android device which runs the HA companion app

fe80::5487:c6ff:fea1:1a25

Reading up on this, the fe80::/10 prefix is auto-configuation, so I guess my phone is assigning this to itself. But why does the presence of this IPv6 address cause problems with connecting to HA and DNS issues via IPv4 I am seeing?

I suspect your devices are dual-stack, and are preferring to use IPv6 and not IPv4 for connections like HTTPS to HASS.

fe80:: are Link Local addresses automatically assigned via SLAAC - full automagic.

My HAOS setup has an IPv6-aware router, almost all dual-stack clients, and most mDNS connections are IPv6. In fact, the biggest issue is if AdGuard DHCP falls over, the working IPv6 addressing can mask and confuse IPv4 network tracing (ping -4 x and ping -6 x help). This usually mostly impacts ESP devices which typically don’t support IPv6 (and I’d recommend always using IPv4 not DNS to connect to MQTT brokers for multiple reasons).

For reference, my Yellow HAOS has IPv4 Static, and IPv6 Automatic, and works fine. Worst case, I enter https://192.168.xxx.xxx:8123/ into a browser to manually force IPv4. Firefox works on Android but Google wants your data so can pull DNS stunts with Chrome.

If this helps, :heart: this post!

Maybe you can clarify, but when you turned off DHCP server on the new Huawei router, which device took over as (or was always) the DHCP server? AdGuard?

Adguard DHCP