IPv6 Connection over Dumb AP Wi-Fi is problematic

Hello, I've been trying to configure my network to run dual-stack ipv4, ipv6 for a while. While ipv4 seems to work fine, ipv6 seems to keep running into problems on my wireless clients (oddly enough, PCs connected through wired LAN seem to not run into any issues). Wireless clients would get IPv6 IPs through SLAAC and it would sometimes work, though eventually wireless clients IPv6 will always cease working altogether.

On Wired Ethernet I get a 10/10 in test-ipv6.com
On Wireless I get 0/10 in test-ipv6.com with ranging errors such as not having an IPv6 address or having misconfigured IPv6 settings or IPv6 sorta working but not accepting ICMPv6.
(I would post pictures but as a new user I can only have one image)

My current setup is an ISP given router (fiberhome an5506-04-fg) running the ff config for IPV6:

This runs through an unmanaged switch (TP-LINK TL-SG1008D) which is then connected to three other OpenWrt routers running as dumb APs with the ff config:

config interface 'loopback'
        option device 'lo'
        option proto 'static'
        option ipaddr '127.0.0.1'
        option netmask '255.0.0.0'

config globals 'globals'

config device
        option name 'br-lan'
        option type 'bridge'
        list ports 'eth0'
        list ports 'eth0.1'
        option acceptlocal '1'

config interface 'lan'
        option device 'br-lan'
        option proto 'dhcp'
        option delegate '0'

config device
        option name 'eth0.2'
        option macaddr 'redacted'

config switch
        option name 'switch0'
        option reset '1'
        option enable_vlan '1'

config switch_vlan
        option device 'switch0'
        option vlan '1'
        option ports '6t 4 2 0'

config device
        option name 'eth0'

package wireless

config wifi-device 'radio0'
        option type 'mac80211'
        option path 'platform/10300000.wmac'
        option band '2g'
        option htmode 'HT40'
        option cell_density '0'
        option channel '11'

config wifi-iface 'default_radio0'
        option device 'radio0'
        option network 'lan'
        option mode 'ap'
        option ssid 'redacted'
        option encryption 'psk2'
        option ieee80211r '1'
        option ft_over_ds '0'
        option ft_psk_generate_local '1'
        option key 'redacted'

config wifi-device 'radio1'
        option type 'mac80211'
        option path 'pci0000:00/0000:00:00.0/0000:01:00.0'
        option band '5g'
        option htmode 'VHT80'
        option cell_density '0'
        option country 'PH'
        option channel '52'

config wifi-iface 'default_radio1'
        option device 'radio1'
        option network 'lan'
        option mode 'ap'
        option ssid 'redacted'
        option encryption 'psk2'
        option key 'redacted'
        option ieee80211r '1'
        option ft_over_ds '0'
        option ft_psk_generate_local '1'

config dnsmasq
        option domainneeded '1'
        option boguspriv '1'
        option filterwin2k '0'
        option localise_queries '1'
        option rebind_protection '1'
        option rebind_localhost '1'
        option local '/lan/'
        option domain 'lan'
        option expandhosts '1'
        option nonegcache '0'
        option authoritative '1'
        option readethers '1'
        option leasefile '/tmp/dhcp.leases'
        option resolvfile '/tmp/resolv.conf.d/resolv.conf.auto'
        option nonwildcard '1'
        option localservice '1'
        option ednspacket_max '1232'

config dhcp 'lan'
        option interface 'lan'
        option start '100'
        option limit '150'
        option leasetime '12h'
        option dhcpv4 'server'
        option ignore '1'

config odhcpd 'odhcpd'
        option maindhcp '0'
        option leasefile '/tmp/hosts/odhcpd'
        option leasetrigger '/usr/sbin/odhcpd-update'
        option loglevel '4'

firewall, odhcpd and dnsmasq daemons are disabled
IPv6 Settings under DHCP Server on the br-lan interface are all set to disabled (RA-Service, DHCPv6-Service, NDP-Proxy)

If it is relevant, I am also running a pihole dns with DHCPv4 server enabled but not DHCPv6

So far I've tried doing an alias interface of lan with DHCPv6 client as protocol (while this gives IPv6 connectivity to the router itself, it does not for wireless clients), playing with RA-Service, DHCPv6-Service, NDP-Proxy and Designated master, changing delegate IPv6 prefixes setting, accept local option in br-lan device.

I've been trying a lot of different things to try and make this work and I've run out of ideas so help is greatly appreciated, thanks!

The wired hosts are connected on the OpenWrt or on the ISP router or the managed switch?
A remark that Android does not work with DHCP6, only SLAAC.
From the settings you have posted in the image above, I suppose you have masked the IPv6 prefix, as this is a link local address.

1 Like

The wired hosts are connected through the OpenWrt AP. As for the settings, the IPv6/prefix option is what I assumed to be the self-assigned local link address so I generated one for it? I'm not entirely sure if that setting is correct however, I only assumed so since its on the LAN tab where you put your self-assigned IPv4 address as well:

I don't know what are you supposed to fill in there and it is outside of the scope of this forum. However if it needs to used a private IP address like in IPv4, then you should use an ULA prefix, like fdXX:XXXX:XXXX::/48.
Other than that, are your wireless devices working with SLAAC only?

I believe there shouldn't be any DHCPv6 servers running anywhere so the IP that the device got should be from SLAAC.

I also tried removing the Other Config Flag which in theory should set the network to pure SLAAC, still doesn't work however.

Wired hosts continue to be fine however

Can you ping the router fe80::1 ?
Do they wired hosts have the same values for gateway and DNS?

I found the solution, something was going wrong with the way the ISP given router was handling IPv6. I set it to bridge mode and used another OpenWrt router as my main router and now IPv6 is working properly. Thanks for the help!

1 Like

This topic was automatically closed 10 days after the last reply. New replies are no longer allowed.