Ipv6 is working in router but not devices

I can ping6 in router page and in ssh
I see ipv6 address being assigned to my laptop

Its a IPv6 ULA-Prefix (it is generated after first boot). You can check the address in "Global network options"

this one IPv6 ULA-Prefix:fdff:d12b:526b::/48

I've changed it with the ip from wan and now it works

so every time I have to do this

If you mean you can ping public IPv6 on OpenWrt; but LAN devices cannot, we'll need to see your config.

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
cat /etc/config/network
cat /etc/config/wireless
cat /etc/config/dhcp
ifstatus wan6

ubus call system board

{
	"kernel": "5.10.176",
	"hostname": "OpenWrt",
	"system": "ARMv7 Processor rev 5 (v7l)",
	"model": "Linksys MR8300 (Dallas)",
	"board_name": "linksys,mr8300",
	"rootfs_type": "squashfs",
	"release": {
		"distribution": "OpenWrt",
		"version": "22.03.5",
		"revision": "r20134-5f15225c1e",
		"target": "ipq40xx/generic",
		"description": "OpenWrt 22.03.5 r20134-5f15225c1e"
	}
}

cat /etc/config/network

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

config globals 'globals'
	option ula_prefix '2001:16a2/64'

config device
	option name 'br-lan'
	option type 'bridge'
	list ports 'eth0'

config interface 'lan'
	option device 'br-lan'
	option proto 'static'
	option netmask '255.255.255.0'
	option ip6assign '60'
	option ipaddr '192.168.0.1'
	option ip6table '2001:16a2:/64'

config interface 'wan'
	option device 'eth1'
	option proto 'dhcp'
	option type 'bridge'

config interface 'wan6'
	option device 'eth1'
	option proto 'dhcpv6'

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

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

config switch_vlan
	option device 'switch0'
	option vlan '2'
	option ports '5 0'

config interface 'wwan'
	option proto 'dhcp'

config interface 'TetheringWAN'
	option device 'usb0'
	option proto 'dhcp'

config interface 'TetheringWAN6'
	option proto 'dhcpv6'
	option device 'usb0'
	option reqaddress 'try'
	option reqprefix 'auto'

cat /etc/config/wireless

config wifi-device 'radio0'
	option type 'mac80211'
	option path 'soc/40000000.pci/pci0000:00/0000:00:00.0/0000:01:00.0'
	option band '5g'
	option htmode 'VHT80'
	option cell_density '0'
	option country 'SA'
	option channel 'auto'

config wifi-device 'radio1'
	option type 'mac80211'
	option path 'platform/soc/a000000.wifi'
	option channel '1'
	option band '2g'
	option htmode 'HT20'
	option cell_density '0'

config wifi-device 'radio2'
	option type 'mac80211'
	option path 'platform/soc/a800000.wifi'
	option channel '36'
	option band '5g'
	option htmode 'VHT80'
	option country 'SA'
	option cell_density '0'

config wifi-iface 'wifinet0'
	option device 'radio0'
	option mode 'ap'
	option encryption 'sae-mixed'
	option network 'lan'

config wifi-iface 'wifinet2'
	option device 'radio1'
	option mode 'ap'
	option encryption 'sae-mixed'
	option network 'lan'

config wifi-iface 'wifinet3'
	option device 'radio2'
	option mode 'ap'
	option encryption 'psk2'
	option network 'lan'

cat /etc/config/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 'relay'
	option dhcpv6 'relay'
	option ndp 'relay'

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

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

config dhcp 'TetheringWAN'
	option interface 'TetheringWAN'
	option ignore '1'

config dhcp 'TetheringWAN6'
	option interface 'TetheringWAN6'
	option ignore '1'
	option master '1'
	option ra 'relay'
	option dhcpv6 'relay'
	option ndp 'relay'

ifstatus wan6

{
	"up": false,
	"pending": false,
	"available": true,
	"autostart": true,
	"dynamic": false,
	"proto": "dhcpv6",
	"device": "eth1",
	"data": {
		
	}
}```
1 Like

You should not do that. It should be:

Remove that line.

It appears you're actually using TetheringWAN6 not wan6. Examine the ifstatus TetheringWAN6 instead. It is probably an LTE connection, which usually means the ISP gives you only a single /64 and have to use relay mode.
ip6assign is also not operative in a relay situation.

1 Like

ifstatus TetheringWAN6

{
	"up": true,
	"pending": false,
	"available": true,
	"autostart": true,
	"dynamic": false,
	"uptime": 117,
	"l3_device": "usb0",
	"proto": "dhcpv6",
	"device": "usb0",
	"metric": 0,
	"dns_metric": 0,
	"delegation": true,
	"ipv4-address": [
		
	],
	"ipv6-address": [
		{
			"address": "2001:16a2:c186:f8f1",
			"mask": 64,
			"preferred": 7154,
			"valid": 7154
		}
	],
	"ipv6-prefix": [
		
	],
	"ipv6-prefix-assignment": [
		
	],
	"route": [
		{
			"target": "2001:16a2:c186:f8f1::",
			"mask": 64,
			"nexthop": "::",
			"metric": 256,
			"valid": 7154,
			"source": "::/0"
		},
		{
			"target": "::",
			"mask": 0,
			"nexthop": "fe80::b0cc:bcff:fee9:8392",
			"metric": 384,
			"valid": 7154,
			"source": "2001:16a2:c186:/64"
		}
	],
	"dns-server": [
		"2001:16a2:c186:f8f1::41"
	],
	"dns-search": [
		
	],
	"neighbors": [
		
	],
	"inactive": {
		"ipv4-address": [
			
		],
		"ipv6-address": [
			
		],
		"route": [
			
		],
		"dns-server": [
			
		],
		"dns-search": [
			
		],
		"neighbors": [
			
		]
	},
	"data": {
		
	}
}```

Remove that also. This use case does not require ULAs. That is of course not a proper ULA in any case.

The wan status looks good. You have a single GUA /64 from upstream.

In relay configuration, the LAN interface only holds the usual LLA (fe80) IP. But lan clients will be advertised the IPv6 prefix that exists on the "master" (TetheringWAN6) and should have their OS pick up a GUA IP from the same /64. When each client first uses this IP, OpenWrt will install a /128 route to the client via lan. So ip -6 route show should show a single IP route for each client, and you should be able to ping the clients from the router on their GUA IPv6.

1 Like

Now everything works :ok_hand: as expected
Thank you