Две сетевых карты в одной подсети, lartc, iproute2, 2 провайдера. Как настроить?

Добрый вечер, уважаемые коллеги. Прошу Вашей помощи с интересным вопросом.
Есть роутер - он в локалку смотрит двумя физическими сетевыми картами, которые воткнуты в единый свич (в соседние порты).
ОС: Debian 8.
Карточкам я назначил айпишники 192.168.0.1 (eth1) и 192.168.0.200 (eth2)
Также в этот роутер подключены два провайдера.
При помощи iptables я включил masquerade из подсети 192.168.0.0/24 во все стороны.
соответственно если клиент на своей стороне ставит в качестве шлюза IP адрес любой из этих карточек (eth1,2) он получает доступ в интернет через default gw на роутере.
Задача была поставлена - чтобы при установке на рабочей станции клиента в качестве шлюза 192.168.0.200 интернет шел через второго провайдера.

было решено при помощи трех строчек в iproute2

echo 1 2PR >> /etc/iproute2/rt_tables
ip rule add iif eth2 lookup 2PR
ip route add default via 10.0.0.1 table 2PR

где 10.0.0.1 - соответственно шлюз второго провайдера
теперь когда юзер ставит в качестве шлюза 192.168.0.200 трафик ходит через второго прова (проверял на 2ip.ru).

но! есть два интересных затыка, с которыми я не могу разобраться.
1) при диагностике маршрута через traceroute наблюдаю что шлюз 192.168.0.1. даже если на клиенте в ipv4-конфигурации прописан 192.168.0.200. Как это происходит?
2) Поднял на обеих интерфейсах DHCP сервер, который выдает в качестве шлюза первого провайдера (eth 1 , 192.168.0.1), но при подключении например мобильного телефона через wifi (есть еще точка доступа с 4 LAN портами) както трафик бегает то через первого то через второго провайдера, что тоже ооочень странно.
3) Антивирусы у юзеров матеряться что в локалке 2 шлюза, да еще и с поднятым DHCP.
В чем может быть причина такого поведения?
  • Вопрос задан
  • 1572 просмотра
Пригласить эксперта
Ответы на вопрос 2
нужно промаркировать установленные соединения через второго провайдера в iptables mangle
в ip rule отлавливать эти метки, заворачивая трафик в table 2PR

ip ro sh ta 2PR
выхлоп должен содержать маршрут в 192.168.0.0/24 только одной строкой
192.168.0.0/24 dev eth0 proto kernel scope link src 192.168.0.200 table 2PR
Ответ написан
Комментировать
vvpoloskin
@vvpoloskin
Инженер связи
Схема изначально кривая. Настраивайте либо несколько vrf, либо source based routing. Ну или все же поделите на две сети.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы