LINUX.ORG.RU
ФорумAdmin

iptables multiple interfaces

 


0

1

Добрейшего всем времени суток. В линуксе новичок, поэтому обращаюсь к гуру за помощью. Имеется шлюз на базе Debian. Имеем внешнюю подсеть с 4-мя ip-шниками. На шлюзе установлены 5 физических сетевых карт. одна из них смотрит в локалку, eth0 - local. 4 другие имеют внешние адреса. eth1 - 212.3.x.56, eth2 - 212.3.x.57, eth3 - 212.3.x.58, eth4 - 212.3.x.59. Вопрос в следующем. Как правилами iptables, используя multiple развести сетку. Поясню. Заходим на портал по имени portal.company.com - используется eth1. Заходим на почту mail.company.com - используется eth2. Используем еще один сервис - service.company.com - используется eth3.

а в dns нельзя прописать portal.company.com на 212.3.x.56 и т.д. ?

Зачем для этого iptables ?

vel ★★★★★ ()

Если portal.company.com и прочие порталы ваши, для маршрутизации пакетов нужно использовать ip route.

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

В DNS записи прописаны. На nic прописаны записи: portal.company.com - 212.3.x.56 mail.company.com - 212.3.x.57 Имеется два сервиса, почта и портал. Оба используют ssl. При подключении на портал по адресу https://portal.company.com обратный адрес должен соответствовать 212.3.x.56, при использовании почты извне, htips://mail.company.com обратный адрес должен соответствовать 212.3.x.57

На каждый интерфейс присвоены свои внешние ip-адреса: # This file describes the network interfaces available on your system # and how to activate them. For more information, see interfaces(5).

source /etc/network/interfaces.d/*

# The loopback network interface auto lo iface lo inet loopback

# The primary network interface auto eth0 iface eth0 inet static address 192.168.120.250 netmask 255.255.255.0

auto eth1 iface eth1 inet static address 212.3.x.56 netmask 255.255.255.248 gateway 212.3.x.17

auto eth2 iface eth2 inet static address 212.3.x.57 netmask 255.255.255.248

auto eth3 iface eth3 inet static address 212.3.x.58 netmask 255.255.255.248

auto eth4 iface eth4 inet static address 212.3.x.59 netmask 255.255.255.248

Список правил в iptables:

#Портал 443 eth1 iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 443 -j DNAT --to 192.168.120.50 iptables -A INPUT -i eth1 -p tcp --dport 443 -j ACCEPT iptables -A FORWARD -p tcp -d 192.168.120.50 --dport 443 -j ACCEPT iptables -A FORWARD -p tcp -s 192.168.120.50 -m state --state ESTABLISHED,RELATED --sport 443 -j ACCEPT iptables -A OUTPUT -p tcp --sport 443 -j ACCEPT

#Почта 443 eth2 iptables -t nat -A PREROUTING -i eth2 -p tcp --dport 443 -j DNAT --to 192.168.120.60 iptables -A INPUT -i eth2 -p tcp --dport 443 -j ACCEPT iptables -A FORWARD -p tcp -d 192.168.120.60 --dport 443 -j ACCEPT iptables -A FORWARD -p tcp -s 192.168.120.60 -m state --state ESTABLISHED,RELATED --sport 443 -j ACCEPT iptables -A OUTPUT -p tcp --sport 443 -j ACCEPT

При использовании этих правил у меня не получается одновременно использовать два 443 порта у себя в организации, при подключении извне. В чем может быть проблема?

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

Нужно предоставить доступ из Интернет к ресурсам (веб-серверам) на одном порту, которые находятся в локальной сети? В твоих настройках нет правил маршрутизации пакетов от внутренних серверов через определенные внешние интерфейсы - статические маршруты. типа: ip route add from 192.168.120.50 dev eth1 ip route add from 192.168.120.60 dev eth2 ...

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

При использовании этих правил у меня не получается одновременно использовать два 443 порта у себя в организации, при подключении извне. В чем может быть проблема?

Если вы хотите, чтобы чтобы входящие соединения на одинаковый порт с различных интерфейсов обрабатывались разными программами на хосте, нужны некоторые манипуляции. Как вариант - DNAT на другой порт, и соответствующую программу привязать на этот порт. Можно какой-то сервис посадить в виртуальную машину и соответствующий интерфейс отдать ей, не обрабатывая(не присваивая IP) на хосте.

Elyas ★★★★★ ()
Ответ на: комментарий от zgordan

auto eth1 iface eth1 inet static address 212.3.x.56 netmask 255.255.255.248 gateway 212.3.x.17

auto eth2 iface eth2 inet static address 212.3.x.57 netmask 255.255.255.248

auto eth3 iface eth3 inet static address 212.3.x.58 netmask 255.255.255.248

auto eth4 iface eth4 inet static address 212.3.x.59 netmask 255.255.255.248

Странное решение, которое обычно дает побочные эффекты.

А если нужно будет 20 адресов, то 20 сетевух воткнете ?

Все адреса на 1 интефейс, а если нужна отказоустойчивость/распределение нагрузки, то карты в bonding

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