Hello,
I have the problem that IPv6 delegation on the LAN interface is not working, meaning my LAN interface does not receive an IPv6 address, and accordingly, the clients in the LAN also do not get one.
Under "Status->Overview," no IPv6-delegation is shown either.
My ISP provides me with a /56 prefix, and it does come through, but then I receive the following error message every two seconds:
daemon.warn odhcp6c[23112]: Server returned IA_PD status 'No Address Available (No addresses have been assigned)'
However, the WAN and WAN6 interfaces receive a /128 and /64 IPv6 address, respectively, and a prefix.
If i run odhcp6c
manually, the following output is generated:
root@OpenWrt:~# odhcp6c -s /lib/netifd/dhcpv6.script -N try -e -P 0 -v pppoe-wan
odhcp6c[11609]: (re)starting transaction on pppoe-wan
Command failed: Not found
odhcp6c[11609]: Starting SOLICIT transaction (timeout 4294967295s, max rc 0)
odhcp6c[11609]: Got a valid ADVERTISE after 5ms
odhcp6c[11609]: IA_NA 0001 T1 1800 T2 2880
odhcp6c[11609]: 2a0f:ff00:abcd:0123::1 preferred 3600 valid 86400
odhcp6c[11609]: IA_PD 0001 T1 21600 T2 32400
odhcp6c[11609]: 2a0f:ff00:15b:1c00::/56 preferred 43200 valid 86400
odhcp6c[11609]: Starting REQUEST transaction (timeout 4294967295s, max rc 10)
odhcp6c[11609]: Send REQUEST message (elapsed 0ms, rc 0)
odhcp6c[11609]: Got a valid REPLY after 6ms
odhcp6c[11609]: Server returned IA_PD status 'No Address Available (No addresses have been assigned)'
odhcp6c[11609]: IA_PD 0001 T1 21600 T2 32400
odhcp6c[11609]: 2a0f:ff00:29a:7d00::/56 preferred 43200 valid 86400
odhcp6c[11609]: (re)starting transaction on pppoe-wan
odhcp6c[11609]: Starting SOLICIT transaction (timeout 4294967295s, max rc 0)
odhcp6c[11609]: Got a valid ADVERTISE after 6ms
odhcp6c[11609]: IA_NA 0001 T1 1800 T2 2880
odhcp6c[11609]: 2a0f:ff00:abcd:4567::1 preferred 3600 valid 86400
odhcp6c[11609]: IA_PD 0001 T1 21600 T2 32400
odhcp6c[11609]: 2a0f:ff00:15b:1c00::/56 preferred 43200 valid 86400
odhcp6c[11609]: Starting REQUEST transaction (timeout 4294967295s, max rc 10)
odhcp6c[11609]: Send REQUEST message (elapsed 0ms, rc 0)
odhcp6c[11609]: Got a valid REPLY after 6ms
odhcp6c[11609]: Server returned IA_PD status 'No Address Available (No addresses have been assigned)'
...
Here are my configurations:
root@OpenWrt:~# cat /etc/config/network
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'
config interface 'lan'
option device 'br-lan'
option proto 'static'
list dns '192.168.0.1'
list ipaddr '192.168.0.1/24'
option ip6assign '64'
option ip6hint '10'
option delegate '0'
config interface 'wan'
option proto 'pppoe'
option device 'eth1'
option username '<username>'
option password '<secret>'
option ipv6 '1'
option mtu '1500'
option peerdns '0'
list dns '1.1.1.1'
list dns '1.0.0.1'
option delegate '0'
config interface 'wg0'
option proto 'wireguard'
option private_key '<secret>'
option listen_port '52225'
list addresses '192.168.100.1/24'
option mtu '1440'
option delegate '0'
config wireguard_wg0
option description 'user'
option public_key '<pubkey>'
list allowed_ips '192.168.100.2'
config device
option name 'eth1'
option mtu '1508'
option mtu6 '1508'
config interface 'wan6'
option proto 'dhcpv6'
option device '@wan'
option reqaddress 'try'
option reqprefix '56'
option norelease '1'
root@OpenWrt:~# cat /etc/config/dhcp
config dnsmasq
option domainneeded '1'
option boguspriv '1'
option filterwin2k '0'
option localise_queries '1'
option rebind_protection '0'
option rebind_localhost '1'
option local '/lan/'
option domain 'lan'
option expandhosts '1'
option nonegcache '0'
option cachesize '1000'
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'
option filter_aaaa '0'
option filter_a '0'
option noresolv '0'
option port '54'
list server '192.168.0.1'
config dhcp 'lan'
option interface 'lan'
option start '100'
option limit '150'
option leasetime '12h'
option dhcpv4 'server'
list dhcp_option '6,192.168.0.1'
list dhcp_option '3,192.168.0.1'
option ra_management '1'
option ra_useleasetime '1'
option ra 'server'
option dhcpv6 'server'
option ndp 'relay'
config dhcp 'wan'
option interface 'wan'
option ignore '1'
root@OpenWrt:~# cat /etc/config/firewall
config defaults
option syn_flood '1'
option input 'REJECT'
option output 'ACCEPT'
option forward 'REJECT'
config zone
option name 'lan'
option input 'ACCEPT'
option output 'ACCEPT'
option forward 'ACCEPT'
list network 'lan'
list network 'wg0'
config zone
option name 'wan'
option input 'REJECT'
option output 'ACCEPT'
option forward 'REJECT'
option masq '1'
option mtu_fix '1'
list network 'wan'
list network 'wan6'
config forwarding
option src 'lan'
option dest 'wan'
config rule
option name 'Allow-DHCP-Renew'
option src 'wan'
option proto 'udp'
option dest_port '68'
option target 'ACCEPT'
option family 'ipv4'
config rule
option name 'Allow-Ping'
option src 'wan'
option proto 'icmp'
option icmp_type 'echo-request'
option family 'ipv4'
option target 'ACCEPT'
config rule
option name 'Allow-IGMP'
option src 'wan'
option proto 'igmp'
option family 'ipv4'
option target 'ACCEPT'
config rule
option name 'Allow-DHCPv6'
option src 'wan'
option proto 'udp'
option dest_port '546'
option family 'ipv6'
option target 'ACCEPT'
config rule
option name 'Allow-MLD'
option src 'wan'
option proto 'icmp'
option src_ip 'fe80::/10'
list icmp_type '130/0'
list icmp_type '131/0'
list icmp_type '132/0'
list icmp_type '143/0'
option family 'ipv6'
option target 'ACCEPT'
config rule
option name 'Allow-ICMPv6-Input'
option src 'wan'
option proto 'icmp'
list icmp_type 'echo-request'
list icmp_type 'echo-reply'
list icmp_type 'destination-unreachable'
list icmp_type 'packet-too-big'
list icmp_type 'time-exceeded'
list icmp_type 'bad-header'
list icmp_type 'unknown-header-type'
list icmp_type 'router-solicitation'
list icmp_type 'neighbour-solicitation'
list icmp_type 'router-advertisement'
list icmp_type 'neighbour-advertisement'
option limit '1000/sec'
option family 'ipv6'
option target 'ACCEPT'
config rule
option name 'Allow-ICMPv6-Forward'
option src 'wan'
option dest '*'
option proto 'icmp'
list icmp_type 'echo-request'
list icmp_type 'echo-reply'
list icmp_type 'destination-unreachable'
list icmp_type 'packet-too-big'
list icmp_type 'time-exceeded'
list icmp_type 'bad-header'
list icmp_type 'unknown-header-type'
option limit '1000/sec'
option family 'ipv6'
option target 'ACCEPT'
config rule
option name 'Allow-IPSec-ESP'
option src 'wan'
option dest 'lan'
option proto 'esp'
option target 'ACCEPT'
config rule
option name 'Allow-ISAKMP'
option src 'wan'
option dest 'lan'
option dest_port '500'
option proto 'udp'
option target 'ACCEPT'
config redirect
option dest 'lan'
option target 'DNAT'
option name 'WireGuard VPN'
list proto 'udp'
option src 'wan'
option src_dport '52225'
option dest_ip '192.168.0.1'
option dest_port '52225'
config include 'miniupnpd'
option type 'script'
option path '/usr/share/miniupnpd/firewall.include'
option family 'any'
option reload '1'
I believe that I have read and implemented the Wiki article carefully and the troubleshooting too, but I still do not see my mistake.
I am using OpenWRT version 23.05.2 r23630-842932a63d / LuCI openwrt-23.05 branch git-23.357.58018-024e7ab
on a Raspberry Pi Compute Module 4 (dfrobot).
Does anyone here have any idea what else I could try?