Tomsk Sysadmins Forum
Unix => Администрирование => Topic started by: Petya on March 06, 2008, 12:47:42
-
Не работает данная связка. Не могу понять в чем прокол. ipfw show регистрирует прохождение пакетов через разрешающее правило. tcpdump’ом видно входящие пакеты, но исходящих нет. Наверное не работает ipnat? Но почему? Сведующие люди посмотрите, может какаято совершенно очевидная ошибка...
Настройки следующие:
В ядре
options IPFIREWALL
options IPFIREWALL_VERBOSE
options IPFIREWALL_VERBOSE_LIMIT=5
options IPFIREWALL_FORWARD
options DUMMYNET
options HZ=1000
В rc.conf
kern_securelevel="0"
kern_securelevel_enable="NO"
gateway_enable="YES"
firewall_enable="YES"
firewall_script="/etc/rc.firewall"
ipnat_enable="YES"
ipnat_rules="/etc/ipnat.rules"
Правила ipnat и ipfw для простоты порезаны и выглядят пока так, соответственно.
map rl1 192.168.0.0/24 -> внешний ip
cmd="/sbin/ipfw -q add"
/sbin/ipfw -q -f flush
${cmd} 50 allow all from any to any
-
Если такой несложный конфиг, то может использовать "классический" Handbook для настройки файера и ната: http://freebsd.tusur.ru/doc/en_US.ISO8859-...twork-natd.html (http://freebsd.tusur.ru/doc/en_US.ISO8859-1/books/handbook/network-natd.html). Эта конфигурация точно рабочая и делает то же, что тебе требуется, правда, используя natd вместо ipnat.
-
Эта конфигурация точно рабочая и делает то же, что тебе требуется, правда, используя natd вместо ipnat.
Не... этого не надо, спасибо. У меня имеется полноценно работающая уже больше полу года конфигурация ipnat+ipf. Хочу опробовать именно связку ipnat + ipfw + dummynet в познавательных целях + обкатать немного на деле, чтоб можно было ориентироваться что для чего лучше.
З.Ы.: я конечно в курсе, для хоум или оффисе использования нет разницы ipnat или natd... Но принципиально не понимаю зачем вообще столь примитивную операцию (NAT) делать на уровне демона (про natd). Посему последний не хочу использовать.... не знаю правильно или нет поступаю... но пока так есть.
-
Хочу опробовать именно связку ipnat + ipfw + dummynet в познавательных целях
Посмотри тогда сюда http://www.opennet.ru/base/net/ipfw_multiroute.txt.html (http://www.opennet.ru/base/net/ipfw_multiroute.txt.html)
ПС. Не вижу defaultrouter в rc.conf.
-
Посмотри тогда сюда http://www.opennet.ru/base/net/ipfw_multiroute.txt.html (http://www.opennet.ru/base/net/ipfw_multiroute.txt.html)
ПС. Не вижу defaultrouter в rc.conf.
Не.. это отпадает. Там он имеется. Статейку эту уже читал. Собственно практически по ней и делал.
У меня есть такой вариант возможной ошибки. Может в ядро еще должен быть вкомпилен IPFILTER, т.к. если не ошибаюсь ipnat является так сказать его "частью", или он должен быть загружен модулем?
-
Не... этого не надо, спасибо. У меня имеется полноценно работающая уже больше полу года конфигурация ipnat+ipf. Хочу опробовать именно связку ipnat + ipfw + dummynet в познавательных целях + обкатать немного на деле, чтоб можно было ориентироваться что для чего лучше. :)
З.Ы.: я конечно в курсе, для хоум или оффисе использования нет разницы ipnat или natd... Но принципиально не понимаю зачем вообще столь примитивную операцию (NAT) делать на уровне демона (про natd). Посему последний не хочу использовать.... не знаю правильно или нет поступаю... но пока так есть. :)
Два файрвола сразу использовать - лишний геморрой себе на задницу. Тем более, что ipfilter/ipnat уже deprecated и со временем будет вынесен из новых версий FreeBSD. Касательно natd - в 6.x есть другие средства для ядерного ната, если критична производительность. Ну и сам NAT - отнюдь не примитивная операция. Например, ipf/pf не умеют натить сложные протоколы, заглядывая внутрь пакета (а natd умеет) - это значит, что к ним нужно городить костыли в виде отдельных демонов. Разделение процессов - основа надежности (см. тему микроядра), поэтому везде, где не нужна производительность (низкая нагрузка на ADSL и т.п.), использование natd - вполне нормальный вариант.