Ipv6 unreachable after renewed pppoe connection from isp side

Hi,
isp renewing pppoe link in 5 days period than clients loose ipv6 connection at all
i need to reboot the router
can anyone help to locate the problem is this isp faulte or something else

ipv6 working state

ip -6 ro list table all

default from 2xxx:xxx:xxxb:653c::/64 via fe80::xxxx:xxxx:xxxx:8340 dev pppoe-wan proto static metric 512 pref medium
default from 2xxx:xxx:xxxc:8459::/64 via fe80::xxxx:xxxx:xxxx:8340 dev pppoe-wan proto static metric 512 pref medium
unreachable 2xxx:xxx:xxxb:653c::/64 dev lo proto static metric 2147483647 pref medium
2xxx:xxx:xxxc:8459::/64 dev br-lan proto static metric 1024 pref medium
unreachable 2xxx:xxx:xxxc:8459::/64 dev lo proto static metric 2147483647 pref medium
fe80::xxxx:xxxx:xxxx:c27 dev pppoe-wan proto kernel metric 256 pref medium
fe80::xxxx:xxxx:xxxx:8340 dev pppoe-wan proto kernel metric 256 pref medium
fe80::/64 dev wan proto kernel metric 256 pref medium
fe80::/64 dev br-lan proto kernel metric 256 pref medium
fe80::/64 dev phy2-ap0 proto kernel metric 256 pref medium
fe80::/64 dev phy1-ap0 proto kernel metric 256 pref medium
local ::1 dev lo table local proto kernel metric 0 pref medium
anycast 2xxx:xxx:xxxb:653c:: dev pppoe-wan table local proto kernel metric 0 pref medium
local 2xxx:xxx:xxxb:653c:xxxx:xxxx:xxxx:c27 dev pppoe-wan table local proto kernel metric 0 pref medium
anycast 2xxx:xxx:xxxc:8459:: dev br-lan table local proto kernel metric 0 pref medium
local 2xxx:xxx:xxxc:8459::1 dev br-lan table local proto kernel metric 0 pref medium
anycast fe80:: dev wan table local proto kernel metric 0 pref medium
anycast fe80:: dev br-lan table local proto kernel metric 0 pref medium
anycast fe80:: dev phy2-ap0 table local proto kernel metric 0 pref medium
anycast fe80:: dev phy1-ap0 table local proto kernel metric 0 pref medium
local fe80::xxxx:xxxx:xxxx:c27 dev pppoe-wan table local proto kernel metric 0 pref medium
local fe80::xxxx:xxxx:xxxx:8791 dev wan table local proto kernel metric 0 pref medium
local fe80::xxxx:xxxx:xxxx:2031 dev br-lan table local proto kernel metric 0 pref medium
local fe80::xxxx:xxxx:xxxx:2031 dev phy2-ap0 table local proto kernel metric 0 pref medium
local fe80::xxxx:xxxx:xxxx:2032 dev phy1-ap0 table local proto kernel metric 0 pref medium
multicast ff00::/8 dev pppoe-wan 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 br-lan table local proto kernel metric 256 pref medium
multicast ff00::/8 dev phy2-ap0 table local proto kernel metric 256 pref medium
multicast ff00::/8 dev phy1-ap0 table local proto kernel metric 256 pref medium

ipv6 not working state

ip -6 ro list table all
default from 2xxx:xxx:xxxb:8665::/64 via fe80::xxxx:xxxx:xxxx:8340 dev pppoe-wan proto static metric 512 pref medium
default from 2xxx:xxx:xxxc:f74e::/64 via fe80::xxxx:xxxx:xxxx:8340 dev pppoe-wan proto static metric 512 pref medium
unreachable 2xxx:xxx:xxxb:8665::/64 dev lo proto static metric 2147483647 pref medium
2xxx:xxx:xxxc:f74e::/64 dev br-lan proto static metric 1024 pref medium
unreachable 2xxx:xxx:xxxc:f74e::/64 dev lo proto static metric 2147483647 pref medium
fe80::xxxx:xxxx:xxxx:100f dev pppoe-wan proto kernel metric 256 pref medium
fe80::xxxx:xxxx:xxxx:8340 dev pppoe-wan proto kernel metric 256 pref medium
fe80::/64 dev wan proto kernel metric 256 pref medium
fe80::/64 dev br-lan proto kernel metric 256 pref medium
fe80::/64 dev phy2-ap0 proto kernel metric 256 pref medium
fe80::/64 dev phy1-ap0 proto kernel metric 256 pref medium
local ::1 dev lo table local proto kernel metric 0 pref medium
anycast 2xxx:xxx:xxxb:8665:: dev pppoe-wan table local proto kernel metric 0 pref medium
local 2xxx:xxx:xxxb:8665:xxxx:xxxx:xxxx:100f dev pppoe-wan table local proto kernel metric 0 pref medium
anycast 2xxx:xxx:xxxc:f74e:: dev br-lan table local proto kernel metric 0 pref medium
local 2xxx:xxx:xxxc:f74e::1 dev br-lan table local proto kernel metric 0 pref medium
anycast fe80:: dev br-lan table local proto kernel metric 0 pref medium
anycast fe80:: dev phy2-ap0 table local proto kernel metric 0 pref medium
anycast fe80:: dev wan table local proto kernel metric 0 pref medium
anycast fe80:: dev phy1-ap0 table local proto kernel metric 0 pref medium
local fe80::xxxx:xxxx:xxxx:8791 dev wan table local proto kernel metric 0 pref medium
local fe80::xxxx:xxxx:xxxx:100f dev pppoe-wan table local proto kernel metric 0 pref medium
local fe80::xxxx:xxxx:xxxx:2031 dev br-lan table local proto kernel metric 0 pref medium
local fe80::xxxx:xxxx:xxxx:2031 dev phy2-ap0 table local proto kernel metric 0 pref medium
local fe80::xxxx:xxxx:xxxx:2032 dev phy1-ap0 table local proto kernel metric 0 pref medium
multicast ff00::/8 dev wan 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 phy2-ap0 table local proto kernel metric 256 pref medium
multicast ff00::/8 dev phy1-ap0 table local proto kernel metric 256 pref medium
multicast ff00::/8 dev pppoe-wan table local proto kernel metric 256 pref medium

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 wireless; \
uci export dhcp; uci export firewall; \
ip -6 addr ; ip -6 ro li tab all ; ip -6 ru; \
ifstatus wan6

hello,
The detailed log is below.

{
        "kernel": "5.15.112",
        "hostname": "AX3600Xiaomi",
        "system": "ARMv8 Processor rev 4",
        "model": "Xiaomi AX3600",
        "board_name": "xiaomi,ax3600",
        "rootfs_type": "squashfs",
        "release": {
                "distribution": "OpenWrt",
                "version": "SNAPSHOT",
                "revision": "r23027-179417a12c",
                "target": "ipq807x/generic",
                "description": "OpenWrt SNAPSHOT r23027-179417a12c"
        }
}
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'

config device
        option name 'br-lan'
        option type 'bridge'
        list ports 'lan1'
        list ports 'lan2'
        list ports 'lan3'

config interface 'lan'
        option device 'br-lan'
        option proto 'static'
        option ipaddr '192.168.X.1'
        option netmask '255.255.255.0'
        option ip6assign '64'
        list ip6class 'wan_6'

config interface 'wan'
        option device 'wan'
        option proto 'pppoe'
        option peerdns '0'
        option username 'xxxx@turk.net'
        option password 'xxxx'
        option ipv6 'auto'
        option mtu '1492'
        option ip6assign '64'
        list dns '1.1.1.1'
        list dns '8.8.8.8'
        list dns '1.0.0.1'
        list dns '8.8.4.4'

config interface 'wan6'
        option proto 'dhcpv6'
        option device 'wan'
        option reqaddress 'try'
        option reqprefix 'auto'
        option ip6assign '64'

package wireless

config wifi-device 'radio0'
        option type 'mac80211'
        option path 'soc/20000000.pci/pci0000:00/0000:00:00.0/0000:01:00.0'
        option channel '36'
        option band '5g'
        option htmode 'VHT80'
        option cell_density '0'
        option txpower '19'
        option country 'TR'
        option disabled '1'

config wifi-device 'radio1'
        option type 'mac80211'
        option path 'platform/soc/c000000.wifi'
        option band '5g'
        option cell_density '0'
        option htmode 'HE80'
        option channel '48'
        option country 'TR'
        option txpower '19'

config wifi-iface 'default_radio1'
        option device 'radio1'
        option network 'lan'
        option mode 'ap'
        option encryption 'psk2+ccmp'
        option ssid 'xxxx'
        option key 'xxxx'
        option max_inactivity '43200'
        option disassoc_low_ack '0'

config wifi-device 'radio2'
        option type 'mac80211'
        option path 'platform/soc/c000000.wifi+1'
        option band '2g'
        option cell_density '0'
        option htmode 'HT20'
        option channel '11'
        option txpower '16'
        option country 'TR'

config wifi-iface 'default_radio2'
        option device 'radio2'
        option network 'lan'
        option mode 'ap'
        option ssid 'xxxx'
        option encryption 'psk2+ccmp'
        option key 'xxxx'
        option max_inactivity '43200'
        option disassoc_low_ack '0'

package 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 localservice '1'
        option ednspacket_max '1232'
        option cachesize '3000'
        option port '0'
        list notinterface 'loopback'

config dhcp 'lan'
        option interface 'lan'
        option start '100'
        option limit '150'
        option leasetime '12h'
        option dhcpv4 'server'
        option ra 'server'
        list ra_flags 'managed-config'
        list ra_flags 'other-config'
        option dhcpv6 'server'

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'

package firewall

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

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

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 rule
        option target 'ACCEPT'
        option src 'wan'
        option proto 'udp'
        option dest_port '547'
        option name 'Allow DHCPv6 Relay (546-to-547)'
        option family 'ipv6'
        option src_port '546'

config rule
        option target 'ACCEPT'
        option src 'wan'
        option proto 'udp'
        option dest_port '546'
        option name 'Allow DHCPv6 Relay (547-to-546)'
        option family 'ipv6'
        option src_port '547'

config include 'qcanssecm'
        option type 'script'
        option path '/etc/firewall.d/qca-nss-ecm'
        option family 'any'
        option reload '1'

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 state UNKNOWN qlen 1000
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
3: wan: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1492 state UP qlen 1000
    inet6 fe80::xxxx:xxxx:xxxx:8791/64 scope link
       valid_lft forever preferred_lft forever
16: br-lan: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 state UP qlen 1000
    inet6 2a02:xxx:xxxc:8::1/64 scope global dynamic noprefixroute
       valid_lft 2591907sec preferred_lft 604707sec
    inet6 fe80::xxxx:xxxx:xxxx:2031/64 scope link
       valid_lft forever preferred_lft forever
17: phy2-ap0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 state UP qlen 1000
    inet6 fe80::xxxx:xxxx:xxxx:2031/64 scope link
       valid_lft forever preferred_lft forever
18: phy1-ap0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 state UP qlen 1000
    inet6 fe80::xxxx:xxxx:xxxx:2032/64 scope link
       valid_lft forever preferred_lft forever
25: pppoe-wan: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1484 state UNKNOWN qlen 3
    inet6 2a02:xxx:xxxb:2d01:xxxx:xxxx:xxxx:2f96/64 scope global dynamic noprefixroute
       valid_lft 2591936sec preferred_lft 604736sec
    inet6 fe80::xxxx:xxxx:xxxx:2f96 peer fe80::xxxx:xxxx:xxxx:8340/128 scope link
       valid_lft forever preferred_lft forever
default from 2a02:xxx:xxxb:2d01::/64 via fe80::xxxx:xxxx:xxxx:8340 dev pppoe-wan proto static metric 512 pref medium
default from 2a02:xxx:xxxc:8::/64 via fe80::xxxx:xxxx:xxxx:8340 dev pppoe-wan proto static metric 512 pref medium
unreachable 2a02:xxx:xxxb:2d01::/64 dev lo proto static metric 2147483647 pref medium
2a02:xxx:xxxc:8::/64 dev br-lan proto static metric 1024 pref medium
unreachable 2a02:xxx:xxxc:8::/64 dev lo proto static metric 2147483647 pref medium
fe80::xxxx:xxxx:xxxx:2f96 dev pppoe-wan proto kernel metric 256 pref medium
fe80::xxxx:xxxx:xxxx:8340 dev pppoe-wan proto kernel metric 256 pref medium
fe80::/64 dev wan proto kernel metric 256 pref medium
fe80::/64 dev br-lan proto kernel metric 256 pref medium
fe80::/64 dev phy2-ap0 proto kernel metric 256 pref medium
fe80::/64 dev phy1-ap0 proto kernel metric 256 pref medium
local ::1 dev lo table local proto kernel metric 0 pref medium
anycast 2a02:xxx:xxxb:2d01:: dev pppoe-wan table local proto kernel metric 0 pref medium
local 2a02:xxx:xxxb:2d01:xxxx:xxxx:xxxx:2f96 dev pppoe-wan table local proto kernel metric 0 pref medium
anycast 2a02:xxx:xxxc:8:: dev br-lan table local proto kernel metric 0 pref medium
local 2a02:xxx:xxxc:8::1 dev br-lan table local proto kernel metric 0 pref medium
anycast fe80:: dev wan table local proto kernel metric 0 pref medium
anycast fe80:: dev br-lan table local proto kernel metric 0 pref medium
anycast fe80:: dev phy2-ap0 table local proto kernel metric 0 pref medium
anycast fe80:: dev phy1-ap0 table local proto kernel metric 0 pref medium
local fe80::xxxx:xxxx:xxxx:8791 dev wan table local proto kernel metric 0 pref medium
local fe80::xxxx:xxxx:xxxx:2031 dev br-lan table local proto kernel metric 0 pref medium
local fe80::xxxx:xxxx:xxxx:2031 dev phy2-ap0 table local proto kernel metric 0 pref medium
local fe80::xxxx:xxxx:xxxx:2032 dev phy1-ap0 table local proto kernel metric 0 pref medium
local fe80::xxxx:xxxx:xxxx:2f96 dev pppoe-wan table local proto kernel metric 0 pref medium
multicast ff00::/8 dev wan 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 phy2-ap0 table local proto kernel metric 256 pref medium
multicast ff00::/8 dev phy1-ap0 table local proto kernel metric 256 pref medium
multicast ff00::/8 dev pppoe-wan table local proto kernel metric 256 pref medium
0:      from all lookup local
32766:  from all lookup main
4200000000:     from 2a02:xxx:xxxc:8::1/64 iif br-lan unreachable
{
        "up": false,
        "pending": true,
        "available": true,
        "autostart": true,
        "dynamic": false,
        "proto": "dhcpv6",
        "device": "wan",
        "data": {

        }
}

Remove these 2 from the wan interface. PPPoE interfaces automatically reduce the MTU and you should not assign a /64 from the delegated prefix on the wan and the wan6

This looks wrong. And I wouldn't be surprised if it is some bug because of the snapshot image that is used.

my isp specifically requires mtu size to 1492 otherwise packages gonna start drop
i will test other your suggestions
but I noticed that
openwrt creates wan6 interface in default config but it never use
when pppoe connection established also creates wan_6(virtual dynamic interface) (i think that because in wan interface ipv6 sets to automatic)

i removed ip6assign options and wan6 interface
let it be only wan_6 interface what will happen i am gonna wait

also funny thing with previusly config luci can't list dns servers in IPv6 Upstream
when i removed wan6 interface luci can list dns servers as well ipv4 like

thanks

here is the ifstatus wan_6

ifstatus wan_6
{
        "up": true,
        "pending": false,
        "available": true,
        "autostart": true,
        "dynamic": true,
        "uptime": 289,
        "l3_device": "pppoe-wan",
        "proto": "dhcpv6",
        "device": "pppoe-wan",
        "metric": 0,
        "dns_metric": 0,
        "delegation": true,
        "ipv4-address": [

        ],
        "ipv6-address": [
                {
                        "address": "2xxx:xxx:xxxb:xxxx:xxxx:xxxx:xxxx:346a",
                        "mask": 64,
                        "preferred": 604736,
                        "valid": 2591936
                }
        ],
        "ipv6-prefix": [
                {
                        "address": "2xxx:xxx:xxxc:xxxx::",
                        "mask": 64,
                        "preferred": 604510,
                        "valid": 2591710,
                        "class": "wan_6",
                        "assigned": {
                                "lan": {
                                        "address": "2xxx:xxx:xxxc:xxxx::",
                                        "mask": 64
                                }
                        }
                }
        ],
        "ipv6-prefix-assignment": [

        ],
        "route": [
                {
                        "target": "::",
                        "mask": 0,
                        "nexthop": "fe80::xxxx:xxxx:xxxx",
                        "metric": 512,
                        "valid": 1736,
                        "source": "2xxx:xxx:xxxb:xxxx:xxxx:xxxx:xxxx:346a/64"
                },
                {
                        "target": "::",
                        "mask": 0,
                        "nexthop": "fe80::xxxx:xxxx:xxxx",
                        "metric": 512,
                        "valid": 1736,
                        "source": "2xxx:xxx:331c:xxxx::/64"
                }
        ],
        "dns-server": [
                "2a02:ff0:2:327:193:192:98:8",
                "2a02:ff0:4:327:212:154:100:18"
        ],
        "dns-search": [

        ],
        "neighbors": [

        ],
        "inactive": {
                "ipv4-address": [

                ],
                "ipv6-address": [

                ],
                "route": [

                ],
                "dns-server": [

                ],
                "dns-search": [

                ],
                "neighbors": [

                ]
        },
        "data": {
                "zone": "wan",
                "passthru": "xxxx",
                "zone": "wan"
        }
}

What does ip link show dev pppoe-wan give?

Right I missed that. If you have the option ipv6 'auto' in wan, then remove the wan6 interface. Otherwise you can add

uci set network.wan.ipv6='1'
uci commit network
ifup wan

and wan_6 will no longer be automatically created, you'll be working with wan6.

mtu size 1484

but it didn't work br-lan and clients can't obtain ipv6
i created wan6 just like dynamic interface parameters but somehow it won't work
i tried some firewall rules to mix between wan and lan interfaces to wan6 but no lock

my goal is the use custom dns on ipv6
with dynamic interface i can't define custom dns servers
is there a way to put them into wan_6(dynamic) or i have to set wan6 interface with manual interaction

As you can see, the option mtu '1492' is further lowering the mtu from the desired.

Not as far as I know. So you can revert configuration with manual ipv6 in wan interface and post the same output to troubleshoot what is wrong with the lan hosts.

removing mtu line in network config did the trick
all good now wan6 interface works as should be

but even openwrt's ISP Configurations guide suggests that mtu value needs to set 1492
for i know 1484 + 8byte header = 1492 mtu that's why pppoe-wan lowering mtu without header size
all this time i may think wrong or my isp finally change their mtu configs

i am enabled " net.ipv4.tcp_mtu_probing" sysctl parameter maybe that's doing the trick i didn't bother the check that if its works
anyway no packet loss based on initial tests, I'll look into it for future use

the main reason for this topic i did the open when my isp reset the pppoe connection
will ipv6 connection remain intact or gonna stale and loose
i will wait if my calculations correct tomorrow morning at 07:00 pppoe connection will reset

thanks for your help

Must have been added long time ago, when this option was meaningful. Fixed!

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