eth0: 192.168.0.250 - локалка, в которой есть шлюз 192.168.0.1
eth1: 62.5.246.190 - внешний интернет с шлюзом (маршрут по умолчанию) 62.5.246.189
Все в локалке выходят в инет через этот сервер (нат, форвардинг), а 192.168.0.1 - это старый резервный, на него вручную шлюз переключают при недоступности другого.
На этом компе висит openvpn-сервер (tun0, 10.7.0.1) Вот я и решил поиграться (потренероваться).
Захотел осуществить такую простую схему: подключаюсь по впн и по http в интернет выхожу через 192.168.0.1 (сейчас через 62.5.246.189).
Код: Выделить всё
iptables -t mangle -A PREROUTING -i tun0 -p tcp -m tcp --dport 80 -j MARK --set-xmark 0x2
iptables -t nat -A POSTROUTING -o eth0 -p tcp -m tcp --dport 80 -j SNAT --to-source 192.168.0.250
echo 200 John >> /etc/iproute2/rt_tables
ip ru add fwmark 2 table John
ip ro ad default via 192.168.0.1 dev eth0 table John
ip ro flush cacheВ моих правилах iptables кол-во пакетов увеличивается при попытках подключений, значит не в этом дело.
Если сделать
Код: Выделить всё
ip ru del fwmark 2
ip ru add from 10.7.0.6 table JohnДелал по ссылке