How do I find my Thread Border Router’s IPv6 address? I noticed one of IPv6 addresses looks the same as my thread PAN ID, but my thread devices have an IPv6 address for a different ULA network. I also set up my home LAN to use yet a different ULA network. I’m unable to ping my thread devices directly from a device on my WiFi network.
The TBR is going to have multiple IPv6 addresses, particularly on the Thread radio side (I’ll call it the “mesh”). The TBR assigns several prefixes and addresses to devices on the mesh side (but only one is a ULA for the mesh). The TBR advertises this mesh-ULA route on the “Infrastructure” side (the side connecting the TBR to the LAN) so that devices can install this route as a way to reach the mesh-ULA.
From the device you are pinging from, check to see if it has a route to an IPv6 prefix that matches the prefix your device is uses.
Since a TBR is just an IP router (IPv6 to be specific), it will have at few IP address on each subnet (the LAN subnet and the Thread subnet).
You can use any mDNS discovery/browser app (I use “Flame” on iOS/macOS) to get the addresses on the LAN subnet, but not the Thread subnet. Look for the information at _meshcop._udp
service.
I don’t know of a “standard” way to get the TBR addresses of the Thread subnet. If your border router is OTBR software-based, then you can open its web dashboard at http://addressorhostname:8080/ and click on “Status”. I’ve used both Apple and Eero TBRs and neither have a UI that displays their Thread-side IP addresses.
Despite having routes to the Thread subnet, HA inexplicably refuses to display that information. You can find the subnet of your Thread mesh (first half of the IP address) by running the ip -6 route
command on your HA server. Look for a route to fdxx:/64
subnet (where the xx are two more hex numbers) with a wpan0
or nexthop
entry that matches one of your TBR addresses shown in the mDNS _meshcop._udp
info. In the example below I have two Thread meshes, one from a local OTBR server instance (fd53:/64) and one on an Apple HomePod (fd97:/64);
peter@felix:$ ip -6 route
::1 dev lo proto kernel metric 256 pref medium
fd53:b6c5:e1ec:abcd::/64 dev wpan0 proto kernel metric 256 pref medium
fd97:c4e1:abcd::/64 proto ra metric 1024 expires 1685sec pref medium
nexthop via fe80::c64:4050:abcd:abcd dev vlan.1 weight 1