VIDEOCHAT  ::   FAQ  ::   Поиск  ::   Регистрация  ::   Вход

IPTables и NAT.

Общие вопросы по операционной системе

Модераторы: april22, Zavr2008

Ответить
Samael28
Сообщения: 1057
Зарегистрирован: 08 янв 2011, 18:32
Откуда: Киев
Контактная информация:

IPTables и NAT.

Сообщение Samael28 »

Всем доброго дня.
Возник хитрый вопрос по IPTables, т.к. сам по нему крупным спецом не являюсь :)
Есть внутренняя сеть LAN вида 10.10.10.0/24. И внешняя сеть WAN вида 8.8.8.192/27. На внешней сети есть шлюз провайдера 8.8.8.193.
Есть сервер с 2мя сетевыми и 2мя IP
eth0 - 10.10.10.254
eth1 - 8.8.8.213
Default gateway - 8.8.8.193
Задачка - построить NAT таким образом, чтобы внутри сетей LAN и WAN все ходило простым роутингом, т.е. внутри этих сетей все устройства имеют маршруты друг на друга и никакого NAT нету. Но если устройства из сети LAN пытаются выйти за пределы этих сетей, то тогда уже включается NAT с предоставлением "внешнего" IP 8.8.8.213
Т.е. если устройство с адресом 10.10.10.25 обращается к устройству 8.8.8.200, то устройство на этом адресе видит адрес источника 10.10.10.25, а если уходит дальше, например на 8.8.8.8, то уже подставляется 8.8.8.213.
Все, что я видел в интернете использует для NAT не IP, а имя интерфейса. А хотелось бы именно так построить.
(Может мой вопрос глупый, но задачка пока именно такая)
Мой профайл на Upwork
ded
Сообщения: 15621
Зарегистрирован: 26 авг 2010, 19:00

Re: IPTables и NAT.

Сообщение ded »

Сложняки.
Через год уже не распутаешь.
В локальной сети 10.10.10.0/24 никакого НАТа не будет, ибо это уровень коммутатора локальной сети - Layer 2. Хосты будут видеть друг-друга по МАС адресам и не будут обращаться на сервер с 2мя сетевыми eth0 - 10.10.10.254. Верно?
На этом сервере нужно подменять source IP только если destination не будет = 8.8.8.192/27
Но тогда каждый хост в этой сети должен иметь route
10.10.10.0/24 gw 8.8.8.213
а иначе они будут искать эти адреса на Default gateway - 8.8.8.193
Samael28
Сообщения: 1057
Зарегистрирован: 08 янв 2011, 18:32
Откуда: Киев
Контактная информация:

Re: IPTables и NAT.

Сообщение Samael28 »

ded писал(а):На этом сервере нужно подменять source IP только если destination не будет = 8.8.8.192/27
Подменять в данном случае = NATить.
ded писал(а):Но тогда каждый хост в этой сети должен иметь route
10.10.10.0/24 gw 8.8.8.213
Да, каждый хост в сети 8.8.8.192/27 будет иметь этот роут.

Суть в том, что узлы сети 10.10.10.0/24 должны иметь доступ в интернет, но с узлами сети 8.8.8.192/27 общаться без NATов.
Мой профайл на Upwork
Vlad1983
Сообщения: 4251
Зарегистрирован: 09 авг 2011, 11:51

Re: IPTables и NAT.

Сообщение Vlad1983 »

убрать из -t nat POSTROUTING всю ту чушь, которую вы уже туда вбили

и выполнить
iptables -t nat -A POSTROUTING -s 10.10.10.0/24 ! -d 8.8.8.192/27 -o eth1 -j SNAT --to-source 8.8.8.213
iptables -t filter -I FORWARD -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
iptables -t filter -A FORWARD -i eth0 -o eth1 -j ACCEPT
iptables -t filter -A FORWARD -i eth1 -s 8.8.8.192/27 -d 10.10.10.0/24 -j ACCEPT
заменив на свои реальные сети и IP на интерфейсах
ЛС: @rostel
Samael28
Сообщения: 1057
Зарегистрирован: 08 янв 2011, 18:32
Откуда: Киев
Контактная информация:

Re: IPTables и NAT.

Сообщение Samael28 »

Спасибо, ушел применять и читать мануалы....
Мой профайл на Upwork
ded
Сообщения: 15621
Зарегистрирован: 26 авг 2010, 19:00

Re: IPTables и NAT.

Сообщение ded »

На этом сервере нужно подменять source IP только если destination не будет = 8.8.8.192/27 (НАТить)
а тут получается НАТить на -d 8.8.8.192/27
iptables -t nat -A POSTROUTING -s 10.10.10.0/24 ! -d 8.8.8.192/27 -o eth1 -j SNAT --to-source 8.8.8.213
т.е. ровно наоборот?
Vlad1983
Сообщения: 4251
Зарегистрирован: 09 авг 2011, 11:51

Re: IPTables и NAT.

Сообщение Vlad1983 »

iptables -t nat -A POSTROUTING -s 10.10.10.0/24 ! -d 8.8.8.192/27 -o eth1 -j SNAT --to-source 8.8.8.213

делаем соурс маппинг всех пакетов проходящих через eth1 при условии что инициатор из сети 10.10.10.0/24 и получатель не в сети 8.8.8.192/27
ЛС: @rostel
ded
Сообщения: 15621
Зарегистрирован: 26 авг 2010, 19:00

Re: IPTables и NAT.

Сообщение ded »

О, восклицательный знак сразу совсем не увидел.
Ответить
© 2008 — 2024 Asterisk.ru
Digium, Asterisk and AsteriskNOW are registered trademarks of Digium, Inc.
Design and development by PostMet-Netzwerk GmbH