Политика на основе маршрутизации в Linux на основе адреса назначения.
Я борюсь со сценарием. Предположим, у нас есть две системы в одной подсети A:- 192.168.1.5 и B:-192.168.1.6, где B дополнительно подключен к C:-172.22.1.5 через Openswan. B может пинговать C, но A не может пинговать C.
Я хочу добавить маршрут в A, чтобы он направлял весь трафик, предназначенный для 172.22.1.5, в B.
я использовал route add -net 172.22.1.0 netmask 255.255.255.0 gw 192.168.1.6 dev eth0
Но это не работает. Проверено с tcpdump и пакеты не собираются в B.
Есть идеи, как это можно сделать?
1 ответ
Для достижения вашей цели оба конца должны иметь соответствующие маршруты к другому концу.
Итак, в вашем случае:
route add -net 172.22.1.0/24 gw 192.168.1.6 dev eth0
в принимающей А.
route add 192.168.1.5 gw 172.22.1.N dev X
в хосте C. Здесь N
адрес хоста B в подсети VPN, и X
устройство, используемое для подсети VPN на хосте C.