IPv6 not working in LAN with PPPoE

I only installed OpenWrt for the first time today and got everything working except IPv6. I directly connect to the fiber cable output so I needed to use vlan6 and PPPoE. This creates a Virtual dynamic interface (DHCPv6 client) but I am not getting any IPv6 leases on any of my LAN clients. If I do a ping6 on the router it works but not on a LAN client.

/etc/config/network

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

config globals 'globals'
	option ula_prefix 'fdec:a0e9:aa86::/48'

config device
	option name 'eth0'
	option mtu '1508'

config interface 'lan'
	option type 'bridge'
	option ifname 'eth0.1'
	option mtu '1500'
	option proto 'static'
	option ipaddr '192.168.1.1'
	option netmask '255.255.255.0'
	option ip6assign '64'

config interface 'wan'
	option ifname 'eth0.6'
	option mtu '1508'
	option proto 'pppoe'
	option username 'something'
	option password 'something'
	option ipv6 'auto'

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

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

config switch_vlan
	option device 'switch0'
	option vlan '6'
	option vid '6'
	option ports '0t 5t'
ifstatus wan_6
{
	"up": true,
	"pending": false,
	"available": true,
	"autostart": true,
	"dynamic": true,
	"uptime": 1215,
	"l3_device": "pppoe-wan",
	"proto": "dhcpv6",
	"device": "pppoe-wan",
	"updated": [
		"routes",
		"prefixes",
		"data"
	],
	"metric": 0,
	"dns_metric": 0,
	"delegation": true,
	"ipv4-address": [
		
	],
	"ipv6-address": [
		
	],
	"ipv6-prefix": [
		{
			"address": "2a02:a445:4fbd::",
			"mask": 48,
			"preferred": 171575,
			"valid": 257975,
			"class": "wan_6",
			"assigned": {
				"lan": {
					"address": "2a02:a445:4fbd::",
					"mask": 64
				}
			}
		}
	],
	"ipv6-prefix-assignment": [
		
	],
	"route": [
		{
			"target": "::",
			"mask": 0,
			"nexthop": "fe80::627e:cdff:fe29:c83b",
			"metric": 4096,
			"valid": 257975,
			"source": "2a02:a445:4fbd::/48"
		}
	],
	"dns-server": [
		"2a02:a47f:e000::53",
		"2a02:a47f:e000::54"
	],
	"dns-search": [
		
	],
	"neighbors": [
		
	],
	"inactive": {
		"ipv4-address": [
			
		],
		"ipv6-address": [
			
		],
		"route": [
			
		],
		"dns-server": [
			
		],
		"dns-search": [
			
		],
		"neighbors": [
			
		]
	},
	"data": {
		"passthru": "001700202a02a47fe000000000000000000000532a02a47fe00000000000000000000054",
		"zone": "wan"
	}
}

Would appreciate some help!

It seems PD is working fine and u're getting a yummy /48. I guess the issue is on SLAAC+DHCPv6.

Print ur /etc/config/dhcp, and ip a show and ip route show.

/etc/config/dhcp

config dnsmasq
	option domainneeded '1'
	option localise_queries '1'
	option rebind_protection '1'
	option rebind_localhost '1'
	option local '/lan/'
	option domain 'lan'
	option expandhosts '1'
	option authoritative '1'
	option readethers '1'
	option leasefile '/tmp/dhcp.leases'
	option resolvfile '/tmp/resolv.conf.d/resolv.conf.auto'
	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 dhcpv6 'server'
	option ra 'server'
	option ra_slaac '1'
	list ra_flags 'managed-config'
	list ra_flags 'other-config'
	option ra_maxinterval '600'
	option ra_mininterval '200'
	option ra_lifetime '1800'
	option ra_mtu '0'
	option ra_hoplimit '0'
	option ra_management '1'
	list dhcp_option '6,192.168.1.100,192.168.1.100'

config dhcp 'wan'
	option interface 'wan'
	option ignore '1'

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

config host
	option name 'PiHole'
	option dns '1'
	option mac 'DC:A6:32:61:13:82'
	option ip '192.168.1.100'

config host
	option name 'AP-ArcherC2300'
	option dns '1'
	option mac 'B0:BE:76:C9:F4:70'
	option ip '192.168.1.101'
ip a show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP qlen 1000
    link/ether cc:40:d0:49:8b:33 brd ff:ff:ff:ff:ff:ff
    inet6 fe80::ce40:d0ff:fe49:8b33/64 scope link 
       valid_lft forever preferred_lft forever
3: eth1: <BROADCAST,MULTICAST> mtu 1500 qdisc mq state DOWN qlen 1000
    link/ether cc:40:d0:49:8b:32 brd ff:ff:ff:ff:ff:ff
7: br-lan: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP qlen 1000
    link/ether cc:40:d0:49:8b:33 brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.1/24 brd 192.168.1.255 scope global br-lan
       valid_lft forever preferred_lft forever
    inet6 2a02:a445:4fbd::1/64 scope global dynamic noprefixroute 
       valid_lft 257530sec preferred_lft 171130sec
    inet6 fdec:a0e9:aa86::1/64 scope global noprefixroute 
       valid_lft forever preferred_lft forever
    inet6 fe80::ce40:d0ff:fe49:8b33/64 scope link 
       valid_lft forever preferred_lft forever
8: eth0.1@eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master br-lan state UP qlen 1000
    link/ether cc:40:d0:49:8b:33 brd ff:ff:ff:ff:ff:ff
9: eth0.6@eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP qlen 1000
    link/ether cc:40:d0:49:8b:33 brd ff:ff:ff:ff:ff:ff
    inet6 fe80::ce40:d0ff:fe49:8b33/64 scope link 
       valid_lft forever preferred_lft forever
10: pppoe-wan: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1492 qdisc fq_codel state UNKNOWN qlen 3
    link/ppp 
    inet 80.61.173.251 peer 195.190.228.114/32 scope global pppoe-wan
       valid_lft forever preferred_lft forever
    inet6 fe80::25a0:a0b8:1932:a5e0/128 scope link 
       valid_lft forever preferred_lft forever
11: wlan1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master br-lan state UP qlen 1000
    link/ether cc:40:d0:49:8b:35 brd ff:ff:ff:ff:ff:ff
    inet6 fe80::ce40:d0ff:fe49:8b35/64 scope link 
       valid_lft forever preferred_lft forever
12: wlan0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master br-lan state UP qlen 1000
    link/ether cc:40:d0:49:8b:34 brd ff:ff:ff:ff:ff:ff
    inet6 fe80::ce40:d0ff:fe49:8b34/64 scope link 
       valid_lft forever preferred_lft forever
ip route show
default via 195.190.228.114 dev pppoe-wan 
192.168.1.0/24 dev br-lan scope link  src 192.168.1.1 
195.190.228.114 dev pppoe-wan scope link  src 80.61.173.251 
3 Likes

I've upgraded luci, removed all the ra settings from the DHCP and restarted the router. Working now thanks!

PS: I added my PiHole ipv6 dns and LuCI added all the ra settings back again. So I manually deleted them again and now the IPv6 works and gives my pihole's IPv6 DNS.

1 Like