I am picking up a project I worked on last year with setting up a 6lowpan border router on a Linux box to talk to RIOT nodes.
I had this stuff working last year but now I’m stuck where I cannot ping or communicate with global scope addresses. For reference this is my post from last year:
On my Linux box I have radvd configured just as I did previously. The RIOT nodes (2022.04) are compiled with -DCONFIG_GNRC_IPV6_NIB_SLAAC=1. I see a global scope address marked as valid.
I can ping the LL address from each side just fine. On the Linux box I can ping the multicast group and get a response from the RIOT node:
ping6 ff02::1%lowpan0
64 bytes from fe80::24db:56ee:8137:dc92: seq=0 ttl=64 time=1.050 ms
64 bytes from fe80::ec0a:363b:7506:d64d: seq=0 ttl=255 time=12.710 ms (DUP!)
64 bytes from fe80::24db:56ee:8137:dc92: seq=1 ttl=64 time=0.684 ms
64 bytes from fe80::ec0a:363b:7506:d64d: seq=1 ttl=255 time=11.751 ms (DUP!)
But, pinging the node directly doesn’t work:
ping6 fde1:cb6f:732a:8706:ec0a:363b:7506:d64d
PING fde1:cb6f:732a:8706:ec0a:363b:7506:d64d (fde1:cb6f:732a:8706:ec0a:363b:7506:d64d): 56 data bytes
ping6: sendto: Network is unreachable
ip -6 neigh show
fe80::24db:56ee:8137:dc92 dev lowpan0 lladdr 26:db:56:ee:81:37:dc:92 router STALE
fe80::ec0a:363b:7506:d64d dev eth0 FAILED
fe80::ec0a:363b:7506:d64d dev lowpan0 lladdr ee:0a:36:3b:75:06:d6:4d router REACHABLE
fe80::bb52:a311:e9eb:d68f dev eth0 lladdr 54:e1:ad:20:26:65 STALE
fde1:cb6f:732a:8706:ec0a:363b:7506:d64d dev lowpan0 lladdr ee:0a:36:3b:75:06:d6:4d router STALE
I also note that my global scope group is not shown in the output of route -A inet6. It only shows the LL scope prefix fe80::/64.
Any idea what is going on here and why this worked last year but not now? I am on a slightly different kernel, and I’m sure radvd has been upreved.
Matt via RIOT notifications@riot-os.org wrote:
> (fde1:cb6f:732a:8706:ec0a:363b:7506:d64d): 56 data bytes ping6: sendto:
> Network is unreachable
> ip -6 neigh show fe80::24db:56ee:8137:dc92 dev lowpan0 lladdr
> 26:db:56:ee:81:37:dc:92 router STALE fe80::ec0a:363b:7506:d64d dev eth0
> FAILED fe80::ec0a:363b:7506:d64d dev lowpan0 lladdr
> ee:0a:36:3b:75:06:d6:4d router REACHABLE fe80::bb52:a311:e9eb:d68f dev
> eth0 lladdr 54:e1:ad:20:26:65 STALE
> fde1:cb6f:732a:8706:ec0a:363b:7506:d64d dev lowpan0 lladdr
> ee:0a:36:3b:75:06:d6:4d router STALE
Can you do “ip -6 route show” as well?
It looks like either your device has hanged IPs, or the lowpan0 bridge driver
just isn’t working.
> I also note that my global scope group is not shown in the output of
> route -A inet6. It only shows the LL scope prefix fe80::/64.
Maybe your desktop lost it’s IPv6, or your IPv6 is broken, but you should
still be able to ping6 your fde1: ULA.
> Any idea what is going on here and why this worked last year but not
> now? I am on a slightly different kernel, and I'm sure radvd has been
> upreved.
Can you do “ip -6 route show” as well? It looks like either your device has hanged IPs, or the lowpan0 bridge driver just isn’t working.
What do you mean by hanged IP?
ip -6 route show
::1 dev lo proto kernel metric 256 pref medium
fde1:cb6f:732a:8706::1 dev lowpan0 proto kernel metric 256 pref medium
fe80::/64 dev eth0 proto kernel metric 256 pref medium
fe80::/64 dev lowpan0 proto kernel metric 256 pref medium
Matt via RIOT notifications@riot-os.org wrote:
>> Can you do “ip -6 route show” as well? It looks like either your
>> device has hanged IPs, or the lowpan0 bridge driver just isn’t
>> working.