-
I have setup a mesh network made of Linux hosts running ot-daemon (deliberately not running a border router, to keep things simple). I notice that in this configuration, when I ping ML-EID addresses from ot-cmd, it works:
However when the addresses are pinged from linux, it doesn't work, unless I force-bind the source IPs:
In the same fashion there is a way to get bidirectional UDP traffic to work, but I was wondering if there was a possible or recommended way to avoid the contortions. |
Beta Was this translation helpful? Give feedback.
Replies: 3 comments 1 reply
-
The problem is that Mesh Local addresses (including ML-EID, ALOC and RLOC) of the Thread interface (i.e.
But since you are not running as a border router, there is no routes in the Thread netdata that can be used to direct the ping reply back to your linux host. To solve this issue, you can rebuild
There is actually another issue that you can only ping with ML-EID - ALOC and RLOC doesn't work, even they are specified as the source address. This should be resolved by #8203 |
Beta Was this translation helpful? Give feedback.
-
Hi @wgtdkp, Thanks for your explanation, could you elaborate why Mesh Local addresses are set to We are building an IoT box who has Internet access but with isolated Thread network, so I disabled |
Beta Was this translation helpful? Give feedback.
-
You mean the case where border router has 2 network interfaces, one for local Thread devices, another for Internet access ?
Once border router is enabled it will announce BR ULA prefix through the backbone network, I don't want any information leak into the backbone. In addition in our case backbone network is not always the same, it switches between WiFi Client/AP, wired, 4G etc, which makes firewall rule update complicated. For now I'm using this workaround :
|
Beta Was this translation helpful? Give feedback.
The problem is that Mesh Local addresses (including ML-EID, ALOC and RLOC) of the Thread interface (i.e.
wpan0
) are set todeprecated
which makes the kernel not to choose those as source address for your traffics initiated from linux host. If you take a look in ot-daemon logs, you can see the ULA (or GUA) of your Wi-Fi or Ethernet interface may be selected as the source address of your ping request.