Ipv6 stopped working on Netgear R6220 with mwan3

Hello all.
As suggested in the topic name I have been using Openwrt on Netgear R6220 with mwan3. As guided in a previous discussion I had been able to make ipv6 work on my set up.
Recently the ipv6 assignment has stopped working . I have no clue what went wrong.

Here is the output for ip6tables-save -c -t nat

root@OpenWrt:~# ip6tables-save -c -t nat
# Generated by ip6tables-save v1.8.3 on Mon Jan 31 04:20:07 2022
*nat
:PREROUTING ACCEPT [9558:1481298]
:INPUT ACCEPT [3994:353982]
:OUTPUT ACCEPT [21818:2072042]
:POSTROUTING ACCEPT [5:784]
:postrouting_lan_rule - [0:0]
:postrouting_rule - [0:0]
:postrouting_wan_rule - [0:0]
:prerouting_lan_rule - [0:0]
:prerouting_rule - [0:0]
:prerouting_wan_rule - [0:0]
:zone_lan_postrouting - [0:0]
:zone_lan_prerouting - [0:0]
:zone_wan_postrouting - [0:0]
:zone_wan_prerouting - [0:0]
[9558:1481298] -A PREROUTING -m comment --comment "!fw3: Custom prerouting rule chain" -j prerouting_rule
[9095:1400864] -A PREROUTING -i br-lan -m comment --comment "!fw3" -j zone_lan_prerouting
[0:0] -A PREROUTING -i eth0.2 -m comment --comment "!fw3" -j zone_wan_prerouting
[0:0] -A PREROUTING -i eth0.3 -m comment --comment "!fw3" -j zone_wan_prerouting
[463:80434] -A PREROUTING -i eth0.4 -m comment --comment "!fw3" -j zone_wan_prerouting
[24144:2331688] -A POSTROUTING -m comment --comment "!fw3: Custom postrouting rule chain" -j postrouting_rule
[5:784] -A POSTROUTING -o br-lan -m comment --comment "!fw3" -j zone_lan_postrouting
[9718:943235] -A POSTROUTING -o eth0.2 -m comment --comment "!fw3" -j zone_wan_postrouting
[12091:1136746] -A POSTROUTING -o eth0.3 -m comment --comment "!fw3" -j zone_wan_postrouting
[2330:250923] -A POSTROUTING -o eth0.4 -m comment --comment "!fw3" -j zone_wan_postrouting
[5:784] -A zone_lan_postrouting -m comment --comment "!fw3: Custom lan postrouting rule chain" -j postrouting_lan_rule
[9095:1400864] -A zone_lan_prerouting -m comment --comment "!fw3: Custom lan prerouting rule chain" -j prerouting_lan_rule
[24139:2330904] -A zone_wan_postrouting -m comment --comment "!fw3: Custom wan postrouting rule chain" -j postrouting_wan_rule
[24139:2330904] -A zone_wan_postrouting -m comment --comment "!fw3" -j MASQUERADE
[463:80434] -A zone_wan_prerouting -m comment --comment "!fw3: Custom wan prerouting rule chain" -j prerouting_wan_rule
COMMIT
# Completed on Mon Jan 31 04:20:07 2022

Please help.
Thanks is advance.

Hello Again,
I have not been able to get this working yet.
I have updated my router to Openwrt 21.0.2.1 and tried to reconfigure everything.
It still does not work.
I am able to do ipv6 ping from my Openwrt Router but not from the downstream LAN clients.

Here is the current output for ip6tables-save -c -t nat

root@OpenWrt:~# ip6tables-save -c -t nat
# Generated by ip6tables-save v1.8.7 on Sat Feb  5 02:07:53 2022
*nat
:PREROUTING ACCEPT [2463:589744]
:INPUT ACCEPT [668:59856]
:OUTPUT ACCEPT [1263:126627]
:POSTROUTING ACCEPT [11:1148]
:postrouting_lan_rule - [0:0]
:postrouting_rule - [0:0]
:postrouting_wan_rule - [0:0]
:prerouting_lan_rule - [0:0]
:prerouting_rule - [0:0]
:prerouting_wan_rule - [0:0]
:zone_lan_postrouting - [0:0]
:zone_lan_prerouting - [0:0]
:zone_wan_postrouting - [0:0]
:zone_wan_prerouting - [0:0]
[2463:589744] -A PREROUTING -m comment --comment "!fw3: Custom prerouting rule chain" -j prerouting_rule
[2287:559032] -A PREROUTING -i br-lan -m comment --comment "!fw3" -j zone_lan_prerouting
[0:0] -A PREROUTING -i wan -m comment --comment "!fw3" -j zone_wan_prerouting
[0:0] -A PREROUTING -i br0.1 -m comment --comment "!fw3" -j zone_wan_prerouting
[176:30712] -A PREROUTING -i br0.2 -m comment --comment "!fw3" -j zone_wan_prerouting
[2008:202180] -A POSTROUTING -m comment --comment "!fw3: Custom postrouting rule chain" -j postrouting_rule
[7:848] -A POSTROUTING -o br-lan -m comment --comment "!fw3" -j zone_lan_postrouting
[897:94666] -A POSTROUTING -o wan -m comment --comment "!fw3" -j zone_wan_postrouting
[1100:106366] -A POSTROUTING -o br0.1 -m comment --comment "!fw3" -j zone_wan_postrouting
[0:0] -A POSTROUTING -o br0.2 -m comment --comment "!fw3" -j zone_wan_postrouting
[7:848] -A zone_lan_postrouting -m comment --comment "!fw3: Custom lan postrouting rule chain" -j postrouting_lan_rule
[2287:559032] -A zone_lan_prerouting -m comment --comment "!fw3: Custom lan prerouting rule chain" -j prerouting_lan_rule
[1997:201032] -A zone_wan_postrouting -m comment --comment "!fw3" -j MASQUERADE
[0:0] -A zone_wan_postrouting -m comment --comment "!fw3: Custom wan postrouting rule chain" -j postrouting_wan_rule
[176:30712] -A zone_wan_prerouting -m comment --comment "!fw3: Custom wan prerouting rule chain" -j prerouting_wan_rule
COMMIT
# Completed on Sat Feb  5 02:07:53 2022

The LAN devices downstream are getting ipv6 address from the router.

But the ping -6 and traceroute -6 are not working.

I wonder if something is wrong in NAT6?

Ok. Now I have disabled DHCPv6 om the wan6, wanc6 and wanb6 and kept DHCPv6 of LAN in server mode. So , the ipv6 works. But it works only when wan6 is operational and does not work when it is disabled i.e. even though wanc6 is also getting ipv6 address from ISP, LAN devices fail ipv6 test when wan6 is off and only wanc6 is operational (wanb6 is not getting ipv6).

I believe there is some issue in part of mwan3.
The wan6 is working on the inbuilt wan interface of the router while wanc6 (and wanb6) are on the network devices I created with mwan3 (br0. 2 and br0. 1,respectively).
Besides I get the message that wanc6 does not have a routing table.

Hello again.
It seems ipv6 is working only on wan6. wanc6 ipv6 is perhaps broke. I changed the ISP connections--- I shifted the one from wan6 to wanc6 and wanc6 to wan6. IPv6 test works as long as wan6 is on. When I turn it off leaving wanc6 on, the test fails.

Mean ipv6 ping from Luci works for both wan6 and wanc6.

I believe the problem is with routing and load balancing and with mwan3 in particular.

Probably @trendy can help me.

Thanks.

Please run the following commands (copy-paste the whole block) and paste the output here, using the "Preformatted text </> " button:
grafik
Remember to redact passwords, MAC addresses and any public IP addresses you may have

ubus call system board; \
uci export network; \
uci export dhcp; uci export firewall; \
head -n -0 /etc/firewall.user; uci export mwan3; \
ip -6 addr ; ip -6 ro li tab all ; ip -6 ru; \
ls -l  /etc/resolv.* /tmp/resolv.* /tmp/resolv.*/* ; head -n -0 /etc/resolv.* /tmp/resolv.* /tmp/resolv.*/*

Hello.Thanks for your response @trendy .
Here is output as you requested:

root@OpenWrt:~# ubus call system board; \
> uci export network; \
> uci export dhcp; uci export firewall; \
> head -n -0 /etc/firewall.user; uci export mwan3; \
> ip -6 addr ; ip -6 ro li tab all ; ip -6 ru; \
> ls -l  /etc/resolv.* /tmp/resolv.* /tmp/resolv.*/* ; head -n -0 /etc/resolv.*
/tmp/resolv.* /tmp/resolv.*/*
{
        "kernel": "5.4.154",
        "hostname": "OpenWrt",
        "system": "MediaTek MT7621 ver:1 eco:3",
        "model": "Netgear R6220",
        "board_name": "netgear,r6220",
        "release": {
                "distribution": "OpenWrt",
                "version": "21.02.1",
                "revision": "r16325-88151b8303",
                "target": "ramips/mt7621",
                "description": "OpenWrt 21.02.1 r16325-88151b8303"
        }
}
package 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'
        option packet_steering '1'

config device
        option name 'br-lan'
        option type 'bridge'
        list ports 'lan3'
        list ports 'lan4'
        option promisc '1'
        option acceptlocal '1'

config interface 'lan'
        option device 'br-lan'
        option proto 'static'
        option netmask '255.255.255.0'
        option ipaddr '192.168.0.1'
        option ip6assign '64'

config interface 'wan'
        option device 'wan'
        option proto 'dhcp'
        option metric '10'
        option delegate '0'

config interface 'wan6'
        option device 'wan'
        option proto 'dhcpv6'
        option reqaddress 'try'
        option reqprefix 'auto'
        option metric '10'
        option sourcefilter '0'
        option delegate '0'

config device
        option type 'bridge'
        option name 'br0'
        list ports 'eth0'
        list ports 'lan1'
        list ports 'lan2'
        option mtu '1500'
        option macaddr '08:02:8E:E6:43:E1'
        option txqueuelen '1000'
        option mtu6 '1500'
        option promisc '1'
        option acceptlocal '1'

config bridge-vlan
        option device 'br0'
        option vlan '1'
        list ports 'eth0:t'
        list ports 'lan1'

config bridge-vlan
        option device 'br0'
        option vlan '2'
        list ports 'eth0:t'
        list ports 'lan2'

config device
        option name 'br0.1'
        option mtu '1500'
        option macaddr '08:02:8E:E6:43:E2'
        option txqueuelen '1000'
        option mtu6 '1500'
        option promisc '1'
        option acceptlocal '1'

config device
        option name 'br0.2'
        option mtu '1500'
        option txqueuelen '1000'
        option mtu6 '1500'
        option macaddr '08:02:8E:E6:43:E3'

config interface 'wanb'
        option proto 'dhcp'
        option device 'br0.1'
        option metric '20'
        option delegate '0'

config interface 'wanb6'
        option proto 'dhcpv6'
        option device 'br0.1'
        option reqaddress 'try'
        option reqprefix 'auto'
        option metric '20'
        option sourcefilter '0'

config interface 'wanc'
        option proto 'dhcp'
        option device 'br0.2'
        option metric '30'
        option delegate '0'

config interface 'wanc6'
        option proto 'dhcpv6'
        option device 'br0.2'
        option reqaddress 'try'
        option reqprefix 'auto'
        option metric '30'
        option sourcefilter '0'
        option delegate '0'

config device
        option name 'wan'
        option promisc '1'
        option acceptlocal '1'

config device
        option name 'lan3'

config device
        option name 'lan4'

config route
        option target '218.0.0.0'
        option netmask '255.0.0.0'
        option gateway '192.168.4.1'
        option interface 'wanc'

config route
        option target '125.0.0.0'
        option netmask '255.0.0.0'
        option gateway '192.168.4.1'
        option interface 'wanc'

config route
        option interface 'wanc'
        option target '10.232.0.0'
        option netmask '255.255.0.0'
        option gateway '192.168.4.1'

package dhcp

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 ra 'hybrid'
        option dhcpv6 'hybrid'
        list ra_flags 'none'

config dhcp 'wan'
        option interface 'wan'
        option ignore '1'
        list ra_flags 'none'

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

config dhcp 'wan6'
        option interface 'wan6'
        option ignore '1'
        list ra_flags 'none'

package firewall

config defaults
        option input 'ACCEPT'
        option output 'ACCEPT'
        option forward 'REJECT'
        option synflood_protect '1'

config zone
        option name 'lan'
        list network 'lan'
        option input 'ACCEPT'
        option output 'ACCEPT'
        option forward 'ACCEPT'
        option masq '1'

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'
        list network 'wanb'
        list network 'wanb6'
        list network 'wanc'
        list network 'wanc6'
        option masq6_privacy '1'
        option masq6 ''\''1'\'''

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'

config rule
        option name 'Allow-Ping'
        option src 'wan'
        option proto 'icmp'
        option target 'ACCEPT'
        list icmp_type 'echo-request'

config rule
        option name 'Allow-IGMP'
        option src 'wan'
        option proto 'igmp'
        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 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 proto 'icmp'
        option limit '1000/sec'
        option family 'ipv6'
        option target 'ACCEPT'
        list icmp_type 'bad-header'
        list icmp_type 'destination-unreachable'
        list icmp_type 'echo-reply'
        list icmp_type 'echo-request'
        list icmp_type 'packet-too-big'
        list icmp_type 'time-exceeded'
        list icmp_type 'unknown-header-type'
        option dest '*'

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 rule
        option name 'Support-UDP-Traceroute'
        option src 'wan'
        option dest_port '33434:33689'
        option proto 'udp'
        option family 'ipv4'
        option target 'REJECT'
        option enabled '0'

config include
        option path '/etc/firewall.user'

config include 'nat6'
        option path '/etc/firewall.nat6'
        option reload '1'

# This file is interpreted as shell script.
# Put your custom iptables rules here, they will
# be executed with each firewall (re-)start.

# Internal uci firewall chains are flushed and recreated on reload, so
# put custom rules into the root chains e.g. INPUT or FORWARD or into the
# special user chains, e.g. input_wan_rule or postrouting_lan_rule.
package mwan3

config policy 'balanced'
        list use_member 'wan_m1_w3'
        list use_member 'wanb_m1_w2'
        list use_member 'wanc_m1_w2'
        list use_member 'wan6_m1_w3'
        list use_member 'wanb6_m1_w2'
        list use_member 'wanc6_m1_w2'
        option last_resort 'unreachable'

config policy 'wan_only'
        list use_member 'wan_m1_w3'
        list use_member 'wan6_m1_w3'

config policy 'wanb_only'
        list use_member 'wanb_m1_w2'
        list use_member 'wanb6_m1_w2'

config policy 'wan_wanb'
        list use_member 'wan_m1_w3'
        list use_member 'wanb_m2_w2'
        list use_member 'wan6_m1_w3'
        list use_member 'wanb6_m2_w2'

config policy 'wanb_wan'
        list use_member 'wan_m2_w3'
        list use_member 'wanb_m1_w2'
        list use_member 'wan6_m2_w3'
        list use_member 'wanb6_m1_w2'

config globals 'globals'
        option mmx_mask '0x3F00'

config interface 'wan'
        option enabled '1'
        list track_ip '8.8.4.4'
        list track_ip '8.8.8.8'
        list track_ip '208.67.222.222'
        list track_ip '208.67.220.220'
        option family 'ipv4'
        option reliability '2'

config interface 'wan6'
        list track_ip '2001:4860:4860::8844'
        list track_ip '2001:4860:4860::8888'
        list track_ip '2620:0:ccd::2'
        list track_ip '2620:0:ccc::2'
        option family 'ipv6'
        option reliability '2'
        option initial_state 'online'
        option track_method 'ping'
        option count '1'
        option size '56'
        option max_ttl '60'
        option check_quality '1'
        option failure_latency '1000'
        option failure_loss '40'
        option recovery_latency '500'
        option recovery_loss '10'
        option timeout '4'
        option interval '10'
        option failure_interval '5'
        option keep_failure_interval '1'
        option recovery_interval '5'
        option down '5'
        option up '5'
        option enabled '1'
        list flush_conntrack 'ifup'
        list flush_conntrack 'ifdown'
        list flush_conntrack 'connected'
        list flush_conntrack 'disconnected'

config interface 'wanb'
        list track_ip '8.8.4.4'
        list track_ip '8.8.8.8'
        list track_ip '208.67.222.222'
        list track_ip '208.67.220.220'
        option family 'ipv4'
        option reliability '1'
        option enabled '1'
        option initial_state 'online'
        option track_method 'ping'
        option count '1'
        option size '56'
        option max_ttl '60'
        option check_quality '0'
        option timeout '4'
        option interval '10'
        option failure_interval '5'
        option recovery_interval '5'
        option down '5'
        option up '5'

config interface 'wanb6'
        list track_ip '2001:4860:4860::8844'
        list track_ip '2001:4860:4860::8888'
        list track_ip '2620:0:ccd::2'
        list track_ip '2620:0:ccc::2'
        option family 'ipv6'
        option reliability '1'
        option enabled '1'
        option initial_state 'online'
        option track_method 'ping'
        option count '1'
        option size '56'
        option max_ttl '60'
        option check_quality '1'
        option failure_latency '1000'
        option failure_loss '40'
        option recovery_latency '500'
        option recovery_loss '10'
        option timeout '4'
        option interval '10'
        option failure_interval '5'
        option keep_failure_interval '1'
        option recovery_interval '5'
        option down '5'
        option up '5'
        list flush_conntrack 'ifup'
        list flush_conntrack 'ifdown'
        list flush_conntrack 'connected'
        list flush_conntrack 'disconnected'

config member 'wan_m1_w3'
        option interface 'wan'
        option metric '1'
        option weight '3'

config member 'wan_m2_w3'
        option interface 'wan'
        option metric '2'
        option weight '3'

config member 'wanb_m1_w2'
        option interface 'wanb'
        option metric '1'
        option weight '2'

config member 'wanb_m2_w2'
        option interface 'wanb'
        option metric '2'
        option weight '2'

config member 'wan6_m1_w3'
        option interface 'wan6'
        option metric '1'
        option weight '3'

config member 'wan6_m2_w3'
        option interface 'wan6'
        option metric '2'
        option weight '3'

config member 'wanb6_m1_w2'
        option interface 'wanb6'
        option metric '1'
        option weight '2'

config member 'wanb6_m2_w2'
        option interface 'wanb6'
        option metric '2'
        option weight '2'

config rule 'https'
        option sticky '1'
        option dest_port '443'
        option proto 'tcp'
        option use_policy 'balanced'

config rule 'default_rule_v4'
        option dest_ip '0.0.0.0/0'
        option use_policy 'balanced'
        option family 'ipv4'

config rule 'default_rule_v6'
        option dest_ip '::/0'
        option use_policy 'balanced'
        option family 'ipv6'

config interface 'wanc6'
        option enabled '1'
        option initial_state 'online'
        option track_method 'ping'
        option reliability '1'
        option count '1'
        option size '56'
        option max_ttl '60'
        option timeout '4'
        option interval '10'
        option failure_interval '5'
        option recovery_interval '5'
        option down '5'
        option up '5'
        list track_ip '2001:4860:4860::8844'
        list track_ip '2001:4860:4860::8888'
        list track_ip '2620:0:ccd::2'
        list track_ip '2620:0:ccc::2'
        option check_quality '1'
        option failure_latency '1000'
        option failure_loss '40'
        option recovery_latency '500'
        option recovery_loss '10'
        option keep_failure_interval '1'
        option family 'ipv6'
        list flush_conntrack 'ifup'
        list flush_conntrack 'ifdown'
        list flush_conntrack 'connected'
        list flush_conntrack 'disconnected'

config interface 'wanc'
        option enabled '1'
        option initial_state 'online'
        option family 'ipv4'
        list track_ip '8.8.4.4'
        list track_ip '8.8.8.8'
        list track_ip '208.67.222.222'
        list track_ip '208.67.220.220'
        option track_method 'ping'
        option reliability '1'
        option count '1'
        option size '56'
        option max_ttl '60'
        option check_quality '0'
        option timeout '4'
        option interval '10'
        option failure_interval '5'
        option recovery_interval '5'
        option down '5'
        option up '5'

config member 'wanc_m1_w2'
        option metric '1'
        option weight '2'
        option interface 'wanc'

config member 'wanc_m2_w2'
        option interface 'wanc'
        option metric '2'
        option weight '2'

config member 'wanc6_m1_w2'
        option interface 'wanc6'
        option metric '1'
        option weight '2'

config member 'wanc6_m2_w2'
        option interface 'wanc6'
        option metric '2'
        option weight '2'

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 state UNKNOWN qlen 1000
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1504 state UP qlen 1000
    inet6 fe80::a02:8eff:fee6:43e8/64 scope link
       valid_lft forever preferred_lft forever
7: wan@eth0: <BROADCAST,MULTICAST,PROMISC,UP,LOWER_UP> mtu 1500 state UP qlen 1000
    inet6 2405:201:300f:c0:a02:8eff:fee6:43e9/64 scope global dynamic noprefixroute
       valid_lft 4171sec preferred_lft 4171sec
    inet6 fe80::a02:8eff:fee6:43e9/64 scope link
       valid_lft forever preferred_lft forever
10: br-lan: <BROADCAST,MULTICAST,PROMISC,UP,LOWER_UP> mtu 1500 state UP qlen 1000
    inet6 2001:4490:4409:5347::1/64 scope global dynamic noprefixroute
       valid_lft 86137sec preferred_lft 86137sec
    inet6 fe80::a02:8eff:fee6:43e8/64 scope link
       valid_lft forever preferred_lft forever
12: br0: <BROADCAST,MULTICAST,PROMISC,UP,LOWER_UP> mtu 1500 state UP qlen 1000
    inet6 fe80::a02:8eff:fee6:43e1/64 scope link
       valid_lft forever preferred_lft forever
13: br0.1@br0: <BROADCAST,MULTICAST,PROMISC,UP,LOWER_UP> mtu 1500 state UP qlen 1000
    inet6 2001:4490:4409:5347:a02:8eff:fee6:43e2/64 scope global dynamic noprefixroute
       valid_lft 86361sec preferred_lft 86361sec
    inet6 fd8c:fd18:2c36:c100:a02:8eff:fee6:43e2/64 scope global dynamic noprefixroute
       valid_lft 7161sec preferred_lft 3561sec
    inet6 2001:4490:4409:5347::1/128 scope global dynamic noprefixroute
       valid_lft 86137sec preferred_lft 86137sec
    inet6 fe80::a02:8eff:fee6:43e2/64 scope link
       valid_lft forever preferred_lft forever
14: br0.2@br0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 state UP qlen 1000
    inet6 fdb4:6e08:9357:c200:a02:8eff:fee6:43e3/64 scope global dynamic noprefixroute
       valid_lft 6854sec preferred_lft 3254sec
    inet6 fe80::a02:8eff:fee6:43e3/64 scope link
       valid_lft forever preferred_lft forever
15: wlan1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 state UP qlen 1000
    inet6 fe80::a02:8eff:fee6:43ec/64 scope link
       valid_lft forever preferred_lft forever
2001:4490:4409:5347::/64 dev br-lan table 2 proto static metric 1024 pref medium
unreachable 2001:4490:4409:5347::/64 dev lo table 2 proto static metric 2147483647 pref medium
2405:201:300f:c0::/64 dev wan table 2 proto static metric 256 pref medium
unreachable 2405:201:300f:c0::/64 dev lo table 2 proto static metric 2147483647 pref medium
unreachable fd8c:fd18:2c36:c100::/64 dev lo table 2 proto static metric 2147483647 pref medium
unreachable fdb4:6e08:9357:c200::/64 dev lo table 2 proto static metric 2147483647 pref medium
fe80::/64 dev wan table 2 proto kernel metric 256 pref medium
default via fe80::6a14:1ff:fe58:9f8b dev wan table 2 proto static metric 384 pref medium
2001:4490:4409:5347::/64 dev br0.1 table 4 proto static metric 256 pref medium
2001:4490:4409:5347::/64 dev br-lan table 4 proto static metric 1024 pref medium
unreachable 2001:4490:4409:5347::/64 dev lo table 4 proto static metric 2147483647 pref medium
unreachable 2405:201:300f:c0::/64 dev lo table 4 proto static metric 2147483647 pref medium
fd8c:fd18:2c36:c100::/64 dev br0.1 table 4 proto static metric 256 pref medium
unreachable fd8c:fd18:2c36:c100::/64 dev lo table 4 proto static metric 2147483647 pref medium
unreachable fdb4:6e08:9357:c200::/64 dev lo table 4 proto static metric 2147483647 pref medium
fe80::/64 dev br0.1 table 4 proto kernel metric 256 pref medium
default via fe80::1 dev br0.1 table 4 proto static metric 512 pref medium
2001:4490:4409:428f::/64 dev br-lan table 5 proto kernel metric 256 pref medium
2001:4490:4409:46ad::/64 dev br-lan table 5 proto kernel metric 256 pref medium
2001:4490:4409:4dec::/64 dev br-lan table 5 proto kernel metric 256 pref medium
2001:4490:4409:5347::/64 dev br-lan table 5 proto kernel metric 256 pref medium
2001:4490:4409:5347::/64 dev br-lan table 5 proto static metric 1024 pref medium
unreachable 2001:4490:4409:5347::/64 dev lo table 5 proto static metric 2147483647 pref medium
unreachable 2405:201:300f:c0::/64 dev lo table 5 proto static metric 2147483647 pref medium
fc00::/64 dev br-lan table 5 proto kernel metric 256 pref medium
fd4e:2271:c462::/64 dev br-lan table 5 proto kernel metric 256 pref medium
unreachable fd8c:fd18:2c36:c100::/64 dev lo table 5 proto static metric 2147483647 pref medium
fdb4:6e08:9357:c200::/64 dev br0.2 table 5 proto static metric 256 pref medium
unreachable fdb4:6e08:9357:c200::/64 dev lo table 5 proto static metric 2147483647 pref medium
fe80::/64 dev br0.2 table 5 proto kernel metric 256 pref medium
default via fe80::1 dev br0.2 table 5 proto static metric 512 pref medium
2001:4490:4409:5347::/64 dev br0.1 proto static metric 256 pref medium
2001:4490:4409:5347::/64 dev br-lan proto static metric 1024 pref medium
unreachable 2001:4490:4409:5347::/64 dev lo proto static metric 2147483647 pref medium
2405:201:300f:c0::/64 dev wan proto static metric 256 pref medium
unreachable 2405:201:300f:c0::/64 dev lo proto static metric 2147483647 pref medium
fd8c:fd18:2c36:c100::/64 dev br0.1 proto static metric 256 pref medium
unreachable fd8c:fd18:2c36:c100::/64 dev lo proto static metric 2147483647 pref medium
fdb4:6e08:9357:c200::/64 dev br0.2 proto static metric 256 pref medium
unreachable fdb4:6e08:9357:c200::/64 dev lo proto static metric 2147483647 pref medium
fe80::/64 dev eth0 proto kernel metric 256 pref medium
fe80::/64 dev br0 proto kernel metric 256 pref medium
fe80::/64 dev br0.1 proto kernel metric 256 pref medium
fe80::/64 dev br0.2 proto kernel metric 256 pref medium
fe80::/64 dev br-lan proto kernel metric 256 pref medium
fe80::/64 dev wan proto kernel metric 256 pref medium
fe80::/64 dev wlan1 proto kernel metric 256 pref medium
default via fe80::6a14:1ff:fe58:9f8b dev wan proto static metric 384 pref medium
default via fe80::1 dev br0.1 proto static metric 512 pref medium
local ::1 dev lo table local proto kernel metric 0 pref medium
anycast 2001:4490:4409:5347:: dev br-lan table local proto kernel metric 0 pref medium
anycast 2001:4490:4409:5347:: dev br0.1 table local proto kernel metric 0 pref medium
local 2001:4490:4409:5347::1 dev br-lan table local proto kernel metric 0 pref medium
local 2001:4490:4409:5347::1 dev br0.1 table local proto kernel metric 0 pref medium
local 2001:4490:4409:5347:a02:8eff:fee6:43e2 dev br0.1 table local proto kernel metric 0 pref medium
anycast 2405:201:300f:c0:: dev wan table local proto kernel metric 0 pref medium
local 2405:201:300f:c0:a02:8eff:fee6:43e9 dev wan table local proto kernel metric 0 pref medium
anycast fd8c:fd18:2c36:c100:: dev br0.1 table local proto kernel metric 0 pref medium
local fd8c:fd18:2c36:c100:a02:8eff:fee6:43e2 dev br0.1 table local proto kernel metric 0 pref medium
anycast fdb4:6e08:9357:c200:: dev br0.2 table local proto kernel metric 0 pref medium
local fdb4:6e08:9357:c200:a02:8eff:fee6:43e3 dev br0.2 table local proto kernel metric 0 pref medium
anycast fe80:: dev eth0 table local proto kernel metric 0 pref medium
anycast fe80:: dev br0.1 table local proto kernel metric 0 pref medium
anycast fe80:: dev br0.2 table local proto kernel metric 0 pref medium
anycast fe80:: dev br-lan table local proto kernel metric 0 pref medium
anycast fe80:: dev br0 table local proto kernel metric 0 pref medium
anycast fe80:: dev wan table local proto kernel metric 0 pref medium
anycast fe80:: dev wlan1 table local proto kernel metric 0 pref medium
local fe80::a02:8eff:fee6:43e1 dev br0 table local proto kernel metric 0 pref medium
local fe80::a02:8eff:fee6:43e2 dev br0.1 table local proto kernel metric 0 pref medium
local fe80::a02:8eff:fee6:43e3 dev br0.2 table local proto kernel metric 0 pref medium
local fe80::a02:8eff:fee6:43e8 dev eth0 table local proto kernel metric 0 pref medium
local fe80::a02:8eff:fee6:43e8 dev br-lan table local proto kernel metric 0 pref medium
local fe80::a02:8eff:fee6:43e9 dev wan table local proto kernel metric 0 pref medium
local fe80::a02:8eff:fee6:43ec dev wlan1 table local proto kernel metric 0 pref medium
multicast ff00::/8 dev eth0 table local proto kernel metric 256 pref medium
multicast ff00::/8 dev br0 table local proto kernel metric 256 pref medium
multicast ff00::/8 dev br0.1 table local proto kernel metric 256 pref medium
multicast ff00::/8 dev br0.2 table local proto kernel metric 256 pref medium
multicast ff00::/8 dev br-lan table local proto kernel metric 256 pref medium
multicast ff00::/8 dev wan table local proto kernel metric 256 pref medium
multicast ff00::/8 dev wlan1 table local proto kernel metric 256 pref medium
0:      from all lookup local
1002:   from all iif wan lookup 2
1004:   from all iif br0.1 lookup 4
1005:   from all iif br0.2 lookup 5
2002:   from all fwmark 0x200/0x3f00 lookup 2
2004:   from all fwmark 0x400/0x3f00 lookup 4
2005:   from all fwmark 0x500/0x3f00 lookup 5
2061:   from all fwmark 0x3d00/0x3f00 blackhole
2062:   from all fwmark 0x3e00/0x3f00 unreachable
3002:   from all fwmark 0x200/0x3f00 unreachable
3004:   from all fwmark 0x400/0x3f00 unreachable
3005:   from all fwmark 0x500/0x3f00 unreachable
32766:  from all lookup main
4200000000:     from 2001:4490:4409:5347::1/64 iif br-lan unreachable
4200000001:     from all iif lo failed_policy
4200000007:     from all iif wan failed_policy
4200000007:     from all iif wan failed_policy
4200000010:     from all iif br-lan failed_policy
4200000013:     from all iif br0.1 failed_policy
4200000013:     from all iif br0.1 failed_policy
4200000014:     from all iif br0.2 failed_policy
4200000014:     from all iif br0.2 failed_policy
lrwxrwxrwx    1 root     root            16 Oct 24 09:01 /etc/resolv.conf -> /tmp/resolv.conf
-rw-r--r--    1 root     root            47 Feb 18 22:25 /tmp/resolv.conf
-rw-r--r--    1 root     root           271 Feb 19 04:13 /tmp/resolv.conf.d/resolv.conf.auto

/tmp/resolv.conf.d:
-rw-r--r--    1 root     root           271 Feb 19 04:13 resolv.conf.auto
==> /etc/resolv.conf <==
search lan
nameserver 127.0.0.1
nameserver ::1

==> /tmp/resolv.conf <==
search lan
nameserver 127.0.0.1
nameserver ::1

==> /tmp/resolv.conf.d <==
head: /tmp/resolv.conf.d: I/O error

==> /tmp/resolv.conf.d/resolv.conf.auto <==
# Interface wan
nameserver 192.168.29.1
# Interface wan6
nameserver 2405:201:300f:c0::c0a8:1d01
# Interface wanb
nameserver 192.168.100.1
# Interface wanb6
nameserver 2001:4490:3ffe:13::4
# Interface wanc
nameserver 192.168.4.1
# Interface wanc6
nameserver fe80::1%br0.2

I would like to mention that wanc6 is not operational as the concerned ISP is not providing an ipv6 address.

Thanks.

masquerade in lan is usually not needed.

Then remove the wan6c because, it seems that it gets a default route.

Other than that, did you follow the instructions here to enable the nat6?

You have these options set in dhcp lan interface, which are wrong according to the guide.

Hello @trendy. Thanks for the response.

I'll remove the wanc6 for now.
Now to give you a perspective:--
This is wan6

This is wanb6

This is LAN

The ipv6 is working

As we can see LAN is getting ipv6 prefix from wanb6 (I have kept ipv6 delegation on in wanb6). But when I test ipv6 connectivity, as in above screenshot, my public ipv6 is shown to be coming from wan6. When I turn wan6 off, the ipv6 test fails. But sometimes, when I stop stop ipv6 delegation in wanb6 before turning off wan6, the ipv6 test continues to work atleast for sometime and it shows the ipv6 public address in the wanb6 range.

My observations:

  1. For IPv6 test to work, LAN has to get a public prefix. That comes only when prefix delegation is on in wanb6.

  2. If I turn off prefix delegation in wanb6 Ipv6 test stays successful for sometime and that is through wan6. After this if I turn off wan6 also, the test comes successful for sometime and that is through wanb6. But after sometime it stops working.

  3. If I turn off wan6 before turning off prefix delegation on wanb6, the ipv6 test fails immediately and does not work even after stopping prefix delegation from wanb6.

  4. All this suggests that the problem is more of a routing and mwan3 issue.

Besides, the Openwrt does not seem to be handling the wanb6 related ISP properly. I just could not make the ipv6 work in any way when I had connected the wanb6 ISP to wan port.

I wonder how much my observations are helpful. But I am ready to try other combinations and configurations to test this out.

Thanks.

Did you fix the issues I noted earlier?

Hello again.

I have deleted wanc6.

I followed it again to enable nat6.

You may check in this output:


root@OpenWrt:~# ubus call system board; \
> uci export network; \
> uci export dhcp; uci export firewall; \
> head -n -0 /etc/firewall.user; uci export mwan3; \
> ip -6 addr ; ip -6 ro li tab all ; ip -6 ru; \
> ls -l  /etc/resolv.* /tmp/resolv.* /tmp/resolv.*/* ; head -n -0 /etc/resolv.*
/tmp/resolv.* /tmp/resolv.*/*
{
        "kernel": "5.4.154",
        "hostname": "OpenWrt",
        "system": "MediaTek MT7621 ver:1 eco:3",
        "model": "Netgear R6220",
        "board_name": "netgear,r6220",
        "release": {
                "distribution": "OpenWrt",
                "version": "21.02.1",
                "revision": "r16325-88151b8303",
                "target": "ramips/mt7621",
                "description": "OpenWrt 21.02.1 r16325-88151b8303"
        }
}
package 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'
        option packet_steering '1'
        option ula_prefix 'd'

config device
        option name 'br-lan'
        option type 'bridge'
        list ports 'lan3'
        list ports 'lan4'
        option promisc '1'
        option acceptlocal '1'

config interface 'lan'
        option device 'br-lan'
        option proto 'static'
        option netmask '255.255.255.0'
        option ipaddr '192.168.0.1'
        option ip6assign '64'
        option ip6class 'local'

config interface 'wan'
        option device 'wan'
        option proto 'dhcp'
        option metric '10'
        option delegate '0'

config interface 'wan6'
        option device 'wan'
        option proto 'dhcpv6'
        option reqaddress 'try'
        option reqprefix 'auto'
        option metric '10'
        option sourcefilter '0'
        option delegate '0'

config device
        option type 'bridge'
        option name 'br0'
        list ports 'eth0'
        list ports 'lan1'
        list ports 'lan2'
        option mtu '1500'
        option macaddr '08:02:8E:E6:43:E1'
        option txqueuelen '1000'
        option mtu6 '1500'
        option promisc '1'
        option acceptlocal '1'

config bridge-vlan
        option device 'br0'
        option vlan '1'
        list ports 'eth0:t'
        list ports 'lan1'

config bridge-vlan
        option device 'br0'
        option vlan '2'
        list ports 'eth0:t'
        list ports 'lan2'

config device
        option name 'br0.1'
        option mtu '1500'
        option macaddr '08:02:8E:E6:43:E2'
        option txqueuelen '1000'
        option mtu6 '1500'
        option promisc '1'
        option acceptlocal '1'

config device
        option name 'br0.2'
        option mtu '1500'
        option txqueuelen '1000'
        option mtu6 '1500'
        option macaddr '08:02:8E:E6:43:E3'

config interface 'wanb'
        option proto 'dhcp'
        option device 'br0.1'
        option metric '20'
        option delegate '0'

config interface 'wanb6'
        option proto 'dhcpv6'
        option device 'br0.1'
        option reqaddress 'try'
        option reqprefix 'auto'
        option metric '20'
        option sourcefilter '0'
        option delegate '0'

config interface 'wanc'
        option proto 'dhcp'
        option device 'br0.2'
        option metric '30'
        option delegate '0'

config device
        option name 'wan'
        option promisc '1'
        option acceptlocal '1'

config device
        option name 'lan3'

config device
        option name 'lan4'

config route
        option target '218.0.0.0'
        option netmask '255.0.0.0'
        option gateway '192.168.4.1'
        option interface 'wanc'

config route
        option target '125.0.0.0'
        option netmask '255.0.0.0'
        option gateway '192.168.4.1'
        option interface 'wanc'

config route
        option interface 'wanc'
        option target '10.232.0.0'
        option netmask '255.255.0.0'
        option gateway '192.168.4.1'

package dhcp

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 ra 'server'
        list ra_flags 'none'
        option dhcpv6 'server'
        option ra_default '1'

config dhcp 'wan'
        option interface 'wan'
        option ignore '1'
        list ra_flags 'none'

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

config dhcp 'wan6'
        option interface 'wan6'
        option ignore '1'
        list ra_flags 'none'

package firewall

config defaults
        option input 'ACCEPT'
        option output 'ACCEPT'
        option forward 'REJECT'
        option synflood_protect '1'

config zone
        option name 'lan'
        option input 'ACCEPT'
        option output 'ACCEPT'
        option forward 'ACCEPT'
        option masq '1'
        list network 'lan'

config zone
        option name 'wan'
        option input 'REJECT'
        option output 'ACCEPT'
        option forward 'REJECT'
        option masq '1'
        option mtu_fix '1'
        option masq6_privacy '1'
        list network 'wan'
        list network 'wan6'
        list network 'wanb'
        list network 'wanb6'
        list network 'wanc'
        option masq6 '1'

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'

config rule
        option name 'Allow-Ping'
        option src 'wan'
        option proto 'icmp'
        option target 'ACCEPT'
        list icmp_type 'echo-request'

config rule
        option name 'Allow-IGMP'
        option src 'wan'
        option proto 'igmp'
        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 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 proto 'icmp'
        option limit '1000/sec'
        option family 'ipv6'
        option target 'ACCEPT'
        list icmp_type 'bad-header'
        list icmp_type 'destination-unreachable'
        list icmp_type 'echo-reply'
        list icmp_type 'echo-request'
        list icmp_type 'packet-too-big'
        list icmp_type 'time-exceeded'
        list icmp_type 'unknown-header-type'
        option dest '*'
        option enabled ''\''0'\'''

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 rule
        option name 'Support-UDP-Traceroute'
        option src 'wan'
        option dest_port '33434:33689'
        option proto 'udp'
        option family 'ipv4'
        option target 'REJECT'
        option enabled '0'

config include
        option path '/etc/firewall.user'

config include 'nat6'
        option path '/etc/firewall.nat6'
        option reload '1'

# This file is interpreted as shell script.
# Put your custom iptables rules here, they will
# be executed with each firewall (re-)start.

# Internal uci firewall chains are flushed and recreated on reload, so
# put custom rules into the root chains e.g. INPUT or FORWARD or into the
# special user chains, e.g. input_wan_rule or postrouting_lan_rule.
package mwan3

config policy 'balanced'
        list use_member 'wan_m1_w3'
        list use_member 'wanb_m1_w2'
        list use_member 'wanc_m1_w2'
        list use_member 'wan6_m1_w3'
        list use_member 'wanb6_m1_w2'
        list use_member 'wanc6_m1_w2'
        option last_resort 'unreachable'

config policy 'wan_only'
        list use_member 'wan_m1_w3'
        list use_member 'wan6_m1_w3'

config policy 'wanb_only'
        list use_member 'wanb_m1_w2'
        list use_member 'wanb6_m1_w2'

config policy 'wan_wanb'
        list use_member 'wan_m1_w3'
        list use_member 'wanb_m2_w2'
        list use_member 'wan6_m1_w3'
        list use_member 'wanb6_m2_w2'

config policy 'wanb_wan'
        list use_member 'wan_m2_w3'
        list use_member 'wanb_m1_w2'
        list use_member 'wan6_m2_w3'
        list use_member 'wanb6_m1_w2'

config globals 'globals'
        option mmx_mask '0x3F00'

config interface 'wan'
        option enabled '1'
        list track_ip '8.8.4.4'
        list track_ip '8.8.8.8'
        list track_ip '208.67.222.222'
        list track_ip '208.67.220.220'
        option family 'ipv4'
        option reliability '2'

config interface 'wan6'
        list track_ip '2001:4860:4860::8844'
        list track_ip '2001:4860:4860::8888'
        list track_ip '2620:0:ccd::2'
        list track_ip '2620:0:ccc::2'
        option family 'ipv6'
        option reliability '2'
        option initial_state 'online'
        option track_method 'ping'
        option count '1'
        option size '56'
        option max_ttl '60'
        option check_quality '1'
        option failure_latency '1000'
        option failure_loss '40'
        option recovery_latency '500'
        option recovery_loss '10'
        option timeout '4'
        option interval '10'
        option failure_interval '5'
        option keep_failure_interval '1'
        option recovery_interval '5'
        option down '5'
        option up '5'
        option enabled '1'
        list flush_conntrack 'ifup'
        list flush_conntrack 'ifdown'
        list flush_conntrack 'connected'
        list flush_conntrack 'disconnected'

config interface 'wanb'
        list track_ip '8.8.4.4'
        list track_ip '8.8.8.8'
        list track_ip '208.67.222.222'
        list track_ip '208.67.220.220'
        option family 'ipv4'
        option reliability '1'
        option enabled '1'
        option initial_state 'online'
        option track_method 'ping'
        option count '1'
        option size '56'
        option max_ttl '60'
        option check_quality '0'
        option timeout '4'
        option interval '10'
        option failure_interval '5'
        option recovery_interval '5'
        option down '5'
        option up '5'

config interface 'wanb6'
        list track_ip '2001:4860:4860::8844'
        list track_ip '2001:4860:4860::8888'
        list track_ip '2620:0:ccd::2'
        list track_ip '2620:0:ccc::2'
        option family 'ipv6'
        option reliability '1'
        option enabled '1'
        option initial_state 'online'
        option track_method 'ping'
        option count '1'
        option size '56'
        option max_ttl '60'
        option check_quality '1'
        option failure_latency '1000'
        option failure_loss '40'
        option recovery_latency '500'
        option recovery_loss '10'
        option timeout '4'
        option interval '10'
        option failure_interval '5'
        option keep_failure_interval '1'
        option recovery_interval '5'
        option down '5'
        option up '5'
        list flush_conntrack 'ifup'
        list flush_conntrack 'ifdown'
        list flush_conntrack 'connected'
        list flush_conntrack 'disconnected'

config member 'wan_m1_w3'
        option interface 'wan'
        option metric '1'
        option weight '3'

config member 'wan_m2_w3'
        option interface 'wan'
        option metric '2'
        option weight '3'

config member 'wanb_m1_w2'
        option interface 'wanb'
        option metric '1'
        option weight '2'

config member 'wanb_m2_w2'
        option interface 'wanb'
        option metric '2'
        option weight '2'

config member 'wan6_m1_w3'
        option interface 'wan6'
        option metric '1'
        option weight '3'

config member 'wan6_m2_w3'
        option interface 'wan6'
        option metric '2'
        option weight '3'

config member 'wanb6_m1_w2'
        option interface 'wanb6'
        option metric '1'
        option weight '2'

config member 'wanb6_m2_w2'
        option interface 'wanb6'
        option metric '2'
        option weight '2'

config rule 'https'
        option sticky '1'
        option dest_port '443'
        option proto 'tcp'
        option use_policy 'balanced'

config rule 'default_rule_v4'
        option dest_ip '0.0.0.0/0'
        option use_policy 'balanced'
        option family 'ipv4'

config rule 'default_rule_v6'
        option dest_ip '::/0'
        option use_policy 'balanced'
        option family 'ipv6'

config interface 'wanc6'
        option enabled '1'
        option initial_state 'online'
        option track_method 'ping'
        option reliability '1'
        option count '1'
        option size '56'
        option max_ttl '60'
        option timeout '4'
        option interval '10'
        option failure_interval '5'
        option recovery_interval '5'
        option down '5'
        option up '5'
        list track_ip '2001:4860:4860::8844'
        list track_ip '2001:4860:4860::8888'
        list track_ip '2620:0:ccd::2'
        list track_ip '2620:0:ccc::2'
        option check_quality '1'
        option failure_latency '1000'
        option failure_loss '40'
        option recovery_latency '500'
        option recovery_loss '10'
        option keep_failure_interval '1'
        option family 'ipv6'
        list flush_conntrack 'ifup'
        list flush_conntrack 'ifdown'
        list flush_conntrack 'connected'
        list flush_conntrack 'disconnected'

config interface 'wanc'
        option enabled '1'
        option initial_state 'online'
        option family 'ipv4'
        list track_ip '8.8.4.4'
        list track_ip '8.8.8.8'
        list track_ip '208.67.222.222'
        list track_ip '208.67.220.220'
        option track_method 'ping'
        option reliability '1'
        option count '1'
        option size '56'
        option max_ttl '60'
        option check_quality '0'
        option timeout '4'
        option interval '10'
        option failure_interval '5'
        option recovery_interval '5'
        option down '5'
        option up '5'

config member 'wanc_m1_w2'
        option metric '1'
        option weight '2'
        option interface 'wanc'

config member 'wanc_m2_w2'
        option interface 'wanc'
        option metric '2'
        option weight '2'

config member 'wanc6_m1_w2'
        option interface 'wanc6'
        option metric '1'
        option weight '2'

config member 'wanc6_m2_w2'
        option interface 'wanc6'
        option metric '2'
        option weight '2'

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 state UNKNOWN qlen 1000
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1504 state UP qlen 1000
    inet6 fe80::a02:8eff:fee6:43e8/64 scope link
       valid_lft forever preferred_lft forever
7: wan@eth0: <BROADCAST,MULTICAST,PROMISC,UP,LOWER_UP> mtu 1500 state UP qlen 1000
    inet6 2405:201:300f:c0:a02:8eff:fee6:43e9/64 scope global dynamic noprefixroute
       valid_lft 4169sec preferred_lft 4169sec
    inet6 fe80::a02:8eff:fee6:43e9/64 scope link
       valid_lft forever preferred_lft forever
33: br-lan: <BROADCAST,MULTICAST,PROMISC,UP,LOWER_UP> mtu 1500 state UP qlen 1000
    inet6 fe80::a02:8eff:fee6:43e8/64 scope link
       valid_lft forever preferred_lft forever
35: br0: <BROADCAST,MULTICAST,PROMISC,UP,LOWER_UP> mtu 1500 state UP qlen 1000
    inet6 fe80::a02:8eff:fee6:43e1/64 scope link
       valid_lft forever preferred_lft forever
36: br0.1@br0: <BROADCAST,MULTICAST,PROMISC,UP,LOWER_UP> mtu 1500 state UP qlen 1000
    inet6 2001:4490:4409:855e:a02:8eff:fee6:43e2/64 scope global dynamic noprefixroute
       valid_lft 86315sec preferred_lft 86315sec
    inet6 fd8c:fd18:2c36:c100:a02:8eff:fee6:43e2/64 scope global dynamic noprefixroute
       valid_lft 7115sec preferred_lft 3515sec
    inet6 2001:4490:4409:855e::1/128 scope global dynamic noprefixroute
       valid_lft 85743sec preferred_lft 85743sec
    inet6 fe80::a02:8eff:fee6:43e2/64 scope link
       valid_lft forever preferred_lft forever
37: br0.2@br0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 state UP qlen 1000
    inet6 fe80::a02:8eff:fee6:43e3/64 scope link
       valid_lft forever preferred_lft forever
38: wlan1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 state UP qlen 1000
    inet6 fe80::a02:8eff:fee6:43ec/64 scope link
       valid_lft forever preferred_lft forever
unreachable 2001:4490:4409:855e::/64 dev lo table 2 proto static metric 2147483647 pref medium
2405:201:300f:c0::/64 dev wan table 2 proto static metric 256 pref medium
unreachable 2405:201:300f:c0::/64 dev lo table 2 proto static metric 2147483647 pref medium
unreachable fd8c:fd18:2c36:c100::/64 dev lo table 2 proto static metric 2147483647 pref medium
fe80::/64 dev wan table 2 proto kernel metric 256 pref medium
default via fe80::6a14:1ff:fe58:9f8b dev wan table 2 proto static metric 384 pref medium
2001:4490:4409:855e::/64 dev br0.1 table 4 proto static metric 256 pref medium
unreachable 2001:4490:4409:855e::/64 dev lo table 4 proto static metric 2147483647 pref medium
unreachable 2405:201:300f:c0::/64 dev lo table 4 proto static metric 2147483647 pref medium
fd8c:fd18:2c36:c100::/64 dev br0.1 table 4 proto static metric 256 pref medium
unreachable fd8c:fd18:2c36:c100::/64 dev lo table 4 proto static metric 2147483647 pref medium
fe80::/64 dev br0.1 table 4 proto kernel metric 256 pref medium
default via fe80::1 dev br0.1 table 4 proto static metric 512 pref medium
2001:4490:4409:855e::/64 dev br0.1 proto static metric 256 pref medium
unreachable 2001:4490:4409:855e::/64 dev lo proto static metric 2147483647 pref medium
2405:201:300f:c0::/64 dev wan proto static metric 256 pref medium
unreachable 2405:201:300f:c0::/64 dev lo proto static metric 2147483647 pref medium
fd8c:fd18:2c36:c100::/64 dev br0.1 proto static metric 256 pref medium
unreachable fd8c:fd18:2c36:c100::/64 dev lo proto static metric 2147483647 pref medium
fe80::/64 dev eth0 proto kernel metric 256 pref medium
fe80::/64 dev br-lan proto kernel metric 256 pref medium
fe80::/64 dev br0 proto kernel metric 256 pref medium
fe80::/64 dev br0.1 proto kernel metric 256 pref medium
fe80::/64 dev br0.2 proto kernel metric 256 pref medium
fe80::/64 dev wan proto kernel metric 256 pref medium
fe80::/64 dev wlan1 proto kernel metric 256 pref medium
default via fe80::6a14:1ff:fe58:9f8b dev wan proto static metric 384 pref medium
default via fe80::1 dev br0.1 proto static metric 512 pref medium
local ::1 dev lo table local proto kernel metric 0 pref medium
anycast 2001:4490:4409:855e:: dev br0.1 table local proto kernel metric 0 pref medium
local 2001:4490:4409:855e::1 dev br0.1 table local proto kernel metric 0 pref medium
local 2001:4490:4409:855e:a02:8eff:fee6:43e2 dev br0.1 table local proto kernel metric 0 pref medium
anycast 2405:201:300f:c0:: dev wan table local proto kernel metric 0 pref medium
local 2405:201:300f:c0:a02:8eff:fee6:43e9 dev wan table local proto kernel metric 0 pref medium
anycast fd8c:fd18:2c36:c100:: dev br0.1 table local proto kernel metric 0 pref medium
local fd8c:fd18:2c36:c100:a02:8eff:fee6:43e2 dev br0.1 table local proto kernel metric 0 pref medium
anycast fe80:: dev eth0 table local proto kernel metric 0 pref medium
anycast fe80:: dev br-lan table local proto kernel metric 0 pref medium
anycast fe80:: dev br0.2 table local proto kernel metric 0 pref medium
anycast fe80:: dev br0.1 table local proto kernel metric 0 pref medium
anycast fe80:: dev br0 table local proto kernel metric 0 pref medium
anycast fe80:: dev wan table local proto kernel metric 0 pref medium
anycast fe80:: dev wlan1 table local proto kernel metric 0 pref medium
local fe80::a02:8eff:fee6:43e1 dev br0 table local proto kernel metric 0 pref medium
local fe80::a02:8eff:fee6:43e2 dev br0.1 table local proto kernel metric 0 pref medium
local fe80::a02:8eff:fee6:43e3 dev br0.2 table local proto kernel metric 0 pref medium
local fe80::a02:8eff:fee6:43e8 dev eth0 table local proto kernel metric 0 pref medium
local fe80::a02:8eff:fee6:43e8 dev br-lan table local proto kernel metric 0 pref medium
local fe80::a02:8eff:fee6:43e9 dev wan table local proto kernel metric 0 pref medium
local fe80::a02:8eff:fee6:43ec dev wlan1 table local proto kernel metric 0 pref medium
multicast ff00::/8 dev eth0 table local proto kernel metric 256 pref medium
multicast ff00::/8 dev br-lan table local proto kernel metric 256 pref medium
multicast ff00::/8 dev br0 table local proto kernel metric 256 pref medium
multicast ff00::/8 dev br0.1 table local proto kernel metric 256 pref medium
multicast ff00::/8 dev br0.2 table local proto kernel metric 256 pref medium
multicast ff00::/8 dev wan table local proto kernel metric 256 pref medium
multicast ff00::/8 dev wlan1 table local proto kernel metric 256 pref medium
0:      from all lookup local
1002:   from all iif wan lookup 2
1004:   from all iif br0.1 lookup 4
2002:   from all fwmark 0x200/0x3f00 lookup 2
2004:   from all fwmark 0x400/0x3f00 lookup 4
2061:   from all fwmark 0x3d00/0x3f00 blackhole
2062:   from all fwmark 0x3e00/0x3f00 unreachable
3002:   from all fwmark 0x200/0x3f00 unreachable
3004:   from all fwmark 0x400/0x3f00 unreachable
32766:  from all lookup main
4200000001:     from all iif lo failed_policy
4200000007:     from all iif wan failed_policy
4200000007:     from all iif wan failed_policy
4200000033:     from all iif br-lan failed_policy
4200000036:     from all iif br0.1 failed_policy
4200000036:     from all iif br0.1 failed_policy
4200000037:     from all iif br0.2 failed_policy
lrwxrwxrwx    1 root     root            16 Oct 24 09:01 /etc/resolv.conf -> /tmp/resolv.conf
-rw-r--r--    1 root     root            47 Feb 24 18:00 /tmp/resolv.conf
-rw-r--r--    1 root     root           228 Feb 24 18:00 /tmp/resolv.conf.d/resolv.conf.auto

/tmp/resolv.conf.d:
-rw-r--r--    1 root     root           228 Feb 24 18:00 resolv.conf.auto
==> /etc/resolv.conf <==
search lan
nameserver 127.0.0.1
nameserver ::1

==> /tmp/resolv.conf <==
search lan
nameserver 127.0.0.1
nameserver ::1

==> /tmp/resolv.conf.d <==
head: /tmp/resolv.conf.d: I/O error

==> /tmp/resolv.conf.d/resolv.conf.auto <==
# Interface wan
nameserver 192.168.29.1
# Interface wan6
nameserver 2405:201:300f:c0::c0a8:1d01
# Interface wanb
nameserver 192.168.100.1
# Interface wanb6
nameserver 2001:4490:3ffe:13::4
# Interface wanc
nameserver 192.168.4.1

I did not configure that and do not know how to change that......

Here's the current ping -6 and traceroute -6 results from PC:

C:\Users\harsh>ping -6 google.com

Pinging google.com [2404:6800:4009:830::200e] with 32 bytes of data:
Destination net unreachable.
Destination net unreachable.
Destination net unreachable.
Destination net unreachable.

Ping statistics for 2404:6800:4009:830::200e:
    Packets: Sent = 4, Received = 0, Lost = 4 (100% loss),

C:\Users\harsh>tracert -6 google.com

Tracing route to google.com [2404:6800:4009:830::200e]
over a maximum of 30 hops:

  1     1 ms    <1 ms    <1 ms  fe80::5ad5:6eff:fe6d:ba8e
  2  Destination net unreachable.

Trace complete.

Traceroute from my Opnewrt Router with both wan6 and wanb6 on.

root@OpenWrt:~# traceroute -6 google.com
traceroute to google.com (2404:6800:4009:821::200e), 30 hops max, 64 byte packets
 1  reliance.reliance (2405:201:300f:c0::c0a8:1d01)  0.869 ms  0.724 ms  0.625 ms
 2  *  *  *
 3  2405:200:801:1200::1 (2405:200:801:1200::1)  25.537 ms  17.469 ms  16.626 ms
 4  2405:200:801:200::9e0 (2405:200:801:200::9e0)  34.542 ms  2405:200:801:200::9b5 (2405:200:801:200::9b5)  31.679 ms  2405:200:101::1:0:13 (2405:200:101::1:0:13)  28.585 ms
 5  *  *  *
 6  *  2404:6800:810e::1 (2404:6800:810e::1)  37.001 ms  2404:6800:8116::1 (2404:6800:8116::1)  35.561 ms
 7  2404:6800:810e::1 (2404:6800:810e::1)  29.574 ms  *  33.400 ms
 8  2001:4860:0:115d::3 (2001:4860:0:115d::3)  36.207 ms  2001:4860:0:115d::b (2001:4860:0:115d::b)  27.554 ms  2001:4860:0:1::2130 (2001:4860:0:1::2130)  33.290 ms
 9  2001:4860::1c:4000:d605 (2001:4860::1c:4000:d605)  31.825 ms  *  *
10  2001:4860:0:1::40a1 (2001:4860:0:1::40a1)  27.075 ms  *  2001:4860:0:115b::1 (2001:4860:0:115b::1)  28.560 ms
11  bom12s11-in-x0e.1e100.net (2404:6800:4009:821::200e)  26.647 ms  2001:4860:0:1::2a47 (2001:4860:0:1::2a47)  34.040 ms  bom12s11-in-x0e.1e100.net (2404:6800:4009:821::200e)  30.311 ms

Traceroute from Openwrt Router with wan6 Off and wanb6 On.

root@OpenWrt:~# traceroute -6 google.com
traceroute to google.com (2404:6800:4009:827::200e), 30 hops max, 64 byte packets
 1  2001:4490:4408:701c:154:faf5:add4:9b77 (2001:4490:4408:701c:154:faf5:add4:9b77)  1.414 ms  0.797 ms  0.673 ms
 2  2001:4490:4408::1 (2001:4490:4408::1)  0.917 ms  0.900 ms  0.956 ms
 3  2001:4490:37fc::1a (2001:4490:37fc::1a)  2.558 ms  3.018 ms  1.880 ms
 4  *  *  *
 5  2001:4860:1:1::214 (2001:4860:1:1::214)  17.058 ms  17.124 ms  16.867 ms
 6  2001:4860:0:115b::1 (2001:4860:0:115b::1)  17.687 ms  *  17.628 ms
 7  2001:4860:0:1::2b47 (2001:4860:0:1::2b47)  18.720 ms  2001:4860:0:1::2b4b (2001:4860:0:1::2b4b)  17.295 ms  2001:4860:0:1::2b47 (2001:4860:0:1::2b47)  18.699 ms
 8  bom12s14-in-x0e.1e100.net (2404:6800:4009:827::200e)  17.304 ms  17.397 ms  17.549 ms

So there there seems to be some routing issue within the Openwrt Router.

I wonder if it could be related to the LAN not getting a Public ipv6 Prefix.

It is related. In lan interface you have ip6class local, but in globals section the ula_prefix is set to d, while it should be a ula prefix. Usually a /48 is big enough. For example fdab:1234::/48

Thanks for the reply.
I set the ula-prefix to fdab:2569::/48. So now the LAN is getting a prefix and downstream PC is also getting assigned an address in the same range.

This is the current response to traceroute from my PC:

C:\Users\harsh>tracert -6 google.com

Tracing route to google.com [2404:6800:4009:830::200e]
over a maximum of 30 hops:

  1     1 ms     1 ms     1 ms  fdab:2569::5ad5:6eff:fe6d:ba8e
  2     1 ms     1 ms     1 ms  OpenWrt.lan [fdab:2569::1]
  3     *        *        *     Request timed out.
  4     *        *        *     Request timed out.
  5     *        *        *     Request timed out.
  6  ^C

So now I am able to reach my Openwrt router . But beyond that the routing issue seems to persist.

Check if there are hits on the firewall for masquerading the ipv6. ip6tables-save -c -t nat
Also check once more that there are default routes installed on ipv6 routing table. ip -6 route

root@OpenWrt:~# ip6tables-save -c -t nat
# Generated by ip6tables-save v1.8.7 on Sat Feb 26 11:59:15 2022
*nat
:PREROUTING ACCEPT [1140:338383]
:INPUT ACCEPT [317:27558]
:OUTPUT ACCEPT [902:86453]
:POSTROUTING ACCEPT [5:598]
:postrouting_lan_rule - [0:0]
:postrouting_rule - [0:0]
:postrouting_wan_rule - [0:0]
:prerouting_lan_rule - [0:0]
:prerouting_rule - [0:0]
:prerouting_wan_rule - [0:0]
:zone_lan_postrouting - [0:0]
:zone_lan_prerouting - [0:0]
:zone_wan_postrouting - [0:0]
:zone_wan_prerouting - [0:0]
[1140:338383] -A PREROUTING -m comment --comment "!fw3: Custom prerouting rule c                                           hain" -j prerouting_rule
[981:311110] -A PREROUTING -i br-lan -m comment --comment "!fw3" -j zone_lan_pre                                           routing
[13:1501] -A PREROUTING -i wan -m comment --comment "!fw3" -j zone_wan_preroutin                                           g
[146:25772] -A PREROUTING -i br0.1 -m comment --comment "!fw3" -j zone_wan_prero                                           uting
[0:0] -A PREROUTING -i br0.2 -m comment --comment "!fw3" -j zone_wan_prerouting
[958:91757] -A POSTROUTING -m comment --comment "!fw3: Custom postrouting rule c                                           hain" -j postrouting_rule
[5:598] -A POSTROUTING -o br-lan -m comment --comment "!fw3" -j zone_lan_postrou                                           ting
[737:69219] -A POSTROUTING -o wan -m comment --comment "!fw3" -j zone_wan_postro                                           uting
[216:21940] -A POSTROUTING -o br0.1 -m comment --comment "!fw3" -j zone_wan_post                                           routing
[0:0] -A POSTROUTING -o br0.2 -m comment --comment "!fw3" -j zone_wan_postroutin                                           g
[5:598] -A zone_lan_postrouting -m comment --comment "!fw3: Custom lan postrouti                                           ng rule chain" -j postrouting_lan_rule
[981:311110] -A zone_lan_prerouting -m comment --comment "!fw3: Custom lan prero                                           uting rule chain" -j prerouting_lan_rule
[952:91055] -A zone_wan_postrouting -m comment --comment "!fw3" -j MASQUERADE
[1:104] -A zone_wan_postrouting -m comment --comment "!fw3: Custom wan postrouti                                           ng rule chain" -j postrouting_wan_rule
[159:27273] -A zone_wan_prerouting -m comment --comment "!fw3: Custom wan prerou                                           ting rule chain" -j prerouting_wan_rule
COMMIT
# Completed on Sat Feb 26 11:59:15 2022

root@OpenWrt:~# ip -6 route
2001:4490:4409:884c::/64 dev br0.1 proto static metric 256 pref medium
unreachable 2001:4490:4409:884c::/64 dev lo proto static metric 2147483647 pref medium
2001:4490:4409:9695::/64 dev br0.1 proto static metric 256 pref medium
unreachable 2001:4490:4409:9695::/64 dev lo proto static metric 2147483647 pref medium
2001:4490:4409:991f::/64 dev br0.1 proto static metric 256 pref medium
unreachable 2001:4490:4409:991f::/64 dev lo proto static metric 2147483647 pref medium
2001:4490:4409:9ac4::/64 dev br0.1 proto static metric 256 pref medium
unreachable 2001:4490:4409:9ac4::/64 dev lo proto static metric 2147483647 pref medium
2405:201:300f:c0::/64 dev wan proto static metric 256 pref medium
unreachable 2405:201:300f:c0::/64 dev lo proto static metric 2147483647 pref medium
fd8c:fd18:2c36:c100::/64 dev br0.1 proto static metric 256 pref medium
unreachable fd8c:fd18:2c36:c100::/64 dev lo proto static metric 2147483647 pref medium
fdab:2569::/64 dev br-lan proto static metric 1024 pref medium
unreachable fdab:2569::/48 dev lo proto static metric 2147483647 pref medium
fdb4:6e08:9357:c200::/64 dev br0.2 proto kernel metric 256 expires 6900sec pref medium
fe80::/64 dev eth0 proto kernel metric 256 pref medium
fe80::/64 dev br0 proto kernel metric 256 pref medium
fe80::/64 dev br0.1 proto kernel metric 256 pref medium
fe80::/64 dev br0.2 proto kernel metric 256 pref medium
fe80::/64 dev br-lan proto kernel metric 256 pref medium
fe80::/64 dev wan proto kernel metric 256 pref medium
fe80::/64 dev wlan1 proto kernel metric 256 pref medium
default via fe80::6a14:1ff:fe58:9f8b dev wan proto static metric 384 pref medium
default via fe80::1 dev br0.1 proto static metric 512 pref medium
default via fe80::6a14:1ff:fe58:9f8b dev wan proto ra metric 1024 expires 3596sec hoplimit 64 pref medium
default via fe80::1 dev br0.1 proto ra metric 1024 expires 1711sec hoplimit 64 pref medium
default via fe80::1 dev br0.2 proto ra metric 1024 expires 1500sec mtu 1472 hoplimit 64 pref medium

Run a couple of tcpdumps to verify that packets are going out with the correct address.
tcpdump -i wan -evn icmp6
tcpdump -i br0.1 -evn icmp6
then from a host run the ping again.

Thanks @trendy
Finally, I made some changes and its working.
I have changed the ULA-Prefix in the Globals section to 2001:4490::/48, which is in the same range as the public prefix on wanb6.

The ipv6 prefix class for LAN remains Local. Rest configuration stays as per the discussion earlier in this thread.

Its working . :smiley:

By the way , I am unable to run tcpdump:

root@OpenWrt:~# tcpdump -i wan -evn icmp6
-ash: tcpdump: not found
root@OpenWrt:~# tcpdump -i br0.1 -evn icmp6
-ash: tcpdump: not found
root@OpenWrt:~# tcpdump -i br0.2 -evn icmp6
-ash: tcpdump: not found
root@OpenWrt:~# opkg install tcpdump
Unknown package 'tcpdump'.
Collected errors:
 * opkg_install_cmd: Cannot install package tcpdump.
root@OpenWrt:~#

opkg update; opkg install tcpdump; tcpdump ...

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