Две сетевых карты в одной подсети, 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.
В чем может быть причина такого поведения?
нужно промаркировать установленные соединения через второго провайдера в 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