Добрый день! Извините за пространное название темы:) Ситуация такая имею сервис (Q.W.E.R:50196) за аппараным NAT. NAT даёт доступ во внешнюю сеть только адрессу 192.168.196.25 по этому адрессу находится прокси под FreeBSD 7.1 (squid) который даёт всем доступ в интернет, на одной из станций 192.168.196.67 установлен софт который работает допутим по 5000 порту (TCPFoss) по моему замыслу машина 192.198.196.25 должна пакеты направленные на 192.198.196.25:5000 c 192.168.196.67 направлять на адресс Q.W.E.R:50196 перекомпилировал ядро с опциями IPFIREWALL и IPFIREWALL_FORWARD добавил rc.conf firewall_enable="YES" написалл правило
ipfw add 00210 fwd Q.W.E.R,50196 tcp from 192.168.196.67 to 192.168.196.25 5000 in via $myint
зашел со станции (192.168.196.67) telnet 192.168.196.25 5000
ipfw show - показывает что правило отрабатывает , но телнет неподключается, tcpdump при попытке подлючения показывает чтото типа
IP 192.168.196.67 > 192.168.196.25.5000: S 1810151439:1810151439(0) win 65535 <mss 1460,nop,nop,sackOK>
это как я понимаю входящие пакеты на маршрутизатор с моей машина ну исходящих к узлу Q.W.E.R:50196 нет? Подскажите в чем причина?
>[оверквотинг удален]
>firewall_enable="YES" написалл правило
>ipfw add 00210 fwd Q.W.E.R,50196 tcp from 192.168.196.67 to 192.168.196.25 5000 in
>via $myint
>зашел со станции (192.168.196.67) telnet 192.168.196.25 5000
>ipfw show - показывает что правило отрабатывает , но телнет неподключается, tcpdump
>при попытке подлючения показывает чтото типа
>IP 192.168.196.67 > 192.168.196.25.5000: S 1810151439:1810151439(0) win 65535 <mss 1460,nop,nop,sackOK>
>это как я понимаю входящие пакеты на маршрутизатор с моей машина ну
>исходящих к узлу Q.W.E.R:50196 нет? Подскажите в чем причина?
>gateway_enable="YES"
и настройки firewall не последние дело.
так же не понятно Q.W.E.R,50196 в подсети 92.168.196.0 или нет
gateway_enable="YES"
поставлю - просто незнал что это нужно. Спасибо.и настройки firewall не последние дело.
-привести все настройкитак же не понятно Q.W.E.R,50196 в подсети 92.168.196.0 или нет это маршрутизируемый интернет адресс гдето далеко:)
>[оверквотинг удален]
>>при попытке подлючения показывает чтото типа
>>IP 192.168.196.67 > 192.168.196.25.5000: S 1810151439:1810151439(0) win 65535 <mss 1460,nop,nop,sackOK>
>>это как я понимаю входящие пакеты на маршрутизатор с моей машина ну
>>исходящих к узлу Q.W.E.R:50196 нет? Подскажите в чем причина?
>>
>
>gateway_enable="YES"
>
>и настройки firewall не последние дело.
>так же не понятно Q.W.E.R,50196 в подсети 92.168.196.0 или нетДолго боролся побовал разные варианты fwd, руки сложил
пакеты уходят на lo0 tcpdump -i lo0 непоказывает никакого движения как сквозь землю пакеты проваливаются, вот мои правила (пока правда сыровато)oif="re0"
cmd="ipfw -q add"ipfw -q -f flush
$cmd 00100 pass all from any to any via lo0
$cmd 00110 deny all from any to 127.0.0.0/8
$cmd 00120 deny all from 127.0.0.0/8 to any$cmd 00130 check-state
$cmd 00140 deny all from any to any frag
$cmd 00150 deny tcp from any to any established$cmd 00160 allow tcp from 192.168.196.67 to any 22 in via $oif setup keep-state
$cmd 00161 fwd 193.227.119.44,50196 tcp from 192.168.196.67 to 192.168.196.25 5000 in via $oif
$cmd 00162 allow tcp from any to any out via $oif setup keep-state
$cmd 00163 allow udp from any to any out via $oif keep-state$cmd 00170 allow tcp from 192.168.196.0/24 to any 3128 in via $oif setup keep-state
$cmd 00171 allow tcp from 192.168.196.0/24 to any 80 in via $oif setup keep-state
$cmd 00180 allow icmp from any to any out icmptype 8
$cmd 00190 allow icmp from any to any in icmptype 0интерфейс у меня один это тренировачный вариант
>[оверквотинг удален]
>$cmd 00170 allow tcp from 192.168.196.0/24 to any 3128 in via $oif
>setup keep-state
>
>$cmd 00171 allow tcp from 192.168.196.0/24 to any 80 in via $oif
>setup keep-state
>
>$cmd 00180 allow icmp from any to any out icmptype 8
>$cmd 00190 allow icmp from any to any in icmptype 0
>
>интерфейс у меня один это тренировачный вариантс ipfw весьма редко сталкиваюсь.
оставьте только разрешающее правило для всех пакетов и проброс, когда начнут пакеты ходить тогда и будите ограничивать.
так же может потребоваться NAT для правильного хождения ответов.
что в таблице маршрутизации?
>[оверквотинг удален]
>>
>>интерфейс у меня один это тренировачный вариант
>
>с ipfw весьма редко сталкиваюсь.
>
>оставьте только разрешающее правило для всех пакетов и проброс, когда начнут пакеты
>ходить тогда и будите ограничивать.
>
>так же может потребоваться NAT для правильного хождения ответов.
>что в таблице маршрутизации?попробую завтра а правло разрешающее вход пакетов с портом 5000 и выход с портом 50196 надо прописывать? А если надо то где оно должно находиться до fwd или за? И надо ли для этого дополнительно прописывать какието маршруты? И если можно подскажите варианты переноса сервиса на другой IP (ну примено так я со своей станции обращаюсь к IP маршрутизатора по какомуто известному ему порту а но все отфудболивает куда нужно ну иназад получает то что нужно и мне возвращает)
вчера открыл ipfw, поставил порт socket, прописал порт 50196 в севисах, добавил строку foss stream tcp nowait /usr/local/bin/socket socket 193.227.119.44 50196. Запустил inetd - эфект тотже вижу пакеты SYN входящие с моего компютера и всё кудато пропадают? Может дело в том что у меня только один интерфейс?