LINUX.ORG.RU
ФорумAdmin

Проблемы с iproute


0

0

Сначала предыстория. Есть два канала в инет, оба через киски. Есть два сервера, на одном (назовем его serv1) держатся домены и почтовый сервер. Он работает через канал gate 1. Второй сервер serv2 используется только как прокси сервер для походов в интрнет из локальной сети. Работает через второй канал gate2. Хочется сделать все это на одном сервере. Так чтобы по-прежнему, почта ходила по одному каналу, а www по другому. Поставил три сетевые карты, настроил интерфейсы. Как только поднимаю eth2, все сразу начинает ходить только через этот канал. Как не маркировал пакеты, не прописывал таблицы (типа: ip rule add from 192.168.1.0/24 table my ip route add default via (gate2) dev eth1 table my) ничего не меняется. Использует только один канал, gate1. И в таблице роутинга не появляется новое правило для этой таблицы, все так же показывает: au:~# ip route ls (net2) dev eth1 proto kernel scope link src (serv2) (net1) dev eth2 proto kernel scope link src (serv1) 192.168.1.0/24 dev eth0 proto kernel scope link src 192.168.1.230 default via (gate1) dev eth2 default via (gate2) dev eth1

Help!!! Как надо все настроить, что прописать для iptables, чтоб и инет ходил по одному каналу, и почта по другому ?

anonymous

сорри, так удобнее читать.

Сначала предыстория. Есть два канала в инет, оба через киски. Есть два сервера, на одном (назовем его serv1) держатся домены и почтовый сервер. Он работает через канал gate 1.

Второй сервер serv2 используется только как прокси сервер для походов в интрнет из локальной сети. Работает через второй канал gate2.

Хочется сделать все это на одном сервере. Так чтобы по-прежнему, почта ходила по одному каналу, а www по другому. Поставил три сетевые карты, настроил интерфейсы. Как только поднимаю eth2, все сразу начинает ходить только через этот канал. Как не маркировал пакеты, не прописывал таблицы (типа:

ip rule add from 192.168.1.0/24 table my

ip route add default via (gate2) dev eth1 table my) ничего не меняется. Использует только один канал, gate1. И в таблице роутинга не появляется новое правило для этой таблицы, все так же показывает:

au:~# ip route ls

(net2) dev eth1 proto kernel scope link src (serv2)

(net1) dev eth2 proto kernel scope link src (serv1)

192.168.1.0/24 dev eth0 proto kernel scope link src 192.168.1.230

default via (gate1) dev eth2

default via (gate2) dev eth1

Help!!! Как надо все настроить, что прописать для iptables, чтоб и инет ходил по одному каналу, и почта по другому ?

anonymous
()
Ответ на: сорри, так удобнее читать. от anonymous

В /etc/iproute2/rt_tables таблица my прописана?

Смотри в сторону ip rule add fwmark.
Там роутинг делается по маркам, которые проставляются в iptables (-j MARK).

Еще можно попробовать в таблицу my прописать все локальные интерфейсы, аналогично таблице main, а не только один default.

Gelin
()
Ответ на: сорри, так удобнее читать. от anonymous

Малость разобрался, начало ходить. Одного так и не просек. Пока поднят один канал, все ка и должно быть:

(net2) dev eth1 proto kernel scope link src (serv2)

192.168.1.0/24 dev eth0 proto kernel scope link src 192.168.1.230

default via (gate2) dev eth1

Но как только поднимаю второй канал ifup eth2, так у меня появляется второй дефолтный канал:

default via (gate1) dev eth2

default via (gate2) dev eth1

И весь непомеченный траффик начинает идти по нему ! Зачем это делается ? Приходится вручную давать команду ip route del default (gate1) dev eth2 и тогда все начинает ходить по нужному руслу.

anonymous
()
Ответ на: комментарий от anonymous

Какой *nix? В каждом по разному. См. стартовые скрипты. Вообще, когда роутинг хитро настроен, лучше интерфейсами не шевелить.

Gelin
()
Ответ на: комментарий от Gelin

Debian, ядро 2.4.22. Пробовал интерфейсы при загрузке сразу поднимать, без роутинга. Все равно сразу появляется два дефолтных пути. Использует естественно тот, который выше в списке стоит.

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.