SNAT в IPFW

Настройка сетевых служб, маршрутизации, фаерволлов. Проблемы с сетевым оборудованием.
Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
v-i-k-tor
проходил мимо
Сообщения: 2
Зарегистрирован: 2012-10-19 9:30:16

SNAT в IPFW

Непрочитанное сообщение v-i-k-tor » 2012-10-19 9:51:51

Подскажите пожалуйста, как правильно организовать проброс портов. Раньше имел дело только с iptables, там вроде все просто, но вот ipfw мне никак не дается.

Предположим у нас есть внутренний WEB сервер, redirect_port даст нам возможность пробросить нужный порт. Из вне все работает. А вот если на этот же сервер обратиться из локальной сети, то ситуация будет следующая:
Пакет покидает компьютер в сети.
Поступает на шлюз.
Производится подстановка адреса назначения, однако адрес отправителя не подменяется, т.е. исходный адрес остается в пакете без изменения.
Пакет покидает брандмауэр и отправляется на HTTP сервер.
HTTP сервер, готовясь к отправке ответа, обнаруживает, что клиент находится в локальной сети (поскольку пакет запроса содержал оригинальный IP адрес, который теперь превратился в адрес назначения) и поэтому отправляет пакет непосредственно на компьютер в сети.
Пакет поступает на компьютер в сети. Клиент "путается", поскольку ответ пришел не с того узла, на который отправлялся запрос. Поэтому клиент "сбрасывает" пакет ответа и продолжает ждать "настоящий" ответ. Описание ситуации взято тут
вот что показывает tcpdump на шлюзе:

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

10:17:47.629282 IP 192.168.3.5.62693 > 1.2.3.4.80: Flags [S], seq 515027046, win 8192, options [mss 1460,nop,wscale 2,nop,nop,sackOK], length 0
10:17:47.629298 IP 192.168.3.5.62693 > 192.168.1.100.80: Flags [S], seq 515027046, win 8192, options [mss 1460,nop,wscale 2,nop,nop,sackOK], length 0
10:17:47.629360 IP 192.168.1.100.80 > 192.168.3.5.62693: Flags [S.], seq 2496991387, ack 515027047, win 14600, options [mss 1460,nop,nop,sackOK,nop,wscale 8], length 0
10:17:47.629374 IP 192.168.1.100.80 > 192.168.3.5.62693: Flags [S.], seq 2496991387, ack 515027047, win 14600, options [mss 1460,nop,nop,sackOK,nop,wscale 8], length 0
10:17:47.629384 IP 192.168.3.5.62694 > 1.2.3.4.80: Flags [S], seq 4035575244, win 8192, options [mss 1460,nop,wscale 2,nop,nop,sackOK], length 0
10:17:47.629391 IP 192.168.3.5.62694 > 192.168.1.100.80: Flags [S], seq 4035575244, win 8192, options [mss 1460,nop,wscale 2,nop,nop,sackOK], length 0
10:17:47.629441 IP 192.168.1.100.80 > 192.168.3.5.62694: Flags [S.], seq 1272958531, ack 4035575245, win 14600, options [mss 1460,nop,nop,sackOK,nop,wscale 8], length 0
10:17:47.629453 IP 192.168.1.100.80 > 192.168.3.5.62694: Flags [S.], seq 1272958531, ack 4035575245, win 14600, options [mss 1460,nop,nop,sackOK,nop,wscale 8], length 0
tcpdump на WEB сервере:

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

10:11:21.595965 IP 192.168.3.5.61106 > 192.168.1.100.80: Flags [S], seq 1994285038, win 8192, options [mss 1460,nop,wscale 2,nop,nop,sackOK], length 0
10:11:21.596002 IP 192.168.1.100.80 > 192.168.3.5.61106: Flags [S.], seq 2602663054, ack 1994285039, win 14600, options [mss 1460,nop,nop,sackOK,nop,wscale 8], length 0
10:11:21.596381 IP 192.168.3.5.61107 > 192.168.1.100.80: Flags [S], seq 3905203459, win 8192, options [mss 1460,nop,wscale 2,nop,nop,sackOK], length 0
10:11:21.596397 IP 192.168.1.100.80 > 192.168.3.5.61107: Flags [S.], seq 2692432696, ack 3905203460, win 14600, options [mss 1460,nop,nop,sackOK,nop,wscale 8], length 0

Хостинговая компания 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/
Выделенные сервера, Россия, Москва, от 2460 рублей (8 CPU, 8Gb RAM, 2x500Gb HDD, RAID 3ware 9750):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/


v-i-k-tor
проходил мимо
Сообщения: 2
Зарегистрирован: 2012-10-19 9:30:16

Re: SNAT в IPFW

Непрочитанное сообщение v-i-k-tor » 2012-10-19 11:49:51

Может я что-то пропустил в этом описании, но не могли бы Вы привести цитату от туда, где конкретно написано решение мой проблемы.

Россия
проходил мимо

Re: SNAT в IPFW

Непрочитанное сообщение Россия » 2012-10-19 13:03:46

em1 - internet 1.2.3.4
fxp1 - lan

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

nat 2 config log if fxp1 same_ports reset

add 1040 nat 2 ip from 192.168.3.0/24 to 192.168.1.100 out xmit fxp1
add 1041 nat 2 ip from 192.168.1.100 to me in recv fxp1

nat 1 config log if em1 reset same_ports deny_in redirect_port tcp 192.168.1.100:80 80

add 10130 nat 1 ip from any to any via em1

add 65534 deny all from any to any