URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 32498
[ Назад ]

Исходное сообщение
"4 eth + iptables"

Отправлено Василий Свиридов , 21-Июл-03 07:39 
Вобщем такая ситуация, имеется 4 сетевые карты.

2 из них смотрят наружу, и каждая имеет свой нормальный IP.
2 оставшиеся подключены в WAN порты 2 раутеров. На этих раутерах висят серверы.

Вобщем на этой коробке нужно настроить IPTables таким образом, чтобы если запрос приходит eth0, то перебрасывать его на eth2, а если с eth1, то на eth3

Имеются в виду конкретные порты (80,25,etc).

И наоборот, весь трафик из подсети висящей на eth2 уходил в интернет с eth0, а весь с подсети eth3 - c eth1.

Помогите пожалуйста разобраться, т.к. пока карт было 2 всё было намного проще и работало...

Дистр. - Red Hat 9 (Minimal Install)


Содержание

Сообщения в этом обсуждении
"policy routing"
Отправлено Sacred , 22-Июл-03 02:31 
настрой с помощью policy routing


"policy routing"
Отправлено C , 22-Июл-03 06:03 
>настрой с помощью policy routing

Я пока настроил используя
iptables -t nat -A POSTROUTING -p tcp -m tcp -m state --state NEW,RELATED,ESTABLISED --dport 80 -d xxx.xxx.xxx.xxx -j DNAT --to-destination zzz.zzz.zzz.zzz:80

Просто теперь оно изнутри сети не вполне корректно работает...


"policy routing"
Отправлено Василий Свиридов , 22-Июл-03 06:03 
>настрой с помощью policy routing

Я пока настроил используя
iptables -t nat -A POSTROUTING -p tcp -m tcp -m state --state NEW,RELATED,ESTABLISED --dport 80 -d xxx.xxx.xxx.xxx -j DNAT --to-destination zzz.zzz.zzz.zzz:80

Просто теперь оно изнутри сети не вполне корректно работает...


"policy routing"
Отправлено Mikhail , 22-Июл-03 09:38 
Правила более точно настраивай. В данном случае можно добавить '-i $interface'
И еще: лучше настраивать прямую трансляцию (т.е. --state NEW), а обратно - просто пропускать, ядро само должно разобраться, куда что транслировать.
Пожалуй, лучше все-таки это делать через iproute2.
Конечно, без знания тонкостей топологии больше ничего не посоветуешь...

"policy routing"
Отправлено Василий Свиридов , 22-Июл-03 21:00 
bv>Правила более точно настраивай. В данном случае можно добавить '-i $interface'
>И еще: лучше настраивать прямую трансляцию (т.е. --state NEW), а обратно -
>просто пропускать, ядро само должно разобраться, куда что транслировать.
>Пожалуй, лучше все-таки это делать через iproute2.
>Конечно, без знания тонкостей топологии больше ничего не посоветуешь...

Хм, ясно.
Кстати, изначально было именно через -i ethX, но это не работало...

А топология такая

<pre>

ADSL----->|HUB|>0---|Border|--2--|Router 1|--->>>Hosts
                     |___|>1---|_____|---\
                                                          3
                                                           \--|Router 2|--->>>Hosts

eth0 - DHCP 0
eth1 - DHCP 1
eth2 - 192.168.1.1
eth3 - 192.168.2.1

Router 1 WAN - 192.168.1.254
Router 1 LAN - 192.168.10.0

Router 2 WAN - 192.168.2.254
Router 2 LAN - 192.168.20.0

</pre>

т.е.

Из модема в хаб, из хаба в 2 сетевые карты (eth0,1) на Border (Linux Router/Firewall). Из border с 2 сетевых карт (eth2,3) на 2 раутера (Linksys, 1 из них Wireless Access Point+4 Port Router)

из раутеров к хостам. На одном раутере висят серверы, а на другом - рабочие станции...

На машине 192.168.10.50 висит W2003 сервер + Exchange
На 192.168.20.40 висит линух с QMail+Apache.

Оба обслуживают разные домены...