Здравствуйте, возникла необходимость поднять на 1 сервере(роутер) 2 провайдера для 2 подсетей, т.е. нужно 1 подсети использовать провайдер 1 , 2 подсети использовать провайдера 2, понимаю что нужно использовать iptables и iproute2
Прочитав
https://forum.ubuntu.ru/index.php?topic=60258.0 эту тему вышло такое правило в rt_tables
Допустим:
Провайдер №1 IP: 10.10.10.235
Провайдер №2 IP: 172.16.0.200
Локальная сеть №1 IP: 192.168.100.1
Локальная сеть №2 IP: 192.168.100.129
#! /bin/sh
ip route flush table P1
ip route flush table P2
ip route add 10.10.10.0/24 dev eth0 src 10.10.10.235 table P1
ip route add 192.168.100.0/25 dev eth2 src 192.168.100.1 table P1
ip route add 192.168.100.128/25 dev eth2:1 src 192.168.100.129 table P1
ip route add 127.0.0.0/8 dev lo table P1
ip route add default via 10.10.10.1 table P1
ip route add 172.16.0.0/24 dev eth1 src 172.16.0.200 table P2
ip route add 192.168.100.0/25 dev eth2 src 192.168.100.1 table P2
ip route add 192.168.100.128/25 dev eth2:1 src 192.168.100.129 table P2
ip route add 127.0.0.0/8 dev lo table P2
ip route add default via 172.16.0.1 table P2
ip route add 10.10.10.0/24 dev eth0 src 10.10.10.235
ip route add 172.16.0.0/24 dev eth1 src 172.16.0.200
ip route add default via 10.10.10.1
ip rule add from 10.10.10.235 table P1
ip rule add from 172.16.0.200 table P2
ip rule add fwmark 1 table P1
ip rule add fwmark 2 table P2
iptables -t mangle -A PREROUTING -s 192.168.100.0/25 -p tcp -j MARK --set-mark 1
iptables -t mangle -A PREROUTING -s 192.168.100.0/25 -p tcp -j RETURN
iptables -t mangle -A PREROUTING -s 192.168.100.128/25 -p tcp -j MARK --set-mark 2
iptables -t mangle -A PREROUTING -s 192.168.100.128/25 -p tcp -j RETURN
iptables -t mangle -A PREROUTING -s 192.168.100.0/25 -j MARK --set-mark 3
iptables -t mangle -A PREROUTING -s 192.168.100.128/25 -j MARK --set-mark 4
iptables -t nat -A POSTROUTING -s 192.168.100.0/25 -m mark --mark 1 -j SNAT --to-source 192.168.1.2
iptables -t nat -A POSTROUTING -s 192.168.100.128/25 -m mark --mark 2 -j SNAT --to-source 172.16.0.200
iptables -t nat -A POSTROUTING -s 192.168.100.0/25 -m mark --mark 3 -j SNAT --to-source 172.16.0.200
iptables -t nat -A POSTROUTING -s 192.168.100.128/25 -m mark --mark 4 -j SNAT --to-source 10.10.10.235
Отсюда вопрос, будет ли оно работать?