URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 54220
[ Назад ]

Исходное сообщение
"IPFW"

Отправлено 999 , 07-Мрт-05 23:51 
Подскажите синтаксис правил ipfw...
Задача перенаправить покет, приходящий на внешний интерфейс на определенный порт, на одну из внутренних машин.
И так, дано:
Внешний интерфейс - "ext0" IP 111.111.111.111
Внутренний интерфейс - "int0" IP 222.222.222.222
Машина во внутренней сети - "IntComp" IP 222.222.222.333
Порт - "int_port"
Спасибо.

Содержание

Сообщения в этом обсуждении
"IPFW"
Отправлено Serg , 08-Мрт-05 00:22 
>Подскажите синтаксис правил ipfw...
>Задача перенаправить покет, приходящий на внешний интерфейс на определенный порт, на одну
>из внутренних машин.
>И так, дано:
>Внешний интерфейс - "ext0" IP 111.111.111.111
>Внутренний интерфейс - "int0" IP 222.222.222.222
>Машина во внутренней сети - "IntComp" IP 222.222.222.333
>Порт - "int_port"
>Спасибо.


add fwd 222.222.222.333 tcp (или udp) from any to any int_port in via ext0

Не забудь правило разрешающее выход пакета.
И равильно ли настроена IP 222.222.222.333 машина чтобы отвечать на перенаправленные пакеты, а то она будет отвечать на IP 222.222.222.222 .


"IPFW"
Отправлено Skif , 08-Мрт-05 02:30 
>
>add fwd 222.222.222.333 tcp (или udp) from any to any int_port in
>via ext0
>
>Не забудь правило разрешающее выход пакета.
>И равильно ли настроена IP 222.222.222.333 машина чтобы отвечать на перенаправленные пакеты,
>а то она будет отвечать на IP 222.222.222.222 .

man nat
-redirect_port


"IPFW"
Отправлено jema , 09-Мрт-05 12:27 
>>
>>add fwd 222.222.222.333 tcp (или udp) from any to any int_port in
>>via ext0
>>
>>Не забудь правило разрешающее выход пакета.
>>И равильно ли настроена IP 222.222.222.333 машина чтобы отвечать на перенаправленные пакеты,
>>а то она будет отвечать на IP 222.222.222.222 .
>
>man nat
>-redirect_port


в CURRENT кажется для этого есть опция IP_FORWARD_EXTENDED теперь


"IPFW"
Отправлено 999 , 11-Мрт-05 21:53 
>>Подскажите синтаксис правил ipfw...
>>Задача перенаправить покет, приходящий на внешний интерфейс на определенный порт, на одну
>>из внутренних машин.
>>И так, дано:
>>Внешний интерфейс - "ext0" IP 111.111.111.111
>>Внутренний интерфейс - "int0" IP 222.222.222.222
>>Машина во внутренней сети - "IntComp" IP 222.222.222.333
>>Порт - "int_port"
>>Спасибо.
>
>
>add fwd 222.222.222.333 tcp (или udp) from any to any int_port in
>via ext0
>
>Не забудь правило разрешающее выход пакета.
Вынужден задать вопрос и по этому поводу... ;-)
Набросай пож. примерное правило.

"IPFW"
Отправлено alk , 12-Мрт-05 01:03 
>>>Внешний интерфейс - "ext0" IP 111.111.111.111
>>>Внутренний интерфейс - "int0" IP 222.222.222.222
>>>Машина во внутренней сети - "IntComp" IP 222.222.222.333
>>>Порт - "int_port"
natd -a 111.111.111.111 -p 8668 -redirect_port tcp 222.222.222.333 xxxx:yyyy
где xxxx - порт по которому будут ломиться с инета
yyyy - порт на который будет предаваться соеденение на локальную машины
а по поводу fwd - это батенька полный и чистейший бред
вы то сами так пробовали?  очень сомневаюсь

"IPFW"
Отправлено 999 , 12-Мрт-05 11:49 
>>>>Внешний интерфейс - "ext0" IP 111.111.111.111
>>>>Внутренний интерфейс - "int0" IP 222.222.222.222
>>>>Машина во внутренней сети - "IntComp" IP 222.222.222.333
>>>>Порт - "int_port"
>natd -a 111.111.111.111 -p 8668 -redirect_port tcp 222.222.222.333 xxxx:yyyy
>где xxxx - порт по которому будут ломиться с инета
>yyyy - порт на который будет предаваться соеденение на локальную машины
>а по поводу fwd - это батенька полный и чистейший бред
>вы то сами так пробовали?  очень сомневаюсь
fwd работает, но в одну стороны... т.е. нужно сочинить правило перенаправляющее обратный траффик

"IPFW"
Отправлено Serg , 12-Мрт-05 12:24 

>>а по поводу fwd - это батенька полный и чистейший бред
>>вы то сами так пробовали?  очень сомневаюсь

Я считаю, ты не прав и не можешь делать таких заявлений.
Каждое средство нужно использовать по своему назначению.
fwd с успехом используется и сейчас, для прозрачного проксирования http запросов через Squid.

>fwd работает, но в одну стороны...

Здесь абсолютно прав.

>т.е. нужно сочинить правило перенаправляющее обратный траффик

Если вообще в этом есть необходимость. Некоторые приложения, которым перенаправляешь пакеты, при правильной настройке сами знают как отвечать.
Например Squid.


"IPFW"
Отправлено Serg , 12-Мрт-05 12:04 

>>Не забудь правило разрешающее выход пакета.
>Вынужден задать вопрос и по этому поводу... ;-)
>Набросай пож. примерное правило.

IPFW Проверяе тпакеты на соответствие правилам на каждом интерфейсе (включая внутренний, здесь лучше разрешить все)

ipfw add allow all from any to 222.222.222.333 int_port
это правило разрешит выход пакта
Нужно помнить, что связь всегда вдухсторонная, поэтому ныжны правила которые будут пропускать пакеты от 222.222.222.333
ipfw add allow all from 222.222.222.333 int_port to any

Правило
add fwd 222.222.222.333 tcp from any to any int_port in via ext0
должноиметь номер меньше чем выше описаные правила.
Если машина 222.222.222.333 не знает что она получает перенаправленные пакеты, то она будет отвечать серверу 222.222.222.222, а не томо комрьютеру, который отправил для нее пакет. Тогда связи не будет.
Мало какие программы умеют работать с перенаправленными пакетами.

Напиши зачем это нужно, возможно это можно решить по другому.
geger@yandex.ru


"IPFW"
Отправлено Grey , 12-Мрт-05 14:23 
>
>>>Не забудь правило разрешающее выход пакета.
>>Вынужден задать вопрос и по этому поводу... ;-)
>>Набросай пож. примерное правило.
>
>IPFW Проверяе тпакеты на соответствие правилам на каждом интерфейсе (включая внутренний, здесь
>лучше разрешить все)
>
>ipfw add allow all from any to 222.222.222.333 int_port
>это правило разрешит выход пакта
>Нужно помнить, что связь всегда вдухсторонная, поэтому ныжны правила которые будут пропускать
>пакеты от 222.222.222.333
>ipfw add allow all from 222.222.222.333 int_port to any
>
>Правило
>add fwd 222.222.222.333 tcp from any to any int_port in via ext0
>
>должноиметь номер меньше чем выше описаные правила.
>Если машина 222.222.222.333 не знает что она получает перенаправленные пакеты, то она
>будет отвечать серверу 222.222.222.222, а не томо комрьютеру, который отправил для
>нее пакет. Тогда связи не будет.
>Мало какие программы умеют работать с перенаправленными пакетами.
>
>Напиши зачем это нужно, возможно это можно решить по другому.
>geger@yandex.ru

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


"IPFW"
Отправлено Serg , 12-Мрт-05 17:55 
>fwd вроде не модифицирует адреса в пакете... т.е. вообще не >модифицирует пакет....
>так что машина 222.222.222.333 будет отвечать тому, чей адрес
>значально стоит как адрес источника

Да, точно. Но ответитли она, если адрес назначения указан не ее.
Для того, чтоб отвечала нужно специальным образом настраивать.


"IPFW"
Отправлено Victor , 12-Мрт-05 14:36 
>Подскажите синтаксис правил ipfw...
>Задача перенаправить покет, приходящий на внешний интерфейс на определенный порт, на одну
>из внутренних машин.
>И так, дано:
>Внешний интерфейс - "ext0" IP 111.111.111.111
>Внутренний интерфейс - "int0" IP 222.222.222.222
>Машина во внутренней сети - "IntComp" IP 222.222.222.333
>Порт - "int_port"
>Спасибо.


Я бы лучше поставил порт /usr/ports/net/redir
и запускал бы
/usr/local/bin/redir --lport="порт на 111.111.111.111" --cport="порт на 222.222.222.333" --laddr=111.111.111.111 --caddr=222.222.222.333 &
Все работает на ура , даже через NAT.


"IPFW"
Отправлено 999 , 12-Мрт-05 15:40 
>>Подскажите синтаксис правил ipfw...
>>Задача перенаправить покет, приходящий на внешний интерфейс на определенный порт, на одну
>>из внутренних машин.
>>И так, дано:
>>Внешний интерфейс - "ext0" IP 111.111.111.111
>>Внутренний интерфейс - "int0" IP 222.222.222.222
>>Машина во внутренней сети - "IntComp" IP 222.222.222.333
>>Порт - "int_port"
>>Спасибо.
>
>
>Я бы лучше поставил порт /usr/ports/net/redir
>и запускал бы
>/usr/local/bin/redir --lport="порт на 111.111.111.111" --cport="порт на 222.222.222.333" --laddr=111.111.111.111 --caddr=222.222.222.333 &
>Все работает на ура , даже через NAT.
А что в этом случае с обратными пакетами происходит?
Короче, более конкретная задача - перенаправление ФТП траффика.
Т.е. ФТП находится на машине внутри локальной сети и хочется сделать его доступным извне.

"IPFW"
Отправлено Victor , 12-Мрт-05 15:51 
>>>Подскажите синтаксис правил ipfw...
>>>Задача перенаправить покет, приходящий на внешний интерфейс на определенный порт, на одну
>>>из внутренних машин.
>>>И так, дано:
>>>Внешний интерфейс - "ext0" IP 111.111.111.111
>>>Внутренний интерфейс - "int0" IP 222.222.222.222
>>>Машина во внутренней сети - "IntComp" IP 222.222.222.333
>>>Порт - "int_port"
>>>Спасибо.
>>
>>
>>Я бы лучше поставил порт /usr/ports/net/redir
>>и запускал бы
>>/usr/local/bin/redir --lport="порт на 111.111.111.111" --cport="порт на 222.222.222.333" --laddr=111.111.111.111 --caddr=222.222.222.333 &
>>Все работает на ура , даже через NAT.
>А что в этом случае с обратными пакетами происходит?
>Короче, более конкретная задача - перенаправление ФТП траффика.
>Т.е. ФТП находится на машине внутри локальной сети и хочется сделать его
>доступным извне.


Тут сложнее , если FTP будет работать в активном режиме (или в пассивном, не помню), то всю будет нормально работать, если наоборот, то нет.
По моему при пассивном режиме данные ходят туда сюда по одному порту (тоесть тогда все будет ок).


"IPFW"
Отправлено 999 , 14-Мрт-05 17:23 
>>>Я бы лучше поставил порт /usr/ports/net/redir
>>>и запускал бы
>>>/usr/local/bin/redir --lport="порт на 111.111.111.111" --cport="порт на 222.222.222.333" --laddr=111.111.111.111 --caddr=222.222.222.333 &
>Тут сложнее , если FTP будет работать в активном режиме (или в
>пассивном, не помню), то всю будет нормально работать, если наоборот, то
>нет.
>По моему при пассивном режиме данные ходят туда сюда по одному порту
>(тоесть тогда все будет ок).
Как ограничить количество запускаемых redir_ов?

"IPFW"
Отправлено Victor , 14-Мрт-05 17:28 
>>>>Я бы лучше поставил порт /usr/ports/net/redir
>>>>и запускал бы
>>>>/usr/local/bin/redir --lport="порт на 111.111.111.111" --cport="порт на 222.222.222.333" --laddr=111.111.111.111 --caddr=222.222.222.333 &
>>Тут сложнее , если FTP будет работать в активном режиме (или в
>>пассивном, не помню), то всю будет нормально работать, если наоборот, то
>>нет.
>>По моему при пассивном режиме данные ходят туда сюда по одному порту
>>(тоесть тогда все будет ок).
>Как ограничить количество запускаемых redir_ов?


Не ставить в конце &  и будет запускаться как один процесс..


"IPFW"
Отправлено 999 , 15-Мрт-05 00:07 
>>Как ограничить количество запускаемых redir_ов?
>Не ставить в конце &  и будет запускаться как один процесс..
Не выход.
Нужно ограничить часло запускаемых redir_ов например 5-ю процессами.
И естественно в фоне...

"IPFW"
Отправлено Victor , 15-Мрт-05 12:48 
>>>Как ограничить количество запускаемых redir_ов?
>>Не ставить в конце &  и будет запускаться как один процесс..
>Не выход.
>Нужно ограничить часло запускаемых redir_ов например 5-ю процессами.
>И естественно в фоне...


не помню .
man redir


"IPFW"
Отправлено 999 , 16-Мрт-05 16:37 
>>>>Как ограничить количество запускаемых redir_ов?
>>>Не ставить в конце &  и будет запускаться как один процесс..
>>Не выход.
>>Нужно ограничить часло запускаемых redir_ов например 5-ю процессами.
>>И естественно в фоне...
>
>
>не помню .
>man redir
От корки до корки.
И где?



"IPFW"
Отправлено Victor , 16-Мрт-05 17:41 
>>>>>Как ограничить количество запускаемых redir_ов?
>>>>Не ставить в конце &  и будет запускаться как один процесс..
>>>Не выход.
>>>Нужно ограничить часло запускаемых redir_ов например 5-ю процессами.
>>>И естественно в фоне...
>>
>>
>>не помню .
>>man redir
>От корки до корки.
>И где?

Где , не знаю , я не смотрел функцию ограничения процессов, я и не говорил что есть.


"IPFW"
Отправлено 999 , 21-Мрт-05 10:26 
>>>>>>Как ограничить количество запускаемых redir_ов?
>>>>>Не ставить в конце &  и будет запускаться как один процесс..
>>>>Не выход.
>>>>Нужно ограничить часло запускаемых redir_ов например 5-ю процессами.
>>>>И естественно в фоне...
>>>
>>>
>>>не помню .
>>>man redir
>>От корки до корки.
>>И где?
>
>Где , не знаю , я не смотрел функцию ограничения процессов, я
>и не говорил что есть.
Да я и не настаиваю. Малали знаешь.

"IPFW"
Отправлено Skif , 12-Мрт-05 15:55 
>>Я бы лучше поставил порт /usr/ports/net/redir
>>и запускал бы
>>/usr/local/bin/redir --lport="порт на 111.111.111.111" --cport="порт на 222.222.222.333" --laddr=111.111.111.111 --caddr=222.222.222.333 &
>>Все работает на ура , даже через NAT.
>А что в этом случае с обратными пакетами происходит?
>Короче, более конкретная задача - перенаправление ФТП траффика.
>Т.е. ФТП находится на машине внутри локальной сети и хочется сделать его
>доступным извне.

redirect_port тебе уже посоветовали и даже дали пример реавлизации. в ман ты все же не лазил, что сразу видно.
Для ftp-трафика тебе потребуется перенаправить не один, а два порта - 20 и 21.
Читать, учиться, снова читать... Мы все всегда и снова наступаем на те самые грабли ;)


"IPFW"
Отправлено 999 , 12-Мрт-05 16:22 
>>>Я бы лучше поставил порт /usr/ports/net/redir
>>>и запускал бы
>>>/usr/local/bin/redir --lport="порт на 111.111.111.111" --cport="порт на 222.222.222.333" --laddr=111.111.111.111 --caddr=222.222.222.333 &
>>>Все работает на ура , даже через NAT.
>>А что в этом случае с обратными пакетами происходит?
>>Короче, более конкретная задача - перенаправление ФТП траффика.
>>Т.е. ФТП находится на машине внутри локальной сети и хочется сделать его
>>доступным извне.
>
>redirect_port тебе уже посоветовали и даже дали пример реавлизации. в ман ты
>все же не лазил, что сразу видно.
>Для ftp-трафика тебе потребуется перенаправить не один, а два порта - 20
>и 21.
>Читать, учиться, снова читать... Мы все всегда и снова наступаем на те
>самые грабли ;)
Этим и занят - читаю и наступаю на грабли ;-))
Посоветовали redir пробую...