我在配置 USB 调制解调器路由以在 Raspberry Pi 4 中定义它们各自的网关时遇到问题。
我有多个相同的 USB 调制解调器,无法更改网关 IP,因此它们都具有相同的 IP 范围和各自的网关:
usb0 > 192.168.100.10 > gateway 192.168.100.1
usb1 > 192.168.100.11 > gateway 192.168.100.1
usb2 > 192.168.100.12 > gateway 192.168.100.1
...
我需要让他们每个人都有自己的路由,他们隔离地指向自己的网关,这样我就可以在运行时选择他们中的每一个curl --interface usbX
。
单独地,以下路由配置有效:
ip route del 192.168.100.0/32 dev $INTERFACE table $INTERFACE
ip route del default table $INTERFACE
ip route add 192.168.100.0/32 dev $INTERFACE table $INTERFACE
ip route add default via 192.168.100.1 dev $INTERFACE table $INTERFACE
ip rule del from 192.168.100.10/32 table $INTERFACE
ip rule del to 192.168.100.10/32 table $INTERFACE
ip rule add from 192.168.100.10/32 table $INTERFACE
ip rule add to 192.168.100.10/32 table $INTERFACE
但是,我如何在知道存在这种网关冲突的情况下使用多个设备?也就是说,各个调制解调器的路由如何隔离地指向各自的网关,而没有一个调制解调器与另一个调制解调器相互干扰?
尝试运行这些定义其各自 IP 的命令时,将返回以下错误:
Error: argument "usbusb0" is wrong: "table" value is invalid
Error: argument "usbusb0" is wrong: "table" value is invalid
Error: argument "usbusb0" is wrong: "table" value is invalid
Error: argument "usbusb0" is wrong: "table" value is invalid
Error: argument "usbusb0" is wrong: invalid table ID
Error: argument "usbusb0" is wrong: invalid table ID
Error: argument "usbusb0" is wrong: invalid table ID
Error: argument "usbusb0" is wrong: invalid table ID
Error: argument "usbusb1" is wrong: "table" value is invalid
Error: argument "usbusb1" is wrong: "table" value is invalid
Error: argument "usbusb1" is wrong: "table" value is invalid
Error: argument "usbusb1" is wrong: "table" value is invalid
Error: argument "usbusb1" is wrong: invalid table ID
Error: argument "usbusb1" is wrong: invalid table ID
Error: argument "usbusb1" is wrong: invalid table ID
Error: argument "usbusb1" is wrong: invalid table ID