IPFW не работает NAT

Проблемы установки, настройки и работы Правильной Операционной Системы

Модератор: terminus

Правила форума
Убедительная просьба юзать теги [cоde] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
birds
проходил мимо

IPFW не работает NAT

Непрочитанное сообщение birds » 2014-10-08 14:11:14

rc.conf

Код: Выделить всё

hostname="Aurora"
ifconfig_em0="*локальный айпи*"
ifconfig_em1="*внешний айпи*"
defaultrouter="*ip*"
sshd_enable="YES"
# Set dumpdev to "AUTO" to enable crash dumps, "NO" to disable
dumpdev="AUTO"
gateway_enable="YES"

sendmail_enable="NONE"
sendmail_submit_enable="NONE"
sendmail_outbound_enable="NONE"
sendmail_msp_enable="NONE"

firewall_enable="YES"
firewall_nat_enable="YES"
firewall_nat_interface="em1"
firewall_logging="YES"
firewall_script="/etc/ipfw"

squid_enable="YES"
IPFW

Код: Выделить всё

ipfw -q flush
local="192.168.10.0/24, 10.1.1.0/24, 192.168.0.0/24"

ipfw add allow tcp from me to any out via em1 keep-state uid squid # разрешить машине ходить через squid

ipfw add allow ip4 from any 80 to any out     # набор для теста
ipfw add allow ip4 from any 80 to any in
ipfw add allow ip4 from any to any 80 out
ipfw add allow ip4 from any to any 80 in

ipfw add fwd 127.0.0.1,3128 ip4 from $local to any 80,443 out via em1 # Заворачивание на squid

ipfw nat 1 config log if em1 reset same_ports \ #Сам нат
        redirect_port tcp 192.168.10.8:80 80
ipfw add nat 1 log ip4 from any to any via em1

ipfw add allow ip from any to any via lo0
ipfw add deny ip from 127.0.0.1/24 to any
ipfw add deny ip from any to 127.0.0.1/24
ipfw add allow icmp from any to any
ipfw add allow ip4 from any to any via em0

ipfw add deny log all from any to any

Что не так? Почему не работает?

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

birds
проходил мимо

Re: IPFW не работает NAT

Непрочитанное сообщение birds » 2014-10-08 14:22:39

Если быть точным - не работает проброс портов

Аватара пользователя
birds
проходил мимо
Сообщения: 8
Зарегистрирован: 2014-10-08 14:36:10

Re: IPFW не работает NAT

Непрочитанное сообщение birds » 2014-10-08 15:26:05

Не работает даже с таким конфигом (rc.conf без изменений)

ipfw

Код: Выделить всё

ipfw -q flush
ipfw nat 1 config log if em1 reset same_ports \
        redirect_port tcp 192.168.10.8:80 80 \
        redirect_port tcp site2.domain.local:80 3333
ipfw add nat 1 log ip4 from any to any via em1

ipfw add allow all from any to any via em0 in
ipfw add allow all from any to any via em0 out
ipfw add allow all from any to any via em1 in
ipfw add allow all from any to any via em1 out


ipfw add deny log all from any to any

Аватара пользователя
InventoR
ст. лейтенант
Сообщения: 1344
Зарегистрирован: 2006-12-10 19:43:25
Контактная информация:

Re: IPFW не работает NAT

Непрочитанное сообщение InventoR » 2014-10-08 21:18:26

Попробуйте не использовать проброс портов, если он не работает.
ну вот и сказочке конец, кто слушал, тот молодец.

Аватара пользователя
birds
проходил мимо
Сообщения: 8
Зарегистрирован: 2014-10-08 14:36:10

Re: IPFW не работает NAT

Непрочитанное сообщение birds » 2014-10-09 9:40:57

А что можно использовать вместо проброса для публикации локальных ресурсов?
И ещё вопрос - каким образом можно осуществить редирект входящего трафика извне на локальные сервера по хидерам?
(например существует сервер-шлюз 1.1.1.1(внешний айпи), на нем висят домены test.mydomain.ru, testquest.mydomain.ru, testquestnest.mydomain.ru, и при вводе адреса в адресную строку запрос попадает на шлюз и там определяется локальный айпи адрес , на который должен попасть пользователь. Тоесть грубо говоря публикация локальных ресурсов, только не по портам а по хидерам)

Аватара пользователя
InventoR
ст. лейтенант
Сообщения: 1344
Зарегистрирован: 2006-12-10 19:43:25
Контактная информация:

Re: IPFW не работает NAT

Непрочитанное сообщение InventoR » 2014-10-09 14:05:53

birds писал(а):А что можно использовать вместо проброса для публикации локальных ресурсов?
Могу порекомендовать использовать nat который будет работать.


nginx c прокси для сайтов.
ну вот и сказочке конец, кто слушал, тот молодец.

Гость
проходил мимо

Re: IPFW не работает NAT

Непрочитанное сообщение Гость » 2014-10-12 9:42:37

Поднять версию FreeBSD до современного stable, использовать tcpdump на разных интерфейсах при выполнении тестов.

Аватара пользователя
birds
проходил мимо
Сообщения: 8
Зарегистрирован: 2014-10-08 14:36:10

Re: IPFW не работает NAT

Непрочитанное сообщение birds » 2014-10-13 9:19:30

Гость писал(а):Поднять версию FreeBSD до современного stable, использовать tcpdump на разных интерфейсах при выполнении тестов.
юзаю последнюю версию freebsd
tcpdump'ом отдебажить не вышло

Гость
проходил мимо

Re: IPFW не работает NAT

Непрочитанное сообщение Гость » 2014-10-14 10:33:31

Не запустился чтоль?

Аватара пользователя
birds
проходил мимо
Сообщения: 8
Зарегистрирован: 2014-10-08 14:36:10

Re: IPFW не работает NAT

Непрочитанное сообщение birds » 2014-10-14 13:41:14

Запустился, ничего странного уловить не получилось.
Как оказалось дело в клиентах - основным был прописан старый шлюз
Из практики программиста - в мега сложных вопросах решение всегда оказывается подобным или ещё банальнее.

Гость
проходил мимо

Re: IPFW не работает NAT

Непрочитанное сообщение Гость » 2014-10-14 14:22:06

ловить так:
на внешнем интерфейсе
tcpdump -pni em1 host <внешний тестовый ip> and port <пробрасываемый порт>

на внутреннем интерфейсе
tcpdump -pni em0 host <внешний тестовый ip>
по отсутствию ответных пакетов на внутреннем интерфейсе признать виновным внутренний сервис.

Аватара пользователя
InventoR
ст. лейтенант
Сообщения: 1344
Зарегистрирован: 2006-12-10 19:43:25
Контактная информация:

Re: IPFW не работает NAT

Непрочитанное сообщение InventoR » 2014-10-14 17:09:49

А как запустить одновременно два tcpdump :)
ну вот и сказочке конец, кто слушал, тот молодец.

DocenT
рядовой
Сообщения: 24
Зарегистрирован: 2012-06-26 17:12:34
Откуда: Рязань

Re: IPFW не работает NAT

Непрочитанное сообщение DocenT » 2014-10-15 13:12:17

InventoR писал(а):А как запустить одновременно два tcpdump :)
на двух разных консолях не прокатит?
У админа есть все возможные права... ряд невозможных... и еще парочка невероятных...

j001n
ефрейтор
Сообщения: 52
Зарегистрирован: 2008-09-23 7:29:11

Re: IPFW не работает NAT

Непрочитанное сообщение j001n » 2015-01-19 8:17:21

привет всем. не буду плодить тему она актуальна. не работает NAT. причина такова , что пришлось разносить провайдеров и теперь они находятся на одном vlan (внутри 2е подсети). простой заменой интерфейсов IF на IP в настройках IPFW не приводит к результату. NATится только 1 провайдер.
задача такая : занатить на 2го провайдера несколько машин из локалки.

в наличии 8.1-RELEASE, 1 - сетевая , 2 - провайдера + корпоративная сеть.
что есть :

Код: Выделить всё

#пустить через второго провайдера
${ipfw} table 10 add 192.168.0.100

setfib -F0 route add default ${gw1}
setfib -F1 route add default ${gw2}


${ipfw} add setfib 1 all from table\(10\) to any in

###NAT-1

${ipfw} nat 1 config log ip ${nat1} deny_in same_ports \
redirect_port tcp ${mail}:25 25 


#${ipfw} add nat 1 ip from 192.168.0.0/24 to not table\(10\) out via ${LanOut}
${ipfw} add nat 1 ip from any to any out via ${LanOut}
${ipfw} add nat 1 ip from any to ${nat1} in via ${LanOut}


###NAT-2
${ipfw} nat 2 config log ip ${nat2} deny_in same_ports \
redirect_port tcp ${mail}:25 25

#${ipfw} add nat 2 ip from table\(10\) to any out via ${LanOut}
${ipfw} add nat 2 ip from any to ${nat2} in via ${LanOut}
:-D

mzroot
проходил мимо
Сообщения: 9
Зарегистрирован: 2013-12-04 16:48:21
Откуда: г. Пушкино

Re: IPFW не работает NAT

Непрочитанное сообщение mzroot » 2015-01-19 14:04:35

j001n писал(а):привет всем. не буду плодить тему она актуальна. не работает NAT. причина такова , что пришлось разносить провайдеров и теперь они находятся на одном vlan (внутри 2е подсети). простой заменой интерфейсов IF на IP в настройках IPFW не приводит к результату. NATится только 1 провайдер.
задача такая : занатить на 2го провайдера несколько машин из локалки.

в наличии 8.1-RELEASE, 1 - сетевая , 2 - провайдера + корпоративная сеть.
что есть :

Код: Выделить всё

#пустить через второго провайдера
${ipfw} table 10 add 192.168.0.100

setfib -F0 route add default ${gw1}
setfib -F1 route add default ${gw2}


${ipfw} add setfib 1 all from table\(10\) to any in

###NAT-1

${ipfw} nat 1 config log ip ${nat1} deny_in same_ports \
redirect_port tcp ${mail}:25 25 


#${ipfw} add nat 1 ip from 192.168.0.0/24 to not table\(10\) out via ${LanOut}
${ipfw} add nat 1 ip from any to any out via ${LanOut}
${ipfw} add nat 1 ip from any to ${nat1} in via ${LanOut}


###NAT-2
${ipfw} nat 2 config log ip ${nat2} deny_in same_ports \
redirect_port tcp ${mail}:25 25

#${ipfw} add nat 2 ip from table\(10\) to any out via ${LanOut}
${ipfw} add nat 2 ip from any to ${nat2} in via ${LanOut}
:-D
Не читали вот это http://birdofluck.livejournal.com/8778.html ?

j001n
ефрейтор
Сообщения: 52
Зарегистрирован: 2008-09-23 7:29:11

IPFW не работает NAT

Непрочитанное сообщение j001n » 2015-01-19 17:10:24

тебя удивит если я скажу, что в некоторых недалеких(во всех смыслах) странах ЖЖ находится под запретом.
изложи вкратце, что в статье :roll:

mzroot
проходил мимо
Сообщения: 9
Зарегистрирован: 2013-12-04 16:48:21
Откуда: г. Пушкино

IPFW не работает NAT

Непрочитанное сообщение mzroot » 2015-01-19 19:39:27

j001n писал(а):тебя удивит если я скажу, что в некоторых недалеких(во всех смыслах) странах ЖЖ находится под запретом.
изложи вкратце, что в статье :roll:
Нет, не удивит. А разве в некоторых странах нет "обходных решений" для таких ситуаций?

Излагать вкратце не буду, приаттачу pdf'ку со статьей.
Вложения
ipfw.pdf
Напечатанная в PDF статья
(446.43 КБ) 73 скачивания

Аватара пользователя
sergio
мл. сержант
Сообщения: 79
Зарегистрирован: 2006-12-30 2:47:28
Откуда: Русь Києвська

IPFW не работает NAT

Непрочитанное сообщение sergio » 2015-06-02 23:41:51

ipfw nat 1 config log if em1 reset same_ports \
redirect_port tcp 192.168.10.8:80 80 \
redirect_port tcp site2.domain.local:80 3333
пишите в одну строку без переносов. С "\" в конце строки оно не работает....

mzroot
проходил мимо
Сообщения: 9
Зарегистрирован: 2013-12-04 16:48:21
Откуда: г. Пушкино

IPFW не работает NAT

Непрочитанное сообщение mzroot » 2015-06-03 0:36:34

sergio писал(а):
ipfw nat 1 config log if em1 reset same_ports \
redirect_port tcp 192.168.10.8:80 80 \
redirect_port tcp site2.domain.local:80 3333
пишите в одну строку без переносов. С "\" в конце строки оно не работает....
Хм, странно с чего бы это. У меня с "\" всё прекрасно работает.