On 25/05/18 15:13, 'Yakun Xu' via openthread-users wrote:
> Sorry for the late. /ff02::/16/ is link local scope, it's reasonable
> only direct neighbors receive the NTP traffic.I think we should use
> realm local scope multicast address(i.e. /ff03::/16/).
Yeah, I guess this is a misunderstanding on my part… I was thinking the
mesh network behaved (from the IP perspective) like a typical L2 network
(much as IEEE 802.11 does), thus all nodes would see ff02::/16 messages.
> And I don't think
> we should add route in wpantund. Could you please share more details
> about the network topology, as well as the addresses you are using for
> testing?
Turns out, it was just me getting confused about `ping6` refusing to
ping those addresses… if I do:
$ ping6 -I wpan0 ff03::2
it works. As for NTP; it again was down to me misunderstanding the
configuration file format… I had
broadcast ff02::101 ttl 1
broadcast ff03::101 ttl 1
thinking NTP would send to both… it ignored the latter option. If I
remove the ff02::101 address from the configuration; it sends to both,
and so all nodes receive the time.
It's a bit difficult to test this fully, because all the nodes can hear
each-other, they sort of like to skip the middle man and go direct.
I'm still not certain what the impact of the TTL field is, whether hops
between Thread routers are considered or whether this field only
decrements when it passes through a border router.
Ordinarily on a standard TCP/IP network, it would decrement as it passes
through each L3 router between each subnet. Here though, the entire
mesh uses the one subnet, so while it is passing through "routers", they
aren't behaving in the usual L3 router sense, they're more like L2 switches.
Would a TTL of 1 still traverse multiple Thread routers on the mesh or
would it behave like the link-local case before, only going to immediate
neighbours?