The OpenNET Project / Index page

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

форумы  помощь  поиск  регистрация  майллист  ВХОД  слежка  RSS
"IPFW + natd (Покажите ошибку)"
Вариант для распечатки  
Пред. тема | След. тема 
Форумы OpenNET: Виртуальная конференция (Public)
Изначальное сообщение [Проследить за развитием треда]

"IPFW + natd (Покажите ошибку)" 
Сообщение от woodmin emailИскать по авторуВ закладки on 29-Апр-05, 16:47  (MSK)
Укажите пожалуйста где ошибка в правилах.
rl0 - Внешний интерфейс.
rl1 - Внутренний.
#!/bin/sh

/sbin/ipfw -f flush
/sbin/ipfw add check-state
/sbin/ipfw add allow ip from any to any via lo0
/sbin/ipfw/add divert natd ip from 192.168.0.1/24 to any out via rl0
/sbin/ipfw add devirt natd ip from any to 195.195.195.195 in via rl0

/sbin/ipfw add allow ip from me to any keep-state
/sbin/ipfw add allow ip from any to any via rl1
/sbin/ipfw add deny ip from any to any

Нифига не работает.

  Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

 Оглавление

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

1. "IPFW + natd (Покажите ошибку)" 
Сообщение от denn emailИскать по авторуВ закладки(??) on 29-Апр-05, 18:08  (MSK)
>Укажите пожалуйста где ошибка в правилах.
>rl0 - Внешний интерфейс.
>rl1 - Внутренний.
>#!/bin/sh
>
>/sbin/ipfw -f flush
>/sbin/ipfw add check-state
>/sbin/ipfw add allow ip from any to any via lo0
>/sbin/ipfw/add divert natd ip from 192.168.0.1/24 to any out via rl0
>/sbin/ipfw add devirt natd ip from any to 195.195.195.195 in via rl0
>
>
>/sbin/ipfw add allow ip from me to any keep-state
>/sbin/ipfw add allow ip from any to any via rl1
>/sbin/ipfw add deny ip from any to any
>
>Нифига не работает.

нат поднят?
ipfw divert natd ip from any to any
вместо 3 и 4

  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

2. "IPFW + natd (Покажите ошибку)" 
Сообщение от woodmin emailИскать по авторуВ закладки on 29-Апр-05, 19:49  (MSK)
natd поднят. Интерфейс внешний указан. divert одной строкой тоже пробовал на пашет.
  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

3. "IPFW + natd (Покажите ошибку)" 
Сообщение от denn Искать по авторуВ закладки(??) on 29-Апр-05, 19:54  (MSK)
>natd поднят. Интерфейс внешний указан. divert одной строкой тоже пробовал на пашет.
>
форвард включен?
  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

4. "IPFW + natd (Покажите ошибку)" 
Сообщение от woodmin emailИскать по авторуВ закладки on 29-Апр-05, 20:00  (MSK)
/etc/rc.conf <- gateway_enable="YES"
  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

5. "IPFW + natd (Покажите ошибку)" 
Сообщение от denn Искать по авторуВ закладки(??) on 29-Апр-05, 21:31  (MSK)
>/etc/rc.conf <- gateway_enable="YES"

netstat -rn
ipfw -a l

  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

6. "IPFW + natd (Покажите ошибку)" 
Сообщение от Skif emailИскать по авторуВ закладки(??) on 30-Апр-05, 02:10  (MSK)
>>/etc/rc.conf <- gateway_enable="YES"
>
>netstat -rn
>ipfw -a l


/sbin/ipfw/add divert natd ip from 192.168.0.1/24 to any out via rl0
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Эту строку нафиг, вторую за компанию:
ipfw add divert 8668 ip from any to any via rl0

  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

7. "IPFW + natd (Покажите ошибку)" 
Сообщение от woodmin Искать по авторуВ закладки on 30-Апр-05, 10:28  (MSK)
Блин. Все равно не работает.

Работает только так:
/sbin/ipfw add divert ip from ay to any via rl0
/sbin/ipfw add allow ip from any to any

но мне надо пускать на всех юзеров, а некоторых.

  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

8. "IPFW + natd (Покажите ошибку)" 
Сообщение от A Clockwork Orange Искать по авторуВ закладки on 30-Апр-05, 12:51  (MSK)
#!/bin/sh
/sbin/ipfw -f flush
/sbin/ipfw add check-state
/sbin/ipfw add allow ip from any to any via lo0
/sbin/ipfw/add divert natd ip from 192.168.0.1/24 to any out via rl0
                                   ~~~~~~~~~~~~~~ это что такое?
/sbin/ipfw add divert natd ip from any to 195.195.195.195 in via rl0

/sbin/ipfw add allow ip from me to any keep-state
                          ~~~~~~~ а это что?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ правило не пойдет, после нат не будет адреса me, если он у тебя внутренний. Ограничения ставь на внутреннем интерфейсе.
В результате не работает потому что нет правил на внешнем интерфейсе, посему при прохождении внешнего интерфейса все пакеты подпадают под последнее правило.

/sbin/ipfw add allow ip from any to any via rl1
/sbin/ipfw add deny ip from any to any

  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

9. "IPFW + natd (Покажите ошибку)" 
Сообщение от woodmin Искать по авторуВ закладки on 30-Апр-05, 13:27  (MSK)
/sbin/ipfw add allow ip from me to any keep-state
(правило не пойдет, после нат не будет адреса me, если он у тебя внутренний. Ограничения ставь на внутреннем интерфейсе. )

Почему. me это же любой адрес машины. Т.е. и 192.168.0.1 и 195.195.195.195. Теоретически после того как мы послали запрос из локалки, он дошел до divert и поменял адрес. потом он пошел заново через правила как пакет с адреса 195.195.195.195 на удаленный хост. правило
/sbin/ipfw add allow ip from me to any keep-state
разрешает ему уходить от себя и создает динамическое правило. Далее пришел ответ от удаленнго хоста проходит через динамическое правило которое ему это разрешает. попадает опять в nat. теперь он идет заново по правилам как пакет с адреса 192.168.0.1 к адресу локальной сети, что собственно тоже разрешено правилом
/sbin/ipfw add allow ip from me to any keep-state
Во какая моя теория, после прочтения манов. Но теория не рабртает. :o(

  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

10. "IPFW + natd (Покажите ошибку)" 
Сообщение от A Clockwork Orange Искать по авторуВ закладки on 30-Апр-05, 13:41  (MSK)
>/sbin/ipfw add allow ip from me to any keep-state
>(правило не пойдет, после нат не будет адреса me, если он у
>тебя внутренний. Ограничения ставь на внутреннем интерфейсе. )
>
>Почему. me это же любой адрес машины. Т.е. и 192.168.0.1 и 195.195.195.195.

я не понял что ты хотел выразить!
как это у тебя переменная me может быть и так и этак?
и где она вообще описана?

>Теоретически после того как мы послали запрос из локалки, он дошел
>до divert и поменял адрес. потом он пошел заново через правила
>как пакет с адреса 195.195.195.195 на удаленный хост. правило
>/sbin/ipfw add allow ip from me to any keep-state
>разрешает ему уходить от себя и создает динамическое правило.

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

>Далее пришел ответ
>от удаленнго хоста проходит через динамическое правило которое ему это разрешает.
>попадает опять в nat. теперь он идет заново по правилам как
>пакет с адреса 192.168.0.1 к адресу локальной сети, что собственно тоже
>разрешено правилом
>/sbin/ipfw add allow ip from me to any keep-state
>Во какая моя теория, после прочтения манов. Но теория не рабртает. :o(
>

не работает не теория, а не работают правила.

192.168.0.1/24 это что у тебя? ты имел ввиду хост или сеть, или вообще от балды?

  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

11. "IPFW + natd (Покажите ошибку)" 
Сообщение от woodmin Искать по авторуВ закладки on 30-Апр-05, 13:56  (MSK)
>192.168.0.1/24 это что у тебя? ты имел ввиду хост или сеть, или
>вообще от балды?

192.168.0.1/24 это локальная сеть которая должна выходить в инет.
А про (me) я читал что это любой локальный адрес машины.

  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

12. "IPFW + natd (Покажите ошибку)" 
Сообщение от woodmin Искать по авторуВ закладки on 30-Апр-05, 14:23  (MSK)
Если указать me, правилу будет соответствовать любой IP-адрес,
сконфигурированный на любом из интерфейсов системы. Эта
проверка требует достаточно много вычислительных ресурсов и ее
надо использовать осторожно.

Это из перевода MAN IPFW

  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

13. "IPFW + natd (Покажите ошибку)" 
Сообщение от A Clockwork Orange Искать по авторуВ закладки on 30-Апр-05, 14:36  (MSK)
хорошо с me понятно, что у тебя это такое
но тогда правило
/sbin/ipfw/add divert natd ip from 192.168.0.1/24 to any out via rl0  неверное
192.168.0.1/24 - если это адрес хоста то 192.168.0.1
если сети - 192.168.0.0/24, ну у тебя сутя по всему это внутренний адрес интерфейса...
вопрос зачем его натить?
может стоит так попробовать
/sbin/ipfw/add divert natd ip from 192.168.0.0/24 to any out via rl0
  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

15. "IPFW + natd (Покажите ошибку)" 
Сообщение от Skif emailИскать по авторуВ закладки(??) on 30-Апр-05, 15:09  (MSK)
>Блин. Все равно не работает.
>
>Работает только так:
>/sbin/ipfw add divert ip from ay to any via rl0
>/sbin/ipfw add allow ip from any to any
>
>но мне надо пускать на всех юзеров, а некоторых.


Ну и ?

/sbin/ipfw add divert ip from ay to any via rl0
ipfw add allow ip from pupkin to any
ipfw add allow ip from any to pupkin

ipfw add allow ip from pupkin2 to any
ipfw add allow ip from any to pupkin2

Не вижу проблемы. Может проблема в руках и нежелании читать документацию?

  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

14. "IPFW + natd (Покажите ошибку)" 
Сообщение от jr emailИскать по авторуВ закладки(ok) on 30-Апр-05, 14:53  (MSK)
>Укажите пожалуйста где ошибка в правилах.
>rl0 - Внешний интерфейс.
>rl1 - Внутренний.
>#!/bin/sh
>
>/sbin/ipfw -f flush
>/sbin/ipfw add check-state
>/sbin/ipfw add allow ip from any to any via lo0
>/sbin/ipfw/add divert natd ip from 192.168.0.1/24 to any out via rl0
>/sbin/ipfw add devirt natd ip from any to 195.195.195.195 in via rl0
>
>
>/sbin/ipfw add allow ip from me to any keep-state
>/sbin/ipfw add allow ip from any to any via rl1
>/sbin/ipfw add deny ip from any to any
>
>Нифига не работает.

ipfw add 10 allow ip from 195.195.195.195 to any out via rl0
ipfw add 20 devirt natd ip from any to 195.195.195.195 in via rl0
ipfw add 30 divert natd ip from 192.168.0.0/24 to any out via rl0
ipfw add 40 deny ip from any to any via rl0

ipfw add 100 allow ip from any to any via lo0
ipfw add 110 deny ip from any to 127.0.0.0/8
ipfw add 120 deny ip from 127.0.0.0/8 to any

ipfw add 200 allow ip from 192.168.0.x to any in via rl1
ipfw add 201 allow ip from any to 192.168.0.x out via rl1
ipfw add 299 deny ip from any to any via rl1

ipfw add 65000 deny ip from any to any

  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

16. "IPFW + natd (Покажите ошибку)" 
Сообщение от woodmin Искать по авторуВ закладки on 30-Апр-05, 15:21  (MSK)
Ну наконецто вроде разобрался. Всем большое огромное спасибо за терпение и советы.
  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх


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

Индекс форумов | Темы | Пред. тема | След. тема
Оцените тред (1=ужас, 5=супер)? [ 1 | 2 | 3 | 4 | 5 ]
Пожалуйста, прежде чем написать сообщение, ознакомьтесь с данными рекомендациями.




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

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