问题
我用来ip route
为网络设置路由表。一切都运行良好,但在很短的时间(几分钟)后我失去了一些连接。当我查看我的 时ip route
,我的更改丢失了。如果我失去与另一个网络的连接或重新启动计算机,它们也会丢失。
细节
我正在使用多个 Raspberry Pi Zero (RPiZ 1,2,3,4) 插入一个插入交换机的 Raspberry Pi 4 (RPi4 A)。另一个 RPi4 B 也插入路由器。
RPi4 A 连接到
- 通过 eth0 在 192.168.8.111 进行切换
- RPiZ1 通过 USB1 位于 10.0.11.1
- RPiZ2 通过 USB1 位于 10.0.12.1
- RPiZ3 通过 USB1 位于 10.0.13.1
- RPiZ4 通过 USB1 位于 10.0.14.1
RPiZ1 通过 USB0 连接到 RPi4A,地址为 10.0.11.2
RPiZ2 通过 USB0 连接到 RPi4A,地址为 10.0.12.2
RPiZ3 通过 USB0 连接到 RPi4A,地址为 10.0.13.2
RPiZ4 通过 USB0 连接到 RPi4A,地址为 10.0.14.2
RPi4B 通过 eth0 连接到交换机,地址为 192.168.8.199
目标是将 RPi4B 与所有 4 个 RPiZ 连接。
RPi4B 通过 RPi4A 路由数据包
ip route add 10.0.11.0/24 via 192.168.8.111 dev eth0
ip route add 10.0.12.0/24 via 192.168.8.111 dev eth0
ip route add 10.0.13.0/24 via 192.168.8.111 dev eth0
ip route add 10.0.14.0/24 via 192.168.8.111 dev eth0
每个 RPiZ 通过 RPi4A 路由数据包
ip route add 192.168.8.0/24 via 10.0.11.1 dev usb0
ip route add 192.168.8.0/24 via 10.0.12.1 dev usb0
ip route add 192.168.8.0/24 via 10.0.13.1 dev usb0
ip route add 192.168.8.0/24 via 10.0.14.1 dev usb0
RPi4A 已打开 IP 转发并正确路由数据包。
ip route add 10.0.11.0/24 dev usb1
ip route add 10.0.12.0/24 dev usb2
ip route add 10.0.13.0/24 dev usb3
ip route add 10.0.14.0/24 dev usb4
ip route add 192.168.8.0/24 dev eth0
此外,它们都能够通过 wlan0 连接到我手机的热点 172.20.10.0/24,并且默认情况下互联网流量会流向那里,尽管我不确定设置是否完全正确。我一般不碰它。有时我必须删除 eth0 作为 RPi4 的默认值才能使其正常工作。
所有这些都在一段时间内运作良好,然后突然崩溃。当我重新连接时,我发现我添加的规则丢失了,尤其是 RPiZ 上的规则。有时候,似乎没有理由。我知道如果我断开或连接我的热点,规则就会被打破或消失。它们也会在重新启动时消失。
任何人都可以帮助我使这些永久的网络更改、重新启动和奇怪的损失吗?该网络应该在远程位置使用间歇性 WiFi 和电源运行,因此我需要使其变得强大。
提前致谢!拉斯
答案1
关于重新启动,您需要将路由添加为持久路由。当您在终端中执行该命令时,该命令将在下次启动时消失或者界面发生问题。这里有一个关联将路由配置为持久。您可以先尝试配置它,然后执行此命令
sudo service dhcpcd restart
或重新启动以检查配置是否正常工作