设备之间无 ping6,6lowpan 网络与树莓派

设备之间无 ping6,6lowpan 网络与树莓派

我正在尝试使用 Raspberry Pi 设备和嵌入式系统构建 6lowpan 网络。我在两个 Raspberry Pi 设备中都启用了 bluetooth_6lowpan(modprobe bluetooth_6lowpanecho 1 > /sys/kernel/debug/bluetooth/6lowpan_enable),其中一个安装了 radvd 并配置为

interface bt0
{
    AdvSendAdvert on;
    prefix 2001:db8::/64
    {
        AdvOnLink on;
        AdvAutonomous on;
        AdvRouterAddr on;
    };
};

我将其他 Raspberry Pi(Pi 4,内核版本 5.4.83-v7l+)和嵌入式设备连接到此路由器(Pi W 内核版本 5.4.79+)。我可以从两侧 ping 通设备和路由器,但无法通过路由器将一个 Raspberry Pi ping 通到另一个嵌入式设备。此外,我无法打开路由器和 Raspberry Pi 设备之间的套接字(我可以从嵌入式设备打开套接字,它可以发送数据但不能接收)。这似乎表明 Raspberry Pi 没有将任何数据包转发到 bt0 接口。 ip -6 route来自两个 Raspberry Pi 的信息如下:

设备

::1 dev lo proto kernel metric 256 pref medium
2001:db8::/64 dev bt0 proto kernel metric 256 expires 86263sec pref medium
fe80::/64 dev bt0 proto kernel metric 256 pref medium
default via fe80::b827:ebff:fe0e:8ee dev bt0 proto ra metric 1024 expires 1663sec hoplimit 64 pref medium

路由器

::1 dev lo proto kernel metric 256 pref medium
2001:db8::/64 dev bt0 proto kernel metric 256 pref medium
fe80::/64 dev wlan0 proto kernel metric 256 pref medium
fe80::/64 dev bt0 proto kernel metric 256 pref medium 

编辑1

与指南相比(https://jan.newmarch.name/IoT/LinuxJournal/Routing/,为什么我们需要一个 lowpan 接口!!),我发现默认路由(使用命令route -A inet6)的下一个希望 [::]/0 是路由器的地址,教程中是 fe80::1,但在我的例子中,所有下一个希望都是 [::]。这是问题吗?我该如何解决这个问题?

我尝试了以下

sudo ip r a 2001:db8::/64 dev bt0
sudo ip r a default via 2100:db8::1
RTNETLINK answers: No route to host

路由 -A inet6 的输出没有任何变化,

Kernel IPv6 routing table                                                                                               Destination                    Next Hop                   Flag Met Ref Use If                                           localhost/128                  [::]                       U    256 1     0 lo
2001:db8::/64                  [::]                       U    256 2     0 bt0
2001:db8::/64                  [::]                       U    1024 1     0 bt0
fe80::/64                      [::]                       U    256 2     0 wlan0
fe80::/64                      [::]                       U    256 2     0 bt0
[::]/0                         [::]                       !n   -1  1     0 lo
localhost/128                  [::]                       Un   0   3     0 lo
2001:db8::/128                 [::]                       Un   0   3     0 bt0
2001:db8::1/128                [::]                       Un   0   4     0 bt0
fe80::/128                     [::]                       Un   0   4     0 wlan0
fe80::/128                     [::]                       Un   0   3     0 bt0
fe80::98d4:d9d4:4e46:dc6a/128  [::]                       Un   0   3     0 wlan0
fe80::b827:ebff:fe0e:8ee/128   [::]                       Un   0   3     0 bt0
ff00::/8                       [::]                       U    256 4     0 wlan0
ff00::/8                       [::]                       U    256 2     0 bt0
[::]/0                         [::]                       !n   -1  1     0 lo

相关内容