У меня есть сервер за 2 доступа в Интернет. IP это:

-Сервер: 192.168.0.1

-ИСП 1: 192.168.0.253

-ИСП 2: 192.168.0.254

Мне бы хотелось, чтобы пакеты, поступающие от ISP 1, получали ответ, используя ISP 1 в качестве шлюза, а пакеты, поступающие от ISP 1, получали ответ, используя ISP 2.

Кто-нибудь знает, как я мог это сделать?

Большое спасибо заранее за вашу помощь.

Proc.

1 ответ1

0

Если у вас есть

-ISP 1 : 192.168.1.253 eth0 - default gateway
-ISP 2 : 192.168.0.254 eth1

Следующие команды создают альтернативную таблицу маршрутизации через eth1 для пакетов с отметкой 1

ip rule add fwmark 1 table 1
ip route add 127.0.0.0/0 table 1 dev lo
ip route add 0.0.0.0/0 table 1 dev eth1

Другая половина задания распознает пакеты, которые должны получить метку 1, замените 192.168.0.254 на адрес интерфейса не-default-route:

iptables -t mangle -A OUTPUT -m conntrack --ctorigdst 192.168.0.254 -j MARK --set-mark 1

Следующее не требует какой-либо маркировки пакетов с помощью ipfilter. Исходящие (ответные) пакеты будут иметь IP-адрес, который первоначально использовался для подключения ко 2-му интерфейсу, в качестве адреса источника (от) исходящего пакета.

echo 200 isp2 >> /etc/iproute2/rt_tables
ip rule add from 192.168.0.254 dev eth1 table isp2
ip route add default via <gateway_IP> dev eth1 table isp2

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .