I recently received a TRB160. I have inserted a SIM card from a service provider that gives me both IPv4 and IPv6 address. I connect the ethernet port of TRB160 directly to the ethernet port of my laptop (running Fedora with NetworkManager).
The TRB160 connects to a 4G network, receives both IPv4 address and IPv6 address, “Internet Status” in the WebUI shows green Online for both “IPv4 status” and “IPv6” status. When I SSH into the router, I can ping both IPv4 hosts and IPv6 hosts on the internet (google.com) using ping and ping6.
The ethernet interface on the laptop also receives both IPv4 and IPv6 addresses from TRB160. I am currently using TRB160 in NAT mode, but for IPv6 it seems like it does not matter if I use NAT, passthrough or bridge mode.
Despite all these positive signs, I can not reach IPv6 hosts on the internet from the laptop. It seems to resolve IPv6 domains to addresses (or perhaps they are cached from before?), but I can not connect to any IPv6 hosts. Any kind of IPv6 connection just times out. There are no error messages like “unreachable”, etc. The connections are just left hanging (or times out).
Connecting to IPv4 hosts on the internet from the laptop works flawlessly. Both ping
, curl
and web browsing works well as long as access IPv4 hosts. So it is not a IPv4 problem, only a IPv6 problem. See for instance the following curl
output from IPv4:
$ curl -4 api4.ipify.org -v
* Host api4.ipify.org:80 was resolved.
* IPv6: (none)
* IPv4: 104.26.12.205, 104.26.13.205, 172.67.74.152
* Trying 104.26.12.205:80...
* Connected to api4.ipify.org (104.26.12.205) port 80
> GET / HTTP/1.1
> Host: api4.ipify.org
> User-Agent: curl/8.6.0
> Accept: */*
>
< HTTP/1.1 200 OK
...
I have poked around in both TRB160 and NetworkManager for countless hours now without getting any closer to a solution. I have tried various WAN modes, various RA/DHCPv6 modes, allowed all traffic through the firewall, and factory reset TRB160 a few times. So now I do not know how to continue the troubleshooting.
The laptop ethernet interface receives the following IPs from TRB160:
$ nmcli
enp1s0f0: connected to Wired connection 2
"Realtek RTL8111/8168/8211/8411"
ethernet (r8169), 9C:2D:CD:1A:E2:5D, hw, mtu 1500
ip4 default, ip6 default
inet4 192.168.2.231/24
route4 192.168.2.0/24 metric 100
route4 default via 192.168.2.1 metric 100
inet6 2a02:2121:2c9:354f:a349:a19c:4fe6:2e02/64
inet6 fdf4:3a37:d32:0:8ddf:15aa:f163:41f1/64
inet6 fe80::3d51:cda6:1498:bf20/64
route6 fe80::/64 metric 1024
route6 fdf4:3a37:d32::/64 metric 100
route6 2a02:2121:2c9:354f::/64 metric 100
route6 fdf4:3a37:d32::/48 via fe80::2297:27ff:fe0b:7d2 metric 100
route6 default via fe80::2297:27ff:fe0b:7d2 metric 20100
I can successfully ping the router and SSH to the router from the laptop through the following IPv6 addresses:
$ ping6 fe80::2297:27ff:fe0b:7d2%enp1s0f0
$ ssh root@fe80::2297:27ff:fe0b:7d2%enp1s0f0
$ ping6 2a02:2121:2c9:354f::1
$ ssh root@2a02:2121:2c9:354f::1
$ ssh root@fdf4:3a37:d32::1
I have also looked at ifstatus
inside TRB160. I see that mob1s1a1_6
receives the following addresses:
- IPv6 address:
2a02:2121:2c9:354f:a040:c9e7:b48f:96ae
- IPv6 prefix:
2a02:2121:2c9:354f::/64
- It has assigned the same IPv6 prefix to
lan
:2a02:2121:2c9:354f::/64
The lan
interface receives the following addresses:
- IPv6 prefix assignment:
2a02:2121:2c9:354f::/64
, with local address:2a02:2121:2c9:354f::1/64
. - IPv6 prefix assignment:
fdf4:3a37:d32::/64
, with local address:fdf4:3a37:d32::1/60
.
Running a simple curl
using IPv6 from the laptop currently looks like this (killed by me after 1 minute):
$ curl -6 api6.ipify.org -v
* Host api6.ipify.org:80 was resolved.
* IPv6: 2607:f2d8:1:3c::4
* IPv4: (none)
* Trying [2607:f2d8:1:3c::4]:80...
^C
$ curl -6 google.com -v
* Host google.com:80 was resolved.
* IPv6: 2a00:1450:400f:805::200e
* IPv4: (none)
* Trying [2a00:1450:400f:805::200e]:80...
^C
I have also tried two different APNs on the SIM. One APN that gives me a public IPv4 address (FWA) and another APN that gives med a NATed IPv4 address (for mobile). Both APNs give /64
IPv6 prefixes to TRB160.
TRB160 runs firmware TRB16_R_00.07.08.1
.
Does anyone have any tips on how I can continue this troubleshooting? I am completely stuck now, and I need IPv6 to work for the use I intend for it.