У меня есть небольшой встроенный компьютер, на котором запущен busybox. Он имеет проводной интерфейс eth0, который подключен к проводному интерфейсу встроенного wlan-модуля с помощью кабеля. Также есть модуль 3G на ppp0.
Мне нужно направить трафик с 192.168.2.1 (localhost) до 192.168.2.10 (wlan-module) через eth0, а все остальное должно пройти через ppp0.
Текущие настройки:
# ip rule
0: from all lookup local
1000: from 84.231.196.14 lookup mobile
32766: from all lookup main
32767: from all lookup default
# ip route show table mobile
default via 192.168.254.254 dev ppp0
# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 192.168.2.10 0.0.0.0 UG 0 0 0 eth0
192.168.2.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
192.168.254.254 0.0.0.0 255.255.255.255 UH 0 0 0 ppp0
Это работает частично. Я могу подключиться к 192.168.2.10 из 192.168.2.1, и я могу подключиться к этому компьютеру снаружи через ppp0, но я не могу устанавливать какие-либо подключения с этого компьютера снаружи, используя ppp0.
Я пытался добавить
# ip rule add from all lookup mobile
# ip route flush table cache
# ip rule
0: from all lookup local
999: from all lookup mobile
1000: from 84.231.196.16 lookup mobile
32766: from all lookup main
32767: from all lookup default
Это, конечно, будет направлять весь трафик через ppp0, но я теряю соединение с 192.168.2.10
Я пробовал несколько разных правил и маршрутов, чтобы сделать эту работу, но мне не повезло с этим. Какое правило / маршрут я должен сделать?
- IP-правило, IP-маршрут и маршрут доступны