Quick bit of advice regarding IPv6

Morning everyone,

Running r14256 Snapshot on my RPi4 but need to ask a few questions regarding my IPv6 connection as it doesn't seem to be working.

I connect via a 80/20 PPPoE connection to my ISP, in my interfaces I have a pppoe-WAN connection which shows my ipv4 details and providing my internet, I also have a WAN_6 tab which is running as DHCPv6 client but it's not showing any of my ISP IPv6 details but does have RX/TX counters that seem to be increasing regularly like it's doing something.

However I noticed last night if I use a test website it says I don't have IPv6 connectivity, despite my ISP having full IPv6 network structure, so I guess I need to change a setting somewhere? Does the WAN_6 need to a PPPoE connection too?

1 Like
root@OpenWrt:~# uci show network
network.loopback=interface
network.loopback.ifname='lo'
network.loopback.proto='static'
network.loopback.ipaddr='127.0.0.1'
network.loopback.netmask='255.0.0.0'
network.globals=globals
network.globals.ula_prefix='fd50:29b8:f874::/48'
network.globals.packet_steering='1'
network.lan=interface
network.lan.type='bridge'
network.lan.ifname='eth0'
network.lan.proto='static'
network.lan.ipaddr='192.168.1.1'
network.lan.netmask='255.255.255.0'
network.lan.ip6assign='60'
network.WAN=interface
network.WAN.proto='pppoe'
network.WAN.ifname='eth1'
network.WAN.username='xxxxxxxxxcx@idnet'
network.WAN.password='xxxxxxxxxxx'
network.WAN.ipv6='auto'
network.WAN_6=interface
network.WAN_6.proto='dhcpv6'
network.WAN_6.reqaddress='try'
network.WAN_6.reqprefix='auto'
network.WAN_6.peerdns='0'
root@OpenWrt:~# ifup WAN_6 && ifstatus WAN_6
{
        "up": false,
        "pending": true,
        "available": true,
        "autostart": true,
        "dynamic": false,
        "proto": "dhcpv6",
        "device": "eth1",
        "data": {

        }
}

My ISP states in it's settings tab...

We recommend you let your router configure IPv6 using DHCPv6

Prefix (/64):

2A02:390:FEED:818A::/64

Routed (/48):

2A02:390:818A::/48

DNS Servers:

2a02:390:1:0:5b95:891a:32e:4462
2a02:390:2:0:a07c:9cca:e377:1c57

Check if disabling firewall helps.
IPv6 not working in 19.07 in standard configuration, only disable Firewall rules helped

When you have

the WAN_6 interface is spawned automatically. Having it configured in the network configuration file makes it complicated.
If you want to configure the wan6 interface yourself, change the value from auto to 1.
Also keep in mind that OpenWrt is case sensitive, therefore WAN is different than wan, and it is possible that you have not updated the firewall with the new interface name.

3 Likes

@trendy

That's a problem I found on the rpi, the interface doesn't configure by itself?? On my R7800 it used to bring up a virtual interface? On my rpi it didn't... I wonder if I've missed something when building the firmware in menuconfig.

Are the sentences ending with question marks really questions for me?
You can boot a built image to rule out mistakes from your building.

3 Likes

Yeah there's a community build now I could try, see what differs with my build...

I've checked and my firewall and interfaces all say WAN not wan so it all matches.

I can't seem to find anything missing in the build settings, i would have thought everything for basic IPv6 would be included in the base settings, it seems to have most things.

Cheers for the assistance everyone.

./scripts/diffconfig.sh
1 Like

Will that command revert my build settings back to default, in fairness I've not really messed with the config, just picked my device, added Luci and a few Luci apps nothing much, no vpns etc... But I'll give it a try. See if it fixes it. Thank you.

@vgaetera

thebroughfamily@penguin:~/openwrt$ ./scripts/diffconfig.sh
CONFIG_TARGET_bcm27xx=y
CONFIG_TARGET_bcm27xx_bcm2711=y
CONFIG_TARGET_bcm27xx_bcm2711_DEVICE_rpi-4=y
# CONFIG_KERNEL_CFS_BANDWIDTH is not set
CONFIG_KERNEL_CGROUP_DEVICE=y
CONFIG_KERNEL_CGROUP_FREEZER=y
CONFIG_KERNEL_CGROUP_NET_PRIO=y
# CONFIG_KERNEL_MEMCG_SWAP is not set
CONFIG_KERNEL_NET_CLS_CGROUP=y
CONFIG_OPENSSL_ENGINE=y
CONFIG_OPENSSL_WITH_ASM=y
CONFIG_OPENSSL_WITH_CHACHA_POLY1305=y
CONFIG_OPENSSL_WITH_CMS=y
CONFIG_OPENSSL_WITH_DEPRECATED=y
CONFIG_OPENSSL_WITH_ERROR_MESSAGES=y
CONFIG_OPENSSL_WITH_PSK=y
CONFIG_OPENSSL_WITH_SRP=y
CONFIG_OPENSSL_WITH_TLS13=y
CONFIG_PACKAGE_acme=y
CONFIG_PACKAGE_alsa-lib=y
CONFIG_PACKAGE_avahi-dbus-daemon=y
CONFIG_PACKAGE_banip=y
CONFIG_PACKAGE_bcm27xx-eeprom=y
CONFIG_PACKAGE_bcp38=y
CONFIG_PACKAGE_bind-dig=y
CONFIG_PACKAGE_bind-host=y
CONFIG_PACKAGE_bind-libs=y
CONFIG_PACKAGE_blkid=y
CONFIG_PACKAGE_block-mount=y
CONFIG_PACKAGE_ca-certificates=y
CONFIG_PACKAGE_cgi-io=y
CONFIG_PACKAGE_collectd=y
CONFIG_PACKAGE_collectd-mod-conntrack=y
CONFIG_PACKAGE_collectd-mod-cpu=y
CONFIG_PACKAGE_collectd-mod-dns=y
CONFIG_PACKAGE_collectd-mod-exec=y
CONFIG_PACKAGE_collectd-mod-interface=y
CONFIG_PACKAGE_collectd-mod-irq=y
CONFIG_PACKAGE_collectd-mod-iwinfo=y
CONFIG_PACKAGE_collectd-mod-load=y
CONFIG_PACKAGE_collectd-mod-memory=y
CONFIG_PACKAGE_collectd-mod-network=y
CONFIG_PACKAGE_collectd-mod-rrdtool=y
CONFIG_PACKAGE_collectd-mod-sqm=y
CONFIG_PACKAGE_collectd-mod-thermal=y
CONFIG_PACKAGE_dbus=y
# CONFIG_PACKAGE_dnsmasq is not set
CONFIG_PACKAGE_dnsmasq-full=y
CONFIG_PACKAGE_dnsmasq_full_auth=y
CONFIG_PACKAGE_dnsmasq_full_conntrack=y
CONFIG_PACKAGE_dnsmasq_full_dhcp=y
CONFIG_PACKAGE_dnsmasq_full_dhcpv6=y
CONFIG_PACKAGE_dnsmasq_full_dnssec=y
CONFIG_PACKAGE_dnsmasq_full_ipset=y
CONFIG_PACKAGE_dnsmasq_full_noid=y
CONFIG_PACKAGE_dnsmasq_full_tftp=y
CONFIG_PACKAGE_hd-idle=y
CONFIG_PACKAGE_hwinfo=y
CONFIG_PACKAGE_inotifywait=y
CONFIG_PACKAGE_inotifywatch=y
CONFIG_PACKAGE_ip-full=y
CONFIG_PACKAGE_ip-tiny=y
CONFIG_PACKAGE_iperf3=y
CONFIG_PACKAGE_ipset=y
CONFIG_PACKAGE_iptables-mod-conntrack-extra=y
CONFIG_PACKAGE_iptables-mod-ipopt=y
CONFIG_PACKAGE_iptables-mod-nat-extra=y
CONFIG_PACKAGE_irqbalance=y
CONFIG_PACKAGE_kmod-crypto-crc32c=y
CONFIG_PACKAGE_kmod-crypto-hash=y
CONFIG_PACKAGE_kmod-fs-configfs=y
CONFIG_PACKAGE_kmod-hwmon-core=y
CONFIG_PACKAGE_kmod-hwmon-pwmfan=y
CONFIG_PACKAGE_kmod-hwmon-raspberrypi=y
CONFIG_PACKAGE_kmod-hwmon-rpi-poe-fan=y
CONFIG_PACKAGE_kmod-ifb=y
CONFIG_PACKAGE_kmod-ipt-conntrack-extra=y
CONFIG_PACKAGE_kmod-ipt-ipopt=y
CONFIG_PACKAGE_kmod-ipt-ipset=y
CONFIG_PACKAGE_kmod-ipt-nat-extra=y
CONFIG_PACKAGE_kmod-ipt-raw=y
CONFIG_PACKAGE_kmod-iptunnel=y
CONFIG_PACKAGE_kmod-iptunnel4=y
CONFIG_PACKAGE_kmod-ledtrig-default-on=y
CONFIG_PACKAGE_kmod-ledtrig-heartbeat=y
CONFIG_PACKAGE_kmod-ledtrig-netdev=y
CONFIG_PACKAGE_kmod-ledtrig-timer=y
CONFIG_PACKAGE_kmod-lib-crc32c=y
CONFIG_PACKAGE_kmod-libphy=y
CONFIG_PACKAGE_kmod-mii=y
CONFIG_PACKAGE_kmod-nf-conntrack-netlink=y
CONFIG_PACKAGE_kmod-nfnetlink=y
CONFIG_PACKAGE_kmod-sched=y
CONFIG_PACKAGE_kmod-sched-cake=y
CONFIG_PACKAGE_kmod-sched-connmark=y
CONFIG_PACKAGE_kmod-sched-core=y
CONFIG_PACKAGE_kmod-scsi-core=y
CONFIG_PACKAGE_kmod-sit=y
CONFIG_PACKAGE_kmod-udptunnel4=y
CONFIG_PACKAGE_kmod-udptunnel6=y
CONFIG_PACKAGE_kmod-usb-ehci=y
CONFIG_PACKAGE_kmod-usb-gadget=y
CONFIG_PACKAGE_kmod-usb-gadget-hid=y
CONFIG_PACKAGE_kmod-usb-gadget-mass-storage=y
CONFIG_PACKAGE_kmod-usb-lib-composite=y
CONFIG_PACKAGE_kmod-usb-net=y
CONFIG_PACKAGE_kmod-usb-net-asix=y
CONFIG_PACKAGE_kmod-usb-net-asix-ax88179=y
CONFIG_PACKAGE_kmod-usb-net-cdc-ether=y
CONFIG_PACKAGE_kmod-usb-net-cdc-mbim=y
CONFIG_PACKAGE_kmod-usb-net-cdc-ncm=y
CONFIG_PACKAGE_kmod-usb-net-rtl8150=y
CONFIG_PACKAGE_kmod-usb-net-rtl8152=y
CONFIG_PACKAGE_kmod-usb-storage=y
CONFIG_PACKAGE_kmod-usb-storage-extras=y
CONFIG_PACKAGE_kmod-usb-storage-uas=y
CONFIG_PACKAGE_kmod-usb-wdm=y
CONFIG_PACKAGE_kmod-usb2=y
CONFIG_PACKAGE_kmod-usb3=y
CONFIG_PACKAGE_kmod-wireguard=y
CONFIG_PACKAGE_libao=y
CONFIG_PACKAGE_libatomic=y
CONFIG_PACKAGE_libavahi-client=y
CONFIG_PACKAGE_libavahi-compat-libdnssd=y
CONFIG_PACKAGE_libavahi-dbus-support=y
CONFIG_PACKAGE_libbz2=y
CONFIG_PACKAGE_libcares=y
CONFIG_PACKAGE_libdaemon=y
CONFIG_PACKAGE_libdbus=y
CONFIG_PACKAGE_libelf=y
CONFIG_PACKAGE_libev=y
CONFIG_PACKAGE_libexpat=y
CONFIG_PACKAGE_libffi=y
CONFIG_PACKAGE_libgmp=y
CONFIG_PACKAGE_libinotifytools=y
CONFIG_PACKAGE_libipset=y
CONFIG_PACKAGE_libiwinfo-lua=y
CONFIG_PACKAGE_libkmod=y
CONFIG_PACKAGE_libltdl=y
CONFIG_PACKAGE_liblua=y
CONFIG_PACKAGE_liblucihttp=y
CONFIG_PACKAGE_liblucihttp-lua=y
CONFIG_PACKAGE_libmbedtls=y
CONFIG_PACKAGE_libmnl=y
CONFIG_PACKAGE_libnetfilter-conntrack=y
CONFIG_PACKAGE_libnettle=y
CONFIG_PACKAGE_libnfnetlink=y
CONFIG_PACKAGE_libopenssl=y
CONFIG_PACKAGE_libopenssl-conf=y
CONFIG_PACKAGE_libpcap=y
CONFIG_PACKAGE_libpci=y
CONFIG_PACKAGE_libpcre=y
CONFIG_PACKAGE_librrd1=y
CONFIG_PACKAGE_libubus-lua=y
CONFIG_PACKAGE_libusb-1.0=y
CONFIG_PACKAGE_libustream-openssl=y
# CONFIG_PACKAGE_libustream-wolfssl is not set
CONFIG_PACKAGE_libuv=y
# CONFIG_PACKAGE_libwolfssl is not set
CONFIG_PACKAGE_lua=y
CONFIG_PACKAGE_luci=y
CONFIG_PACKAGE_luci-app-acme=y
CONFIG_PACKAGE_luci-app-banip=y
CONFIG_PACKAGE_luci-app-bcp38=y
CONFIG_PACKAGE_luci-app-firewall=y
CONFIG_PACKAGE_luci-app-hd-idle=y
CONFIG_PACKAGE_luci-app-nlbwmon=y
CONFIG_PACKAGE_luci-app-opkg=y
CONFIG_PACKAGE_luci-app-qos=y
CONFIG_PACKAGE_luci-app-sqm=y
CONFIG_PACKAGE_luci-app-statistics=y
CONFIG_PACKAGE_luci-app-watchcat=y
CONFIG_PACKAGE_luci-app-wireguard=y
CONFIG_PACKAGE_luci-base=y
CONFIG_PACKAGE_luci-compat=y
CONFIG_PACKAGE_luci-lib-base=y
CONFIG_PACKAGE_luci-lib-ip=y
CONFIG_PACKAGE_luci-lib-iptparser=y
CONFIG_PACKAGE_luci-lib-jsonc=y
CONFIG_PACKAGE_luci-lib-nixio=y
CONFIG_PACKAGE_luci-mod-admin-full=y
CONFIG_PACKAGE_luci-mod-dashboard=y
CONFIG_PACKAGE_luci-mod-network=y
CONFIG_PACKAGE_luci-mod-status=y
CONFIG_PACKAGE_luci-mod-system=y
CONFIG_PACKAGE_luci-proto-ipv6=y
CONFIG_PACKAGE_luci-proto-ppp=y
CONFIG_PACKAGE_luci-proto-wireguard=y
CONFIG_PACKAGE_luci-ssl-openssl=y
CONFIG_PACKAGE_luci-theme-argon=y
CONFIG_PACKAGE_luci-theme-bootstrap=y
CONFIG_PACKAGE_luci-theme-material=y
CONFIG_PACKAGE_luci-theme-openwrt=y
CONFIG_PACKAGE_luci-theme-openwrt-2020=y
CONFIG_PACKAGE_netperf=y
CONFIG_PACKAGE_nlbwmon=y
CONFIG_PACKAGE_openssl-util=y
CONFIG_PACKAGE_pciutils=y
CONFIG_PACKAGE_python3-base=y
CONFIG_PACKAGE_python3-light=y
CONFIG_PACKAGE_qos-scripts=y
CONFIG_PACKAGE_rpcd=y
CONFIG_PACKAGE_rpcd-mod-file=y
CONFIG_PACKAGE_rpcd-mod-iwinfo=y
CONFIG_PACKAGE_rpcd-mod-luci=y
CONFIG_PACKAGE_rpcd-mod-rrdns=y
CONFIG_PACKAGE_rrdtool1=y
CONFIG_PACKAGE_shairplay=y
CONFIG_PACKAGE_socat=y
CONFIG_PACKAGE_sqm-scripts=y
CONFIG_PACKAGE_tc=y
CONFIG_PACKAGE_tcpdump=y
CONFIG_PACKAGE_uhttpd=y
CONFIG_PACKAGE_uhttpd-mod-ubus=y
CONFIG_PACKAGE_usb-modeswitch=y
CONFIG_PACKAGE_watchcat=y
CONFIG_PACKAGE_wget=y
CONFIG_PACKAGE_wifischedule=y
CONFIG_PACKAGE_wireguard-tools=y
CONFIG_PACKAGE_wpad-basic=y
# CONFIG_PACKAGE_wpad-basic-wolfssl is not set
CONFIG_PACKAGE_zlib=y
CONFIG_PACKAGE_zoneinfo-core=y
CONFIG_PACKAGE_zoneinfo-europe=y
# CONFIG_TARGET_IMAGES_GZIP is not set
CONFIG_TARGET_KERNEL_PARTSIZE=384
CONFIG_TARGET_ROOTFS_PARTSIZE=960
# CONFIG_TARGET_ROOTFS_SQUASHFS is not set
# CONFIG_WPA_WOLFSSL is not set

I think it's a config issue as I was using dnsmasq-full as rebuilding the same image but with stock dnsmasq it builds it's own virtual WAN_6 interface and has IPv6 connectivity.

Problem solved.

1 Like

Well, bit of an update, this morning I tested IPv6 and it worked, tonight it doesn't despite the virtual interface still being active and the luci diagnostics being able to ping IPv6 successfully, devices on the lan can't use IPv6 again.

How weird is that?

Do the lan hosts get IPv6 address and route?

It says there's no DHCPv6 leases... So something has changed as it worked first thing in the morning and no one even accessed the router after then, but it's stopped now.

Is this on the router or from the lan hosts?
I asked about the lan hosts.

The router says there is no active DHCPv6 leases, and my phone and laptop both only have an ipv4 connection currently.

ifup WAN; sleep 10; ifstatus WAN_6
1 Like

The router itself has IPv6 as it starts the virtual interface, shows all my ISP IPv6 details, and if I use Luci diagnostics it passes all the tests. It's the lan clients that now don't get given the connection it seems.

Ifstatus WAN_6

OpenWrt SNAPSHOT, r14256-a69949a13f
 -----------------------------------------------------
root@OpenWrt:~# ifstatus WAN_6
{
        "up": true,
        "pending": false,
        "available": true,
        "autostart": true,
        "dynamic": true,
        "uptime": 120423,
        "l3_device": "pppoe-WAN",
        "proto": "dhcpv6",
        "device": "pppoe-WAN",
        "metric": 0,
        "dns_metric": 0,
        "delegation": true,
        "ipv4-address": [

        ],
        "ipv6-address": [
                {
                        "address": "2a02:390:feed:818a:1d62:57f:b932:a4b4",
                        "mask": 64,
                        "preferred": 604665,
                        "valid": 2591865
                }
        ],
        "ipv6-prefix": [
                {
                        "address": "2a02:390:818a::",
                        "mask": 48,
                        "preferred": 23590,
                        "valid": 81190,
                        "class": "WAN_6",
                        "assigned": {
                                "lan": {
                                        "address": "2a02:390:818a::",
                                        "mask": 60
                                }
                        }
                }
        ],
        "ipv6-prefix-assignment": [

        ],
        "route": [
                {
                        "target": "2a02:390:feed:818a::",
                        "mask": 64,
                        "nexthop": "::",
                        "metric": 256,
                        "valid": 2591865,
                        "source": "::/0"
                },
                {
                        "target": "::",
                        "mask": 0,
                        "nexthop": "fe80::227:e3ff:fe77:b100",
                        "metric": 512,
                        "valid": 1665,
                        "source": "2a02:390:818a::/48"
                },
                {
                        "target": "::",
                        "mask": 0,
                        "nexthop": "fe80::227:e3ff:fe77:b100",
                        "metric": 512,
                        "valid": 1665,
                        "source": "2a02:390:feed:818a:1d62:57f:b932:a4b4/64"
                }
        ],
        "dns-server": [
                "2a02:390:1::64:6e73",
                "2a02:390:2::64:6e73"
        ],
        "dns-search": [
                "idnet.com"
        ],
        "neighbors": [

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

                ],
                "ipv6-address": [

                ],
                "route": [

                ],
                "dns-server": [

                ],
                "dns-search": [

                ],
                "neighbors": [

                ]
        },
        "data": {
                "passthru": "001700202a020390000100000000000000646e732a020390000200000000000000646e730018000b0569646e657403636f6d00",
                "zone": "wan"
        }
}
root@OpenWrt:~#
1 Like
root@OpenWrt:~#  ifup WAN; sleep 10; ifstatus WAN_6
{
        "up": true,
        "pending": false,
        "available": true,
        "autostart": true,
        "dynamic": true,
        "uptime": 6,
        "l3_device": "pppoe-WAN",
        "proto": "dhcpv6",
        "device": "pppoe-WAN",
        "updated": [
                "addresses",
                "routes",
                "prefixes",
                "data"
        ],
        "metric": 0,
        "dns_metric": 0,
        "delegation": true,
        "ipv4-address": [

        ],
        "ipv6-address": [
                {
                        "address": "2a02:390:feed:818a:3537:da2f:f17d:d678",
                        "mask": 64,
                        "preferred": 604792,
                        "valid": 2591992
                }
        ],
        "ipv6-prefix": [
                {
                        "address": "2a02:390:818a::",
                        "mask": 48,
                        "preferred": 28794,
                        "valid": 86394,
                        "class": "WAN_6",
                        "assigned": {
                                "lan": {
                                        "address": "2a02:390:818a::",
                                        "mask": 60
                                }
                        }
                }
        ],
        "ipv6-prefix-assignment": [

        ],
        "route": [
                {
                        "target": "2a02:390:feed:818a::",
                        "mask": 64,
                        "nexthop": "::",
                        "metric": 256,
                        "valid": 2591992,
                        "source": "::/0"
                },
                {
                        "target": "::",
                        "mask": 0,
                        "nexthop": "fe80::227:e3ff:fe77:b100",
                        "metric": 512,
                        "valid": 1792,
                        "source": "2a02:390:818a::/48"
                },
                {
                        "target": "::",
                        "mask": 0,
                        "nexthop": "fe80::227:e3ff:fe77:b100",
                        "metric": 512,
                        "valid": 1792,
                        "source": "2a02:390:feed:818a:3537:da2f:f17d:d678/64"
                }
        ],
        "dns-server": [
                "2a02:390:1::64:6e73",
                "2a02:390:2::64:6e73"
        ],
        "dns-search": [
                "idnet.com"
        ],
        "neighbors": [

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

                ],
                "ipv6-address": [

                ],
                "route": [

                ],
                "dns-server": [

                ],
                "dns-search": [

                ],
                "neighbors": [

                ]
        },
        "data": {
                "passthru": "001700202a020390000100000000000000646e732a020390000200000000000000646e730018000b0569646e657403636f6d00",
                "zone": "wan"
        }
}
root@OpenWrt:~#

1 Like