The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"Редирект портов в pf и iptables"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Открытые системы на сервере (Маршрутизация, NAT / OpenBSD)
Изначальное сообщение [ Отслеживать ]

"Редирект портов в pf и iptables"  +/
Сообщение от Freeman email(??) on 19-Апр-07, 02:06 
Сервер с внешним EXT_INT - 217.XX.XX.155, LOCAL_INT - 192.168.1.1
Машина в локальной сети - 192.168.1.10 а вот шлюз у нее 192.168.1.100

В линуксе правила редиректа:
-A PREROUTING -d 217.XX.XX.155 -p tcp -m multiport --dport 80 -j DNAT --to-destination 192.168.1.10
-A POSTROUTING -d 192.168.1.10 -p tcp -m multiport --dport 80 -j SNAT --to-source 192.168.1.1
Работает без проблем.

Нужно поднять то же самое на openbsd, правило следущее:

rdr pass inet proto tcp from any to 217.XX.XX.155 port 80 -> 192.168.1.10

Это правило работает только если на локальной машине (192.168.1.10) я пропишу дефолтным гейтом 192.168.1.1.

Что нужно добавить? Помогите.

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "Редирект портов в pf и iptables"  +/
Сообщение от ovax email(??) on 19-Апр-07, 05:50 

А нахрена вам второе правило в иптаблес ???
уберите. а то вдруг, захотите ещё одну машину в локалке завести, и кирдык... Не будет у неё интернета.
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

4. "Редирект портов в pf и iptables"  +/
Сообщение от freeman (ok) on 19-Апр-07, 11:18 
>
>А нахрена вам второе правило в иптаблес ???
>уберите. а то вдруг, захотите ещё одну машину в локалке завести, и
>кирдык... Не будет у неё интернета.

Интернет будет, все прекрасно работает.

Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

21. "Редирект портов в pf и iptables"  +/
Сообщение от ovax email(??) on 20-Апр-07, 11:01 
>>
>>А нахрена вам второе правило в иптаблес ???
>>уберите. а то вдруг, захотите ещё одну машину в локалке завести, и
>>кирдык... Не будет у неё интернета.
>
>Интернет будет, все прекрасно работает.

   А, тупанул. Не туда глянул... Работать будет. Но зачем вам эта вторая строка я так и не понял. У вас все машинки внутри сети 192.168.1.0/24 ?

Ответить | Правка | ^ к родителю #4 | Наверх | Cообщить модератору

2. "Редирект портов в pf и iptables"  +/
Сообщение от EL (??) on 19-Апр-07, 07:41 
>Нужно поднять то же самое на openbsd, правило следущее:
>
>rdr pass inet proto tcp from any to 217.XX.XX.155 port 80 -> 192.168.1.10
>
>Это правило работает только если на локальной машине (192.168.1.10) я пропишу дефолтным
>гейтом 192.168.1.1.
>
>Что нужно добавить? Помогите.

А nat 192.168.1.10 -> 217.XX.XX.155 кто делать будет ???


Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

3. "Редирект портов в pf и iptables"  +/
Сообщение от freeman (ok) on 19-Апр-07, 11:17 
>>Нужно поднять то же самое на openbsd, правило следущее:
>>
>>rdr pass inet proto tcp from any to 217.XX.XX.155 port 80 -> 192.168.1.10
>>
>>Это правило работает только если на локальной машине (192.168.1.10) я пропишу дефолтным
>>гейтом 192.168.1.1.
>>
>>Что нужно добавить? Помогите.
>
>А nat 192.168.1.10 -> 217.XX.XX.155 кто делать будет ???

Натил, не помогает.

Ответить | Правка | ^ к родителю #2 | Наверх | Cообщить модератору

5. "Редирект портов в pf и iptables"  +/
Сообщение от niksonnnn email(??) on 19-Апр-07, 11:59 
>>>Нужно поднять то же самое на openbsd, правило следущее:
>>>
>>>rdr pass inet proto tcp from any to 217.XX.XX.155 port 80 -> 192.168.1.10
>>>
>>>Это правило работает только если на локальной машине (192.168.1.10) я пропишу дефолтным
>>>гейтом 192.168.1.1.
>>>
>>>Что нужно добавить? Помогите.
>>
>>А nat 192.168.1.10 -> 217.XX.XX.155 кто делать будет ???
>
>Натил, не помогает.

Как временное решение проблемы могу посоветовать затык в виде rinetd...
Вечером попробую у себя реализовать редирект средствами pf, отпишусь обязательно )

Ответить | Правка | ^ к родителю #3 | Наверх | Cообщить модератору

6. "Редирект портов в pf и iptables"  +/
Сообщение от freeman (ok) on 19-Апр-07, 12:06 
>>>>Нужно поднять то же самое на openbsd, правило следущее:
>>>>
>>>>rdr pass inet proto tcp from any to 217.XX.XX.155 port 80 -> 192.168.1.10
>>>>
>>>>Это правило работает только если на локальной машине (192.168.1.10) я пропишу дефолтным
>>>>гейтом 192.168.1.1.
>>>>
>>>>Что нужно добавить? Помогите.
>>>
>>>А nat 192.168.1.10 -> 217.XX.XX.155 кто делать будет ???
>>
>>Натил, не помогает.
>
>Как временное решение проблемы могу посоветовать затык в виде rinetd...
>Вечером попробую у себя реализовать редирект средствами pf, отпишусь обязательно )

В принципе это решение у меня сейчас и работает, но я не думал, что средствами pf это не возможно сделать.

Ответить | Правка | ^ к родителю #5 | Наверх | Cообщить модератору

7. "Редирект портов в pf и iptables"  +/
Сообщение от niksonnnn email(??) on 19-Апр-07, 12:17 
>>>>>Нужно поднять то же самое на openbsd, правило следущее:
>>>>>
>>>>>rdr pass inet proto tcp from any to 217.XX.XX.155 port 80 -> 192.168.1.10
>>>>>
>>>>>Это правило работает только если на локальной машине (192.168.1.10) я пропишу дефолтным
>>>>>гейтом 192.168.1.1.
>>>>>
>>>>>Что нужно добавить? Помогите.
>>>>
>>>>А nat 192.168.1.10 -> 217.XX.XX.155 кто делать будет ???
>>>
>>>Натил, не помогает.
>>
>>Как временное решение проблемы могу посоветовать затык в виде rinetd...
>>Вечером попробую у себя реализовать редирект средствами pf, отпишусь обязательно )
>
>В принципе это решение у меня сейчас и работает, но я не
>думал, что средствами pf это не возможно сделать.

Итак, всё реализовано и работает с pf:

1) правило редиректа rdr pass on $ext_if proto tcp from any to $ext_if port x -> $internal_server1 port x
2) правило НАТ (очень примечательно, что в оф. документации нет примера такой связки)
binat on $ext_if from $internal_server to $ext_if -> $ext_if

Скажу сразу, у меня всё работает, правила написаны для тестовых целей.
По-другому реализовать не получилось, кроме как через костыль rinetd.

Удачи в настройке)))

Ответить | Правка | ^ к родителю #6 | Наверх | Cообщить модератору

8. "Редирект портов в pf и iptables"  +/
Сообщение от niksonnnn email(??) on 19-Апр-07, 12:22 
>>>>>>Нужно поднять то же самое на openbsd, правило следущее:
>>>>>>
>>>>>>rdr pass inet proto tcp from any to 217.XX.XX.155 port 80 -> 192.168.1.10
>>>>>>
>>>>>>Это правило работает только если на локальной машине (192.168.1.10) я пропишу дефолтным
>>>>>>гейтом 192.168.1.1.
>>>>>>
>>>>>>Что нужно добавить? Помогите.
>>>>>
>>>>>А nat 192.168.1.10 -> 217.XX.XX.155 кто делать будет ???
>>>>
>>>>Натил, не помогает.
>>>
>>>Как временное решение проблемы могу посоветовать затык в виде rinetd...
>>>Вечером попробую у себя реализовать редирект средствами pf, отпишусь обязательно )
>>
>>В принципе это решение у меня сейчас и работает, но я не
>>думал, что средствами pf это не возможно сделать.
>
>Итак, всё реализовано и работает с pf:
>
>1) правило редиректа rdr pass on $ext_if proto tcp from any to $ext_if port x -> $internal_server1 port x
>2) правило НАТ (очень примечательно, что в оф. документации нет примера такой
>связки)
>binat on $ext_if from $internal_server to $ext_if -> $ext_if
>
>Скажу сразу, у меня всё работает, правила написаны для тестовых целей.
>По-другому реализовать не получилось, кроме как через костыль rinetd.
>
>Удачи в настройке)))

ЗЫ. Почитать можно тут http://www.openbsd.org/faq/pf/nat.html

Ответить | Правка | ^ к родителю #7 | Наверх | Cообщить модератору

9. "Редирект портов в pf и iptables"  +/
Сообщение от freeman (ok) on 19-Апр-07, 12:37 
>>>>>>Нужно поднять то же самое на openbsd, правило следущее:
>>>>>>
>>>>>>rdr pass inet proto tcp from any to 217.XX.XX.155 port 80 -> 192.168.1.10
>>>>>>
>>>>>>Это правило работает только если на локальной машине (192.168.1.10) я пропишу дефолтным
>>>>>>гейтом 192.168.1.1.
>>>>>>
>>>>>>Что нужно добавить? Помогите.
>>>>>
>>>>>А nat 192.168.1.10 -> 217.XX.XX.155 кто делать будет ???
>>>>
>>>>Натил, не помогает.
>>>
>>>Как временное решение проблемы могу посоветовать затык в виде rinetd...
>>>Вечером попробую у себя реализовать редирект средствами pf, отпишусь обязательно )
>>
>>В принципе это решение у меня сейчас и работает, но я не
>>думал, что средствами pf это не возможно сделать.
>
>Итак, всё реализовано и работает с pf:
>
>1) правило редиректа rdr pass on $ext_if proto tcp from any to $ext_if port x -> $internal_server1 port x
>2) правило НАТ (очень примечательно, что в оф. документации нет примера такой
>связки)
>binat on $ext_if from $internal_server to $ext_if -> $ext_if
>
>Скажу сразу, у меня всё работает, правила написаны для тестовых целей.
>По-другому реализовать не получилось, кроме как через костыль rinetd.
>
>Удачи в настройке)))

Почему то не работает.

Ответить | Правка | ^ к родителю #7 | Наверх | Cообщить модератору

10. "Редирект портов в pf и iptables"  +/
Сообщение от niksonnnn email(??) on 19-Апр-07, 12:49 
конфиг можно посмотреть?


Ответить | Правка | ^ к родителю #9 | Наверх | Cообщить модератору

11. "Редирект портов в pf и iptables"  +/
Сообщение от freeman (ok) on 19-Апр-07, 13:12 
>конфиг можно посмотреть?

Только эти два правила в pf.conf.

rdr on rl0 proto tcp from any to $in_ext port x -> 192.168.1.10 port x
binat on rl0 from 192.168.1.10 to $in_ext -> $in_ext

Все работает, только если я пропишу шлюз.

Ответить | Правка | ^ к родителю #10 | Наверх | Cообщить модератору

12. "Редирект портов в pf и iptables"  +/
Сообщение от niksonnnn email(??) on 19-Апр-07, 13:14 
>>конфиг можно посмотреть?
>
>Только эти два правила в pf.conf.
>
>rdr on rl0 proto tcp from any to $in_ext port x -> 192.168.1.10 port x
>binat on rl0 from 192.168.1.10 to $in_ext -> $in_ext
>
>Все работает, только если я пропишу шлюз.

Так, минуточку... У вас несколько подсетей и шлюзов?

чёт я уже нечётко вижу себе вашу схему сети... можно попдробнее?

Ответить | Правка | ^ к родителю #11 | Наверх | Cообщить модератору

13. "Редирект портов в pf и iptables"  +/
Сообщение от freeman (ok) on 19-Апр-07, 13:34 
>>>конфиг можно посмотреть?
>>
>>Только эти два правила в pf.conf.
>>
>>rdr on rl0 proto tcp from any to $in_ext port x -> 192.168.1.10 port x
>>binat on rl0 from 192.168.1.10 to $in_ext -> $in_ext
>>
>>Все работает, только если я пропишу шлюз.
>
>Так, минуточку... У вас несколько подсетей и шлюзов?
>
>чёт я уже нечётко вижу себе вашу схему сети... можно попдробнее?

Как я уже писал:
Сервер (openbsd) с внешним EXT_INT - 217.XX.XX.155, LOCAL_INT - 192.168.1.1
Машина в локальной сети - 192.168.1.10 а вот шлюз у нее 192.168.1.100 а не 192.168.1.1 (openbsd)
Все работает, только если я на 192.168.1.10 пропишу гейт 192.168.1.1

Ответить | Правка | ^ к родителю #12 | Наверх | Cообщить модератору

14. "Редирект портов в pf и iptables"  +/
Сообщение от niksonnnn email(??) on 19-Апр-07, 13:56 
>>>>конфиг можно посмотреть?
>>>
>>>Только эти два правила в pf.conf.
>>>
>>>rdr on rl0 proto tcp from any to $in_ext port x -> 192.168.1.10 port x
>>>binat on rl0 from 192.168.1.10 to $in_ext -> $in_ext
>>>
>>>Все работает, только если я пропишу шлюз.
>>
>>Так, минуточку... У вас несколько подсетей и шлюзов?
>>
>>чёт я уже нечётко вижу себе вашу схему сети... можно попдробнее?
>
>Как я уже писал:
>Сервер (openbsd) с внешним EXT_INT - 217.XX.XX.155, LOCAL_INT - 192.168.1.1
>Машина в локальной сети - 192.168.1.10 а вот шлюз у нее 192.168.1.100
>а не 192.168.1.1 (openbsd)
>Все работает, только если я на 192.168.1.10 пропишу гейт 192.168.1.1

ХЗ, ИМХО пакеты должны ходить через тот гейт где осуществляется биНАТ  и вполне естесственно, вышеприведенное правило не будет работать с гейтом 192,168,1,100 )

Ответить | Правка | ^ к родителю #13 | Наверх | Cообщить модератору

15. "Редирект портов в pf и iptables"  +/
Сообщение от freeman (ok) on 19-Апр-07, 13:59 
>>>>>конфиг можно посмотреть?
>>>>
>>>>Только эти два правила в pf.conf.
>>>>
>>>>rdr on rl0 proto tcp from any to $in_ext port x -> 192.168.1.10 port x
>>>>binat on rl0 from 192.168.1.10 to $in_ext -> $in_ext
>>>>
>>>>Все работает, только если я пропишу шлюз.
>>>
>>>Так, минуточку... У вас несколько подсетей и шлюзов?
>>>
>>>чёт я уже нечётко вижу себе вашу схему сети... можно попдробнее?
>>
>>Как я уже писал:
>>Сервер (openbsd) с внешним EXT_INT - 217.XX.XX.155, LOCAL_INT - 192.168.1.1
>>Машина в локальной сети - 192.168.1.10 а вот шлюз у нее 192.168.1.100
>>а не 192.168.1.1 (openbsd)
>>Все работает, только если я на 192.168.1.10 пропишу гейт 192.168.1.1
>
>ХЗ, ИМХО пакеты должны ходить через тот гейт где осуществляется биНАТ  
>и вполне естесственно, вышеприведенное правило не будет работать с гейтом 192,168,1,100
>)

Вот я и говорю, хотя с iptables все работает.

Ответить | Правка | ^ к родителю #14 | Наверх | Cообщить модератору

16. "Редирект портов в pf и iptables"  +/
Сообщение от niksonnnn email(??) on 19-Апр-07, 14:01 
>>>>>>конфиг можно посмотреть?
>>>>>
>>>>>Только эти два правила в pf.conf.
>>>>>
>>>>>rdr on rl0 proto tcp from any to $in_ext port x -> 192.168.1.10 port x
>>>>>binat on rl0 from 192.168.1.10 to $in_ext -> $in_ext
>>>>>
>>>>>Все работает, только если я пропишу шлюз.
>>>>
>>>>Так, минуточку... У вас несколько подсетей и шлюзов?
>>>>
>>>>чёт я уже нечётко вижу себе вашу схему сети... можно попдробнее?
>>>
>>>Как я уже писал:
>>>Сервер (openbsd) с внешним EXT_INT - 217.XX.XX.155, LOCAL_INT - 192.168.1.1
>>>Машина в локальной сети - 192.168.1.10 а вот шлюз у нее 192.168.1.100
>>>а не 192.168.1.1 (openbsd)
>>>Все работает, только если я на 192.168.1.10 пропишу гейт 192.168.1.1
>>
>>ХЗ, ИМХО пакеты должны ходить через тот гейт где осуществляется биНАТ  
>>и вполне естесственно, вышеприведенное правило не будет работать с гейтом 192,168,1,100
>>)
>
>Вот я и говорю, хотя с iptables все работает.

идиотство конечно но может попробовать так? binat on rl0 from 192.168.1.10 to 192,168,1,100 -> 192,168,1,1

Ответить | Правка | ^ к родителю #15 | Наверх | Cообщить модератору

17. "Редирект портов в pf и iptables"  +/
Сообщение от freeman (ok) on 19-Апр-07, 15:03 
>>>>>>>конфиг можно посмотреть?
>>>>>>
>>>>>>Только эти два правила в pf.conf.
>>>>>>
>>>>>>rdr on rl0 proto tcp from any to $in_ext port x -> 192.168.1.10 port x
>>>>>>binat on rl0 from 192.168.1.10 to $in_ext -> $in_ext
>>>>>>
>>>>>>Все работает, только если я пропишу шлюз.
>>>>>
>>>>>Так, минуточку... У вас несколько подсетей и шлюзов?
>>>>>
>>>>>чёт я уже нечётко вижу себе вашу схему сети... можно попдробнее?
>>>>
>>>>Как я уже писал:
>>>>Сервер (openbsd) с внешним EXT_INT - 217.XX.XX.155, LOCAL_INT - 192.168.1.1
>>>>Машина в локальной сети - 192.168.1.10 а вот шлюз у нее 192.168.1.100
>>>>а не 192.168.1.1 (openbsd)
>>>>Все работает, только если я на 192.168.1.10 пропишу гейт 192.168.1.1
>>>
>>>ХЗ, ИМХО пакеты должны ходить через тот гейт где осуществляется биНАТ  
>>>и вполне естесственно, вышеприведенное правило не будет работать с гейтом 192,168,1,100
>>>)
>>
>>Вот я и говорю, хотя с iptables все работает.
>
>идиотство конечно но может попробовать так? binat on rl0 from 192.168.1.10 to 192,168,1,100 -> 192,168,1,1

Не работает:-)

Ответить | Правка | ^ к родителю #16 | Наверх | Cообщить модератору

18. "Редирект портов в pf и iptables"  +/
Сообщение от niksonnnn email(??) on 19-Апр-07, 16:28 
>>>>>>>>конфиг можно посмотреть?
>>>>>>>
>>>>>>>Только эти два правила в pf.conf.
>>>>>>>
>>>>>>>rdr on rl0 proto tcp from any to $in_ext port x -> 192.168.1.10 port x
>>>>>>>binat on rl0 from 192.168.1.10 to $in_ext -> $in_ext
>>>>>>>
>>>>>>>Все работает, только если я пропишу шлюз.
>>>>>>
>>>>>>Так, минуточку... У вас несколько подсетей и шлюзов?
>>>>>>
>>>>>>чёт я уже нечётко вижу себе вашу схему сети... можно попдробнее?
>>>>>
>>>>>Как я уже писал:
>>>>>Сервер (openbsd) с внешним EXT_INT - 217.XX.XX.155, LOCAL_INT - 192.168.1.1
>>>>>Машина в локальной сети - 192.168.1.10 а вот шлюз у нее 192.168.1.100
>>>>>а не 192.168.1.1 (openbsd)
>>>>>Все работает, только если я на 192.168.1.10 пропишу гейт 192.168.1.1
>>>>
>>>>ХЗ, ИМХО пакеты должны ходить через тот гейт где осуществляется биНАТ  
>>>>и вполне естесственно, вышеприведенное правило не будет работать с гейтом 192,168,1,100
>>>>)
>>>
>>>Вот я и говорю, хотя с iptables все работает.
>>
>>идиотство конечно но может попробовать так? binat on rl0 from 192.168.1.10 to 192,168,1,100 -> 192,168,1,1
>
>Не работает:-)


входящий траф для перенаправляемого протоколя разрешен? (очень глупый вопрос... если есть контакт при прописаном гейте 192,168,1,1, о чем может идти речь ;-) )

навскидку продампить интерфейс... Почему не используете 192,168,1,1 в качестве шлюза - ведь это логически правильно?!

Ответить | Правка | ^ к родителю #17 | Наверх | Cообщить модератору

19. "Редирект портов в pf и iptables"  +/
Сообщение от freeman (??) on 19-Апр-07, 19:46 
>>>>>>>>>конфиг можно посмотреть?
>>>>>>>>
>>>>>>>>Только эти два правила в pf.conf.
>>>>>>>>
>>>>>>>>rdr on rl0 proto tcp from any to $in_ext port x -> 192.168.1.10 port x
>>>>>>>>binat on rl0 from 192.168.1.10 to $in_ext -> $in_ext
>>>>>>>>
>>>>>>>>Все работает, только если я пропишу шлюз.
>>>>>>>
>>>>>>>Так, минуточку... У вас несколько подсетей и шлюзов?
>>>>>>>
>>>>>>>чёт я уже нечётко вижу себе вашу схему сети... можно попдробнее?
>>>>>>
>>>>>>Как я уже писал:
>>>>>>Сервер (openbsd) с внешним EXT_INT - 217.XX.XX.155, LOCAL_INT - 192.168.1.1
>>>>>>Машина в локальной сети - 192.168.1.10 а вот шлюз у нее 192.168.1.100
>>>>>>а не 192.168.1.1 (openbsd)
>>>>>>Все работает, только если я на 192.168.1.10 пропишу гейт 192.168.1.1
>>>>>
>>>>>ХЗ, ИМХО пакеты должны ходить через тот гейт где осуществляется биНАТ  
>>>>>и вполне естесственно, вышеприведенное правило не будет работать с гейтом 192,168,1,100
>>>>>)
>>>>
>>>>Вот я и говорю, хотя с iptables все работает.
>>>
>>>идиотство конечно но может попробовать так? binat on rl0 from 192.168.1.10 to 192,168,1,100 -> 192,168,1,1
>>
>>Не работает:-)
>
>
>входящий траф для перенаправляемого протоколя разрешен? (очень глупый вопрос... если есть контакт
>при прописаном гейте 192,168,1,1, о чем может идти речь ;-) )
>
>
>навскидку продампить интерфейс... Почему не используете 192,168,1,1 в качестве шлюза - ведь
>это логически правильно?!

В нашем случае это не возможно. Оказывается линуксовый netfilter намного круче. Не ожидал.

Ответить | Правка | ^ к родителю #18 | Наверх | Cообщить модератору

20. "Редирект портов в pf и iptables"  +/
Сообщение от niksonnnn email(??) on 20-Апр-07, 09:06 
>>>>>>>>>>конфиг можно посмотреть?
>>>>>>>>>
>>>>>>>>>Только эти два правила в pf.conf.
>>>>>>>>>
>>>>>>>>>rdr on rl0 proto tcp from any to $in_ext port x -> 192.168.1.10 port x
>>>>>>>>>binat on rl0 from 192.168.1.10 to $in_ext -> $in_ext
>>>>>>>>>
>>>>>>>>>Все работает, только если я пропишу шлюз.
>>>>>>>>
>>>>>>>>Так, минуточку... У вас несколько подсетей и шлюзов?
>>>>>>>>
>>>>>>>>чёт я уже нечётко вижу себе вашу схему сети... можно попдробнее?
>>>>>>>
>>>>>>>Как я уже писал:
>>>>>>>Сервер (openbsd) с внешним EXT_INT - 217.XX.XX.155, LOCAL_INT - 192.168.1.1
>>>>>>>Машина в локальной сети - 192.168.1.10 а вот шлюз у нее 192.168.1.100
>>>>>>>а не 192.168.1.1 (openbsd)
>>>>>>>Все работает, только если я на 192.168.1.10 пропишу гейт 192.168.1.1
>>>>>>
>>>>>>ХЗ, ИМХО пакеты должны ходить через тот гейт где осуществляется биНАТ  
>>>>>>и вполне естесственно, вышеприведенное правило не будет работать с гейтом 192,168,1,100
>>>>>>)
>>>>>
>>>>>Вот я и говорю, хотя с iptables все работает.
>>>>
>>>>идиотство конечно но может попробовать так? binat on rl0 from 192.168.1.10 to 192,168,1,100 -> 192,168,1,1
>>>
>>>Не работает:-)
>>
>>
>>входящий траф для перенаправляемого протоколя разрешен? (очень глупый вопрос... если есть контакт
>>при прописаном гейте 192,168,1,1, о чем может идти речь ;-) )
>>
>>
>>навскидку продампить интерфейс... Почему не используете 192,168,1,1 в качестве шлюза - ведь
>>это логически правильно?!
>
>В нашем случае это не возможно. Оказывается линуксовый netfilter намного круче. Не
>ожидал.

ИМХО вовсе он не круче... да и нет понятия такого как круче или не руче.. всё зависит от рук и головы)))

А делать выводы не разобравшись - это не есть правильно... как я понял у вас два шлюза... если пакеты ходят через 192,168,1,100 то, что на ней стоит?


Ответить | Правка | ^ к родителю #19 | Наверх | Cообщить модератору

22. "Редирект портов в pf и iptables"  +/
Сообщение от freeman (ok) on 20-Апр-07, 13:23 
>>>>>>>>>>>конфиг можно посмотреть?
>>>>>>>>>>
>>>>>>>>>>Только эти два правила в pf.conf.
>>>>>>>>>>
>>>>>>>>>>rdr on rl0 proto tcp from any to $in_ext port x -> 192.168.1.10 port x
>>>>>>>>>>binat on rl0 from 192.168.1.10 to $in_ext -> $in_ext
>>>>>>>>>>
>>>>>>>>>>Все работает, только если я пропишу шлюз.
>>>>>>>>>
>>>>>>>>>Так, минуточку... У вас несколько подсетей и шлюзов?
>>>>>>>>>
>>>>>>>>>чёт я уже нечётко вижу себе вашу схему сети... можно попдробнее?
>>>>>>>>
>>>>>>>>Как я уже писал:
>>>>>>>>Сервер (openbsd) с внешним EXT_INT - 217.XX.XX.155, LOCAL_INT - 192.168.1.1
>>>>>>>>Машина в локальной сети - 192.168.1.10 а вот шлюз у нее 192.168.1.100
>>>>>>>>а не 192.168.1.1 (openbsd)
>>>>>>>>Все работает, только если я на 192.168.1.10 пропишу гейт 192.168.1.1
>>>>>>>
>>>>>>>ХЗ, ИМХО пакеты должны ходить через тот гейт где осуществляется биНАТ  
>>>>>>>и вполне естесственно, вышеприведенное правило не будет работать с гейтом 192,168,1,100
>>>>>>>)
>>>>>>
>>>>>>Вот я и говорю, хотя с iptables все работает.
>>>>>
>>>>>идиотство конечно но может попробовать так? binat on rl0 from 192.168.1.10 to 192,168,1,100 -> 192,168,1,1
>>>>
>>>>Не работает:-)
>>>
>>>
>>>входящий траф для перенаправляемого протоколя разрешен? (очень глупый вопрос... если есть контакт
>>>при прописаном гейте 192,168,1,1, о чем может идти речь ;-) )
>>>
>>>
>>>навскидку продампить интерфейс... Почему не используете 192,168,1,1 в качестве шлюза - ведь
>>>это логически правильно?!
>>
>>В нашем случае это не возможно. Оказывается линуксовый netfilter намного круче. Не
>>ожидал.
>
>ИМХО вовсе он не круче... да и нет понятия такого как круче
>или не руче.. всё зависит от рук и головы)))
>
>А делать выводы не разобравшись - это не есть правильно... как я
>понял у вас два шлюза... если пакеты ходят через 192,168,1,100 то,
>что на ней стоит?

Это просто факты. Я уже три дня бьюсь, хотя на линуксе это сделал за 10 минут.
Давайте так, забудем вообще про шлюз. Даже если я не выставлю гейт на 192.168.1.10, на линуксе все работает.

Ответить | Правка | ^ к родителю #20 | Наверх | Cообщить модератору

23. "Редирект портов в pf и iptables"  +/
Сообщение от niksonnnn email(??) on 20-Апр-07, 13:47 
>>>>>>>>>>>>конфиг можно посмотреть?
>>>>>>>>>>>
>>>>>>>>>>>Только эти два правила в pf.conf.
>>>>>>>>>>>
>>>>>>>>>>>rdr on rl0 proto tcp from any to $in_ext port x -> 192.168.1.10 port x
>>>>>>>>>>>binat on rl0 from 192.168.1.10 to $in_ext -> $in_ext
>>>>>>>>>>>
>>>>>>>>>>>Все работает, только если я пропишу шлюз.
>>>>>>>>>>
>>>>>>>>>>Так, минуточку... У вас несколько подсетей и шлюзов?
>>>>>>>>>>
>>>>>>>>>>чёт я уже нечётко вижу себе вашу схему сети... можно попдробнее?
>>>>>>>>>
>>>>>>>>>Как я уже писал:
>>>>>>>>>Сервер (openbsd) с внешним EXT_INT - 217.XX.XX.155, LOCAL_INT - 192.168.1.1
>>>>>>>>>Машина в локальной сети - 192.168.1.10 а вот шлюз у нее 192.168.1.100
>>>>>>>>>а не 192.168.1.1 (openbsd)
>>>>>>>>>Все работает, только если я на 192.168.1.10 пропишу гейт 192.168.1.1
>>>>>>>>
>>>>>>>>ХЗ, ИМХО пакеты должны ходить через тот гейт где осуществляется биНАТ  
>>>>>>>>и вполне естесственно, вышеприведенное правило не будет работать с гейтом 192,168,1,100
>>>>>>>>)
>>>>>>>
>>>>>>>Вот я и говорю, хотя с iptables все работает.
>>>>>>
>>>>>>идиотство конечно но может попробовать так? binat on rl0 from 192.168.1.10 to 192,168,1,100 -> 192,168,1,1
>>>>>
>>>>>Не работает:-)
>>>>
>>>>
>>>>входящий траф для перенаправляемого протоколя разрешен? (очень глупый вопрос... если есть контакт
>>>>при прописаном гейте 192,168,1,1, о чем может идти речь ;-) )
>>>>
>>>>
>>>>навскидку продампить интерфейс... Почему не используете 192,168,1,1 в качестве шлюза - ведь
>>>>это логически правильно?!
>>>
>>>В нашем случае это не возможно. Оказывается линуксовый netfilter намного круче. Не
>>>ожидал.
>>
>>ИМХО вовсе он не круче... да и нет понятия такого как круче
>>или не руче.. всё зависит от рук и головы)))
>>
>>А делать выводы не разобравшись - это не есть правильно... как я
>>понял у вас два шлюза... если пакеты ходят через 192,168,1,100 то,
>>что на ней стоит?
>
>Это просто факты. Я уже три дня бьюсь, хотя на линуксе это
>сделал за 10 минут.
>Давайте так, забудем вообще про шлюз. Даже если я не выставлю гейт
>на 192.168.1.10, на линуксе все работает.

Хорошо... что показал мониторинг ??? куда пакеты идут? куда отправляются ответные пакеты?

Ответить | Правка | ^ к родителю #22 | Наверх | Cообщить модератору

24. "Редирект портов в pf и iptables"  +/
Сообщение от Oyyo on 20-Апр-07, 14:21 

>Это просто факты. Я уже три дня бьюсь, хотя на линуксе это
>сделал за 10 минут.
Я уже два дня перечитываю ваш первый пост и ни как не пойму что вы хотите сделать.
>Давайте так, забудем вообще про шлюз. Даже если я не выставлю гейт
>на 192.168.1.10, на линуксе все работает.

Настоко не правильно поставлен вопрост, может нужно не перенести правила, а рассказать про конечную цель?

>Сервер с внешним EXT_INT - 217.XX.XX.155, LOCAL_INT - 192.168.1.1
>Машина в локальной сети - 192.168.1.10 а вот шлюз у нее 192.168.1.100
Вы подключены к ИНЕТу не через локальную сеть, и хотите предоставить для инета веб сервис, но не хотите его поднимать на своей машине, а перенаправляете запросы на 80 порт другой машине в локальной сети и следующее правило понятно и будет работать
>-A PREROUTING -d 217.XX.XX.155 -p tcp -m multiport --dport 80 -j DNAT --to-destination 192.168.1.10
а вот это совсем не понятно и для чего оно если вы не являетесть шлюзом.
>-A POSTROUTING -d 192.168.1.10 -p tcp -m multiport --dport 80 -j SNAT --to-source 192.168.1.1
без него всё должно прекрасно работать

Иными словами у вас для интернета существует DMZ, вот на основании этого и стройте правила в pf

Ответить | Правка | ^ к родителю #22 | Наверх | Cообщить модератору

25. "Редирект портов в pf и iptables"  +/
Сообщение от niksonnnn email(??) on 20-Апр-07, 14:32 
>
>>Это просто факты. Я уже три дня бьюсь, хотя на линуксе это
>>сделал за 10 минут.
>Я уже два дня перечитываю ваш первый пост и ни как не
>пойму что вы хотите сделать.
>>Давайте так, забудем вообще про шлюз. Даже если я не выставлю гейт
>>на 192.168.1.10, на линуксе все работает.
>
>Настоко не правильно поставлен вопрост, может нужно не перенести правила, а рассказать
>про конечную цель?
>
>>Сервер с внешним EXT_INT - 217.XX.XX.155, LOCAL_INT - 192.168.1.1
>>Машина в локальной сети - 192.168.1.10 а вот шлюз у нее 192.168.1.100
>Вы подключены к ИНЕТу не через локальную сеть, и хотите предоставить для
>инета веб сервис, но не хотите его поднимать на своей машине,
>а перенаправляете запросы на 80 порт другой машине в локальной сети
>и следующее правило понятно и будет работать
>>-A PREROUTING -d 217.XX.XX.155 -p tcp -m multiport --dport 80 -j DNAT --to-destination 192.168.1.10
>а вот это совсем не понятно и для чего оно если вы
>не являетесть шлюзом.
>>-A POSTROUTING -d 192.168.1.10 -p tcp -m multiport --dport 80 -j SNAT --to-source 192.168.1.1
>без него всё должно прекрасно работать
>
>Иными словами у вас для интернета существует DMZ, вот на основании этого
>и стройте правила в pf

нет на суд общественности будет представлено только 2 правила из pf, а об остальном нужно догадаться....

Ответить | Правка | ^ к родителю #24 | Наверх | Cообщить модератору

26. "Редирект портов в pf и iptables"  +/
Сообщение от freeman (??) on 20-Апр-07, 15:08 
>
>>Это просто факты. Я уже три дня бьюсь, хотя на линуксе это
>>сделал за 10 минут.
>Я уже два дня перечитываю ваш первый пост и ни как не
>пойму что вы хотите сделать.
>>Давайте так, забудем вообще про шлюз. Даже если я не выставлю гейт
>>на 192.168.1.10, на линуксе все работает.
>
>Настоко не правильно поставлен вопрост, может нужно не перенести правила, а рассказать
>про конечную цель?
>
>>Сервер с внешним EXT_INT - 217.XX.XX.155, LOCAL_INT - 192.168.1.1
>>Машина в локальной сети - 192.168.1.10 а вот шлюз у нее 192.168.1.100
>Вы подключены к ИНЕТу не через локальную сеть, и хотите предоставить для
>инета веб сервис, но не хотите его поднимать на своей машине,
>а перенаправляете запросы на 80 порт другой машине в локальной сети
>и следующее правило понятно и будет работать
>>-A PREROUTING -d 217.XX.XX.155 -p tcp -m multiport --dport 80 -j DNAT --to-destination 192.168.1.10
>а вот это совсем не понятно и для чего оно если вы
>не являетесть шлюзом.
>>-A POSTROUTING -d 192.168.1.10 -p tcp -m multiport --dport 80 -j SNAT --to-source 192.168.1.1
>без него всё должно прекрасно работать
>
>Иными словами у вас для интернета существует DMZ, вот на основании этого
>и стройте правила в pf

Объясняю, это правило:
>>-A POSTROUTING -d 192.168.1.10 -p tcp -m multiport --dport 80 -j SNAT --to-source 192.168.1.1
Для того, чтобы машина 192.168.1.10 не зависела от шлюза выставленного на ней.

Ответить | Правка | ^ к родителю #24 | Наверх | Cообщить модератору

27. "Редирект портов в pf и iptables"  +/
Сообщение от niksonnnn email(??) on 20-Апр-07, 15:22 

>
>Объясняю, это правило:
>>>-A POSTROUTING -d 192.168.1.10 -p tcp -m multiport --dport 80 -j SNAT --to-source 192.168.1.1

192,168,1,10 должна оригинатиться от имени 192,168,1,1 ?

>Для того, чтобы машина 192.168.1.10 не зависела от шлюза выставленного на ней.
>

Уважаемый, а ЗАЧЕМ???? тогда эти загогулины с 192,168,1,100??? Ведь всёравно машина не должна зависеть от шлюза... Если интересно просто науки ради, то тогда нужно поизвращаться...
Мне одно пока непонятно, каким образом пакеты заворачиваются гейтом 192,168,1,1 когда прописан гейт 192,168,1,100... значит пакеты не проходят через 192,168,1,100... ИМХО нуна вам поэкспериментировать с nat/binat для пары 192.168.1.10->192.168.1.1 раз уж вы не показываете конфы в конфе (извините за каламбур :)

Ответить | Правка | ^ к родителю #26 | Наверх | Cообщить модератору

28. "Редирект портов в pf и iptables"  +/
Сообщение от Oyyo on 20-Апр-07, 17:24 
2 freeman
видимо вы не совсем правильно понимаете работу файервола
>Для того, чтобы машина 192.168.1.10 не зависела от шлюза выставленного на ней.
она всегда будет зависить от дефолтного шлюза, все ответы на запросы по 80 порту пришедшие с 192.168.1.1 (даже если запросы прошли DNAT, для 192.168.1.10 они выглядят как от 192.168.1.1) будут отосланы 192.168.1.1, а дальше файервол решает судьбу этих пакетов и согласно правила DNATа он отправит пакеты куда следует

правило
>>>-A POSTROUTING -d 192.168.1.10 -p tcp -m multiport --dport 80 -j SNAT --to-source 192.168.1.1
у вас ни как не работает, оно будет работать только в том случае если вы (192.168.1.1) будете шлюзом для 192.168.1.10 , правило работать будет, вот только пакеты всёравно ни куда не пойдут.
Вобщем слишком много нужно объяснять, перечитайте внимательно iptables туториал и всё поймёте
http://www.opennet.dev/docs/RUS/iptables/

Ответить | Правка | ^ к родителю #27 | Наверх | Cообщить модератору

30. "Редирект портов в pf и iptables"  +/
Сообщение от freeman (ok) on 20-Апр-07, 17:38 
>2 freeman
>видимо вы не совсем правильно понимаете работу файервола
>>Для того, чтобы машина 192.168.1.10 не зависела от шлюза выставленного на ней.
>она всегда будет зависить от дефолтного шлюза, все ответы на запросы по
>80 порту пришедшие с 192.168.1.1 (даже если запросы прошли DNAT, для
>192.168.1.10 они выглядят как от 192.168.1.1) будут отосланы 192.168.1.1, а дальше
>файервол решает судьбу этих пакетов и согласно правила DNATа он отправит
>пакеты куда следует
>
>правило
>>>>-A POSTROUTING -d 192.168.1.10 -p tcp -m multiport --dport 80 -j SNAT --to-source 192.168.1.1
>у вас ни как не работает, оно будет работать только в том
>случае если вы (192.168.1.1) будете шлюзом для 192.168.1.10 , правило работать
>будет, вот только пакеты всёравно ни куда не пойдут.
>Вобщем слишком много нужно объяснять, перечитайте внимательно iptables туториал и всё поймёте
>
>http://www.opennet.dev/docs/RUS/iptables/

Уважаемый перечитайте сами... Все работает и довольно успешно.

Ответить | Правка | ^ к родителю #28 | Наверх | Cообщить модератору

29. "Редирект портов в pf и iptables"  +/
Сообщение от freeman (ok) on 20-Апр-07, 17:37 
>
>>
>>Объясняю, это правило:
>>>>-A POSTROUTING -d 192.168.1.10 -p tcp -m multiport --dport 80 -j SNAT --to-source 192.168.1.1
>
>192,168,1,10 должна оригинатиться от имени 192,168,1,1 ?
>
>>Для того, чтобы машина 192.168.1.10 не зависела от шлюза выставленного на ней.
>>
>
>Уважаемый, а ЗАЧЕМ???? тогда эти загогулины с 192,168,1,100??? Ведь всёравно машина не
>должна зависеть от шлюза... Если интересно просто науки ради, то тогда
>нужно поизвращаться...
>Мне одно пока непонятно, каким образом пакеты заворачиваются гейтом 192,168,1,1 когда прописан гейт 192,168,1,100... значит пакеты не проходят через 192,168,1,100... ИМХО нуна вам поэкспериментировать с nat/binat для пары 192.168.1.10->192.168.1.1 раз уж вы не показываете конфы в конфе (извините за каламбур :)

Ок объясню. На машине 192.168.1.10 прописан гейт 192.168.1.100 для того чтобы связать его с локальной сеткой 192.168.2.0/24. Менять что то на 192.168.1.10 нельзя. Я для себя уяснил одно, на линуксе работает, а на бсд нет.
Объясните какой конф нужен? Если pf.conf, то я уже сказал, там только одно правило редиректа. Как в принципе и в конфе iptables прописаны два вышеуказанных правила. Форвардинг включен.


P.S. Просьба, пожалуйста не задавайте вопросы зачем это нужно. Сетка очень сложная. Долго объяснять.

Ответить | Правка | ^ к родителю #27 | Наверх | Cообщить модератору

31. "Редирект портов в pf и iptables"  +/
Сообщение от niksonnnn (??) on 21-Апр-07, 09:57 
>>
>>>
>>>Объясняю, это правило:
>>>>>-A POSTROUTING -d 192.168.1.10 -p tcp -m multiport --dport 80 -j SNAT --to-source 192.168.1.1
>>
>>192,168,1,10 должна оригинатиться от имени 192,168,1,1 ?
>>
>>>Для того, чтобы машина 192.168.1.10 не зависела от шлюза выставленного на ней.
>>>
>>
>>Уважаемый, а ЗАЧЕМ???? тогда эти загогулины с 192,168,1,100??? Ведь всёравно машина не
>>должна зависеть от шлюза... Если интересно просто науки ради, то тогда
>>нужно поизвращаться...
>>Мне одно пока непонятно, каким образом пакеты заворачиваются гейтом 192,168,1,1 когда прописан гейт 192,168,1,100... значит пакеты не проходят через 192,168,1,100... ИМХО нуна вам поэкспериментировать с nat/binat для пары 192.168.1.10->192.168.1.1 раз уж вы не показываете конфы в конфе (извините за каламбур :)
>
>Ок объясню. На машине 192.168.1.10 прописан гейт 192.168.1.100 для того чтобы связать
>его с локальной сеткой 192.168.2.0/24. Менять что то на 192.168.1.10 нельзя.
>Я для себя уяснил одно, на линуксе работает, а на бсд
>нет.
>Объясните какой конф нужен? Если pf.conf, то я уже сказал, там только
>одно правило редиректа. Как в принципе и в конфе iptables прописаны
>два вышеуказанных правила. Форвардинг включен.
>
>
>P.S. Просьба, пожалуйста не задавайте вопросы зачем это нужно. Сетка очень сложная.
>Долго объяснять.


Покажите /etc/pf.conf целиком тогда....
а то только две строчки нам показывают и всё, гадайте и придумывайте...  
кружок юных телепатов понимаешь....

Ответить | Правка | ^ к родителю #29 | Наверх | Cообщить модератору

32. "Редирект портов в pf и iptables"  +/
Сообщение от freeman (ok) on 21-Апр-07, 12:48 
>>>
>>>>
>>>>Объясняю, это правило:
>>>>>>-A POSTROUTING -d 192.168.1.10 -p tcp -m multiport --dport 80 -j SNAT --to-source 192.168.1.1
>>>
>>>192,168,1,10 должна оригинатиться от имени 192,168,1,1 ?
>>>
>>>>Для того, чтобы машина 192.168.1.10 не зависела от шлюза выставленного на ней.
>>>>
>>>
>>>Уважаемый, а ЗАЧЕМ???? тогда эти загогулины с 192,168,1,100??? Ведь всёравно машина не
>>>должна зависеть от шлюза... Если интересно просто науки ради, то тогда
>>>нужно поизвращаться...
>>>Мне одно пока непонятно, каким образом пакеты заворачиваются гейтом 192,168,1,1 когда прописан гейт 192,168,1,100... значит пакеты не проходят через 192,168,1,100... ИМХО нуна вам поэкспериментировать с nat/binat для пары 192.168.1.10->192.168.1.1 раз уж вы не показываете конфы в конфе (извините за каламбур :)
>>
>>Ок объясню. На машине 192.168.1.10 прописан гейт 192.168.1.100 для того чтобы связать
>>его с локальной сеткой 192.168.2.0/24. Менять что то на 192.168.1.10 нельзя.
>>Я для себя уяснил одно, на линуксе работает, а на бсд
>>нет.
>>Объясните какой конф нужен? Если pf.conf, то я уже сказал, там только
>>одно правило редиректа. Как в принципе и в конфе iptables прописаны
>>два вышеуказанных правила. Форвардинг включен.
>>
>>
>>P.S. Просьба, пожалуйста не задавайте вопросы зачем это нужно. Сетка очень сложная.
>>Долго объяснять.
>
>
>Покажите /etc/pf.conf целиком тогда....
>а то только две строчки нам показывают и всё, гадайте и придумывайте...
>
>кружок юных телепатов понимаешь....

Мне уже смешно... Вы посты не читаете? Я уже несколько раз сказал что у меня в pf.conf
Повторяю еще раз.

# cat /etc/pf.conf
rdr pass inet proto tcp from any to 217.XX.XX.155 port 80 -> 192.168.1.10
#

Все. Больше никаких правил нет.

Ответить | Правка | ^ к родителю #31 | Наверх | Cообщить модератору

33. "Редирект портов в pf и iptables"  +/
Сообщение от niksonnnn (??) on 21-Апр-07, 15:32 
>>>>
>>>>>
>>>>>Объясняю, это правило:
>>>>>>>-A POSTROUTING -d 192.168.1.10 -p tcp -m multiport --dport 80 -j SNAT --to-source 192.168.1.1
>>>>
>>>>192,168,1,10 должна оригинатиться от имени 192,168,1,1 ?
>>>>
>>>>>Для того, чтобы машина 192.168.1.10 не зависела от шлюза выставленного на ней.
>>>>>
>>>>
>>>>Уважаемый, а ЗАЧЕМ???? тогда эти загогулины с 192,168,1,100??? Ведь всёравно машина не
>>>>должна зависеть от шлюза... Если интересно просто науки ради, то тогда
>>>>нужно поизвращаться...
>>>>Мне одно пока непонятно, каким образом пакеты заворачиваются гейтом 192,168,1,1 когда прописан гейт 192,168,1,100... значит пакеты не проходят через 192,168,1,100... ИМХО нуна вам поэкспериментировать с nat/binat для пары 192.168.1.10->192.168.1.1 раз уж вы не показываете конфы в конфе (извините за каламбур :)
>>>
>>>Ок объясню. На машине 192.168.1.10 прописан гейт 192.168.1.100 для того чтобы связать
>>>его с локальной сеткой 192.168.2.0/24. Менять что то на 192.168.1.10 нельзя.
>>>Я для себя уяснил одно, на линуксе работает, а на бсд
>>>нет.
>>>Объясните какой конф нужен? Если pf.conf, то я уже сказал, там только
>>>одно правило редиректа. Как в принципе и в конфе iptables прописаны
>>>два вышеуказанных правила. Форвардинг включен.
>>>
>>>
>>>P.S. Просьба, пожалуйста не задавайте вопросы зачем это нужно. Сетка очень сложная.
>>>Долго объяснять.
>>
>>
>>Покажите /etc/pf.conf целиком тогда....
>>а то только две строчки нам показывают и всё, гадайте и придумывайте...
>>
>>кружок юных телепатов понимаешь....
>
>Мне уже смешно... Вы посты не читаете? Я уже несколько раз сказал
>что у меня в pf.conf
>Повторяю еще раз.
>
># cat /etc/pf.conf
>rdr pass inet proto tcp from any to 217.XX.XX.155 port 80 -> 192.168.1.10
>#
>
>Все. Больше никаких правил нет.

binat GDE ???

Ответить | Правка | ^ к родителю #32 | Наверх | Cообщить модератору

34. "Редирект портов в pf и iptables"  +/
Сообщение от niksonnnn (??) on 23-Апр-07, 17:22 
Столкнулся с похожей проблемой :

1) FreeBSD 6.2
2) pf
3) канал от прова по ADSL

2 часа шаманств ничего не дали.... ИМХО существует какая-то зависимость правильности работы pf от нормально реализованного маршрута от прова....

Если есть мнения у уважаемой общественности по данному сабжу, то прошу делится )))

Ответить | Правка | ^ к родителю #33 | Наверх | Cообщить модератору

36. "Редирект портов в pf и iptables"  +/
Сообщение от freeman (ok) on 23-Апр-07, 17:41 
Как не прискорбно, но приходится констатировать тот факт, что в pf это не возможно.
Ответить | Правка | ^ к родителю #34 | Наверх | Cообщить модератору

37. "Редирект портов в pf и iptables"  +/
Сообщение от niksonnnn (??) on 23-Апр-07, 18:18 
>Как не прискорбно, но приходится констатировать тот факт, что в pf это
>не возможно.

У меня всё сносно работает.... однако для вашей задачи ИМХО действительно нет решения(((
Дык тогда для чего редирект нужен???
Неужели нет решения нормального редиректа для pf ????

Ответить | Правка | ^ к родителю #36 | Наверх | Cообщить модератору

35. "Редирект портов в pf и iptables"  +/
Сообщение от freeman (ok) on 23-Апр-07, 17:38 
>>>>>
>>>>>>
>>>>>>Объясняю, это правило:
>>>>>>>>-A POSTROUTING -d 192.168.1.10 -p tcp -m multiport --dport 80 -j SNAT --to-source 192.168.1.1
>>>>>
>>>>>192,168,1,10 должна оригинатиться от имени 192,168,1,1 ?
>>>>>
>>>>>>Для того, чтобы машина 192.168.1.10 не зависела от шлюза выставленного на ней.
>>>>>>
>>>>>
>>>>>Уважаемый, а ЗАЧЕМ???? тогда эти загогулины с 192,168,1,100??? Ведь всёравно машина не
>>>>>должна зависеть от шлюза... Если интересно просто науки ради, то тогда
>>>>>нужно поизвращаться...
>>>>>Мне одно пока непонятно, каким образом пакеты заворачиваются гейтом 192,168,1,1 когда прописан гейт 192,168,1,100... значит пакеты не проходят через 192,168,1,100... ИМХО нуна вам поэкспериментировать с nat/binat для пары 192.168.1.10->192.168.1.1 раз уж вы не показываете конфы в конфе (извините за каламбур :)
>>>>
>>>>Ок объясню. На машине 192.168.1.10 прописан гейт 192.168.1.100 для того чтобы связать
>>>>его с локальной сеткой 192.168.2.0/24. Менять что то на 192.168.1.10 нельзя.
>>>>Я для себя уяснил одно, на линуксе работает, а на бсд
>>>>нет.
>>>>Объясните какой конф нужен? Если pf.conf, то я уже сказал, там только
>>>>одно правило редиректа. Как в принципе и в конфе iptables прописаны
>>>>два вышеуказанных правила. Форвардинг включен.
>>>>
>>>>
>>>>P.S. Просьба, пожалуйста не задавайте вопросы зачем это нужно. Сетка очень сложная.
>>>>Долго объяснять.
>>>
>>>
>>>Покажите /etc/pf.conf целиком тогда....
>>>а то только две строчки нам показывают и всё, гадайте и придумывайте...
>>>
>>>кружок юных телепатов понимаешь....
>>
>>Мне уже смешно... Вы посты не читаете? Я уже несколько раз сказал
>>что у меня в pf.conf
>>Повторяю еще раз.
>>
>># cat /etc/pf.conf
>>rdr pass inet proto tcp from any to 217.XX.XX.155 port 80 -> 192.168.1.10
>>#
>>
>>Все. Больше никаких правил нет.
>
>binat GDE ???

Нет, потому что он не поможет.

Ответить | Правка | ^ к родителю #33 | Наверх | Cообщить модератору

38. "Редирект портов в pf и iptables"  +/
Сообщение от reader (ok) on 23-Апр-07, 18:39 
В линуксе правила редиректа:
-A PREROUTING -d 217.XX.XX.155 -p tcp -m multiport --dport 80 -j DNAT --to-destination 192.168.1.10
-A POSTROUTING -d 192.168.1.10 -p tcp -m multiport --dport 80 -j SNAT --to-source 192.168.1.1

rdr on inet proto tcp from any to 217.XX.XX.155 port 80 -> 192.168.1.10
nat on $внутренний_интерфейс inet from any to 192.168.1.10 -> 192.168.1.1
дальше правила фильтров

если поставить pass , то пойдут без проверки в фильтрах , но незнаю попадут ли на цепочку nat, поэтому убрал.

без nat , ответы с 192.168.1.10 пойдут согласно таблицы маршрутов на 192.168.1.10_машине и если внешних IP несколько, то не факт , что ответ клиенту отправится с 217.XX.XX.155

Ответить | Правка | ^ к родителю #35 | Наверх | Cообщить модератору

39. "Редирект портов в pf и iptables"  +/
Сообщение от Linus Torvalds on 25-Апр-07, 21:34 
Или я чего то упустил или ...

... freeman'у на .10 нужно прописать .1 как дефаулт гейтвей и добавить статик раут на .2.0 -> .100
... и все :)

Ответить | Правка | ^ к родителю #38 | Наверх | Cообщить модератору

40. "Редирект портов в pf и iptables"  +/
Сообщение от freeman (??) on 26-Апр-07, 18:08 
Я разочаровался в pf, хотя есть много плюсов.
Ответить | Правка | ^ к родителю #39 | Наверх | Cообщить модератору

41. "Редирект портов в pf и iptables"  +/
Сообщение от KlounAda email(??) on 02-Май-07, 02:01 
>>конфиг можно посмотреть?
>
>Только эти два правила в pf.conf.
>
>rdr on rl0 proto tcp from any to $in_ext port x -> 192.168.1.10 port x
>binat on rl0 from 192.168.1.10 to $in_ext -> $in_ext
>
>Все работает, только если я пропишу шлюз.

rdr on rl0 proto tcp from any to внешний адрес port x -> 192.168.1.10 port x
nat on внутренний интерфейс proto tcp from any to 192.168.1.10 port x -> внутренний адрес сервера

Все будет работать 100%, проверено сотни раз, работает.

Ответить | Правка | ^ к родителю #11 | Наверх | Cообщить модератору

42. "Редирект портов в pf и iptables"  +/
Сообщение от niksonnnn (??) on 02-Май-07, 11:17 
>>>конфиг можно посмотреть?
>>
>>Только эти два правила в pf.conf.
>>
>>rdr on rl0 proto tcp from any to $in_ext port x -> 192.168.1.10 port x
>>binat on rl0 from 192.168.1.10 to $in_ext -> $in_ext
>>
>>Все работает, только если я пропишу шлюз.
>
>rdr on rl0 proto tcp from any to внешний адрес port x -> 192.168.1.10 port x
>nat on внутренний интерфейс proto tcp from any to 192.168.1.10 port x -> внутренний адрес сервера
>
>Все будет работать 100%, проверено сотни раз, работает.

Хех... вот у меня тоже работает однако))))

Ответить | Правка | ^ к родителю #41 | Наверх | Cообщить модератору

43. "Редирект портов в pf и iptables"  +/
Сообщение от freeman email(ok) on 02-Май-07, 23:41 
>>>>конфиг можно посмотреть?
>>>
>>>Только эти два правила в pf.conf.
>>>
>>>rdr on rl0 proto tcp from any to $in_ext port x -> 192.168.1.10 port x
>>>binat on rl0 from 192.168.1.10 to $in_ext -> $in_ext
>>>
>>>Все работает, только если я пропишу шлюз.
>>
>>rdr on rl0 proto tcp from any to внешний адрес port x -> 192.168.1.10 port x
>>nat on внутренний интерфейс proto tcp from any to 192.168.1.10 port x -> внутренний адрес сервера
>>
>>Все будет работать 100%, проверено сотни раз, работает.
>
>Хех... вот у меня тоже работает однако))))

Однако у меня тоже заработало))) Спасибо Клоунаде!)))

Ответить | Правка | ^ к родителю #42 | Наверх | Cообщить модератору

44. "Редирект портов в pf и iptables"  +/
Сообщение от niksonnnn (??) on 03-Май-07, 08:32 
>>>>>конфиг можно посмотреть?
>>>>
>>>>Только эти два правила в pf.conf.
>>>>
>>>>rdr on rl0 proto tcp from any to $in_ext port x -> 192.168.1.10 port x
>>>>binat on rl0 from 192.168.1.10 to $in_ext -> $in_ext
>>>>
>>>>Все работает, только если я пропишу шлюз.
>>>
>>>rdr on rl0 proto tcp from any to внешний адрес port x -> 192.168.1.10 port x
>>>nat on внутренний интерфейс proto tcp from any to 192.168.1.10 port x -> внутренний адрес сервера
>>>
>>>Все будет работать 100%, проверено сотни раз, работает.
>>
>>Хех... вот у меня тоже работает однако))))
>
>Однако у меня тоже заработало))) Спасибо Клоунаде!)))

вот - вот .... а то разочаровался )))) нас еще есть ))) присоединяюсь к респекту ))

Ответить | Правка | ^ к родителю #43 | Наверх | Cообщить модератору

45. "Редирект портов в pf и iptables"  +/
Сообщение от freeman email(ok) on 04-Май-07, 00:59 
>>>>>>конфиг можно посмотреть?
>>>>>
>>>>>Только эти два правила в pf.conf.
>>>>>
>>>>>rdr on rl0 proto tcp from any to $in_ext port x -> 192.168.1.10 port x
>>>>>binat on rl0 from 192.168.1.10 to $in_ext -> $in_ext
>>>>>
>>>>>Все работает, только если я пропишу шлюз.
>>>>
>>>>rdr on rl0 proto tcp from any to внешний адрес port x -> 192.168.1.10 port x
>>>>nat on внутренний интерфейс proto tcp from any to 192.168.1.10 port x -> внутренний адрес сервера
>>>>
>>>>Все будет работать 100%, проверено сотни раз, работает.
>>>
>>>Хех... вот у меня тоже работает однако))))
>>
>>Однако у меня тоже заработало))) Спасибо Клоунаде!)))
>
>вот - вот .... а то разочаровался )))) нас еще есть )))
>присоединяюсь к респекту ))

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

Ответить | Правка | ^ к родителю #44 | Наверх | Cообщить модератору

46. "Редирект портов в pf и iptables"  +/
Сообщение от sowool (??) on 05-Июл-07, 13:42 
>>>>>>>конфиг можно посмотреть?
>>>>>>
>>>>>>Только эти два правила в pf.conf.
>>>>>>
>>>>>>rdr on rl0 proto tcp from any to $in_ext port x -> 192.168.1.10 port x
>>>>>>binat on rl0 from 192.168.1.10 to $in_ext -> $in_ext
>>>>>>
>>>>>>Все работает, только если я пропишу шлюз.
>>>>>
>>>>>rdr on rl0 proto tcp from any to внешний адрес port x -> 192.168.1.10 port x
>>>>>nat on внутренний интерфейс proto tcp from any to 192.168.1.10 port x -> внутренний адрес сервера
>>>>>
>>>>>Все будет работать 100%, проверено сотни раз, работает.
>>>>
>>>>Хех... вот у меня тоже работает однако))))
>>>
>>>Однако у меня тоже заработало))) Спасибо Клоунаде!)))
>>
>>вот - вот .... а то разочаровался )))) нас еще есть )))
>>присоединяюсь к респекту ))
>
>))) Ну это я специально... ждал, чтобы кто нибудь разозлился)))

Нужна помощь, уже всяка разно перепробовал, похожая проблема! есть локальная сеть А - 192.168.1.0/24,
есть терминальный сервер - 192.168.1.4.
есть шлюз с двумя сетевухами, одна смотрит внутрь сети А - 192.168.1.5, другая в сеть В - 192.168.2.3
настроен ВПН между сетью С - 192.168.0.0/24 и сетью В - 192.168.2.0/24
компьютер из сети В ходит на терминальный сервер, а компьютер из сети С не может, но с компьютером сети В в терминал выходит!
делаю такие правила в pf.conf
steo - 192.168.2.3
r10 - 192.168.1.5
rdr on ste0 proto tcp from any to ste0 port 3389 -> 192.168.1.4 port 3389
nat on r10 proto tcp from any to 192.168.1.4 port 3389 -> 192.168.1.5

Ответить | Правка | ^ к родителю #45 | Наверх | Cообщить модератору

47. "Редирект портов в pf и iptables"  +/
Сообщение от niksonnnn (??) on 05-Июл-07, 17:59 
>>>>>>>>конфиг можно посмотреть?
>>>>>>>
>>>>>>>Только эти два правила в pf.conf.
>>>>>>>
>>>>>>>rdr on rl0 proto tcp from any to $in_ext port x -> 192.168.1.10 port x
>>>>>>>binat on rl0 from 192.168.1.10 to $in_ext -> $in_ext
>>>>>>>
>>>>>>>Все работает, только если я пропишу шлюз.
>>>>>>
>>>>>>rdr on rl0 proto tcp from any to внешний адрес port x -> 192.168.1.10 port x
>>>>>>nat on внутренний интерфейс proto tcp from any to 192.168.1.10 port x -> внутренний адрес сервера
>>>>>>
>>>>>>Все будет работать 100%, проверено сотни раз, работает.
>>>>>
>>>>>Хех... вот у меня тоже работает однако))))
>>>>
>>>>Однако у меня тоже заработало))) Спасибо Клоунаде!)))
>>>
>>>вот - вот .... а то разочаровался )))) нас еще есть )))
>>>присоединяюсь к респекту ))
>>
>>))) Ну это я специально... ждал, чтобы кто нибудь разозлился)))
>
>Нужна помощь, уже всяка разно перепробовал, похожая проблема! есть локальная сеть А
>- 192.168.1.0/24,
>есть терминальный сервер - 192.168.1.4.
>есть шлюз с двумя сетевухами, одна смотрит внутрь сети А - 192.168.1.5,
>другая в сеть В - 192.168.2.3
>настроен ВПН между сетью С - 192.168.0.0/24 и сетью В - 192.168.2.0/24
>
>компьютер из сети В ходит на терминальный сервер, а компьютер из сети
>С не может, но с компьютером сети В в терминал выходит!
>
>делаю такие правила в pf.conf
>steo - 192.168.2.3
>r10 - 192.168.1.5
>rdr on ste0 proto tcp from any to ste0 port 3389 -> 192.168.1.4 port 3389
>nat on r10 proto tcp from any to 192.168.1.4 port 3389 -> 192.168.1.5

раскройте тему...

Конфиг подробный приведите...

tcpdump что говорит?

роутинг настроен?

Ответить | Правка | ^ к родителю #46 | Наверх | Cообщить модератору

48. "Редирект портов в pf и iptables"  +/
Сообщение от sowool (??) on 06-Июл-07, 07:08 
>>>>>>>>>конфиг можно посмотреть?
>>>>>>>>
>>>>>>>>Только эти два правила в pf.conf.
>>>>>>>>
>>>>>>>>rdr on rl0 proto tcp from any to $in_ext port x -> 192.168.1.10 port x
>>>>>>>>binat on rl0 from 192.168.1.10 to $in_ext -> $in_ext
>>>>>>>>
>>>>>>>>Все работает, только если я пропишу шлюз.
>>>>>>>
>>>>>>>rdr on rl0 proto tcp from any to внешний адрес port x -> 192.168.1.10 port x
>>>>>>>nat on внутренний интерфейс proto tcp from any to 192.168.1.10 port x -> внутренний адрес сервера
>>>>>>>
>>>>>>>Все будет работать 100%, проверено сотни раз, работает.
>>>>>>
>>>>>>Хех... вот у меня тоже работает однако))))
>>>>>
>>>>>Однако у меня тоже заработало))) Спасибо Клоунаде!)))
>>>>
>>>>вот - вот .... а то разочаровался )))) нас еще есть )))
>>>>присоединяюсь к респекту ))
>>>
>>>))) Ну это я специально... ждал, чтобы кто нибудь разозлился)))
>>
>>Нужна помощь, уже всяка разно перепробовал, похожая проблема! есть локальная сеть А
>>- 192.168.1.0/24,
>>есть терминальный сервер - 192.168.1.4.
>>есть шлюз с двумя сетевухами, одна смотрит внутрь сети А - 192.168.1.5,
>>другая в сеть В - 192.168.2.3
>>настроен ВПН между сетью С - 192.168.0.0/24 и сетью В - 192.168.2.0/24
>>
>>компьютер из сети В ходит на терминальный сервер, а компьютер из сети
>>С не может, но с компьютером сети В в терминал выходит!
>>
>>делаю такие правила в pf.conf
>>steo - 192.168.2.3
>>r10 - 192.168.1.5
>>rdr on ste0 proto tcp from any to ste0 port 3389 -> 192.168.1.4 port 3389
>>nat on r10 proto tcp from any to 192.168.1.4 port 3389 -> 192.168.1.5
>
>раскройте тему...
>
>Конфиг подробный приведите...
>
>tcpdump что говорит?
>
>роутинг настроен?

В конфиге pf.conf только эти две строчки!
Роутинг куда чего?
pfctl говорит
all tcp 192.168.1.4:3389 <- 192.168.2.3:3389 <- 192.168.0.2:1137       ESTABLISHED:ESTABLISHED
но терминал не работает

Ответить | Правка | ^ к родителю #47 | Наверх | Cообщить модератору

49. "Редирект портов в pf и iptables"  +/
Сообщение от netc (ok) on 11-Апр-09, 13:50 

>nat on внутренний интерфейс proto tcp from any to 192.168.1.10 port x -> внутренний адрес сервера
>
>Все будет работать 100%, проверено сотни раз, работает.

Блин 3 часа промучался, понял все.

Заработало, тогда, когда я понял что "внутренний адрес сервера" - адрес сетевого интерфейса шлюза на котором делаеться rdr смотрящий в локалку, а не ip сервака в локалке на который нужно делать проброс

вот так

Ответить | Правка | ^ к родителю #41 | Наверх | Cообщить модератору

50. "Редирект портов в pf и iptables"  +/
Сообщение от Nikita (??) on 18-Янв-13, 12:54 
>[оверквотинг удален]
>>
>>rdr on rl0 proto tcp from any to $in_ext port x -> 192.168.1.10 port x
>>binat on rl0 from 192.168.1.10 to $in_ext -> $in_ext
>>
>>Все работает, только если я пропишу шлюз.
> rdr on rl0 proto tcp from any to внешний адрес port x
> -> 192.168.1.10 port x
> nat on внутренний интерфейс proto tcp from any to 192.168.1.10 port x
> -> внутренний адрес сервера
> Все будет работать 100%, проверено сотни раз, работает.

Красава )))) Большое спс )))

Ответить | Правка | ^ к родителю #41 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру