Страница 1 из 1
Замена демона NATD
Добавлено: 2009-05-27 23:27:19
super-fox
Здраствуйте всем! Столкнулся с такой проблемкой, есть роутер на freebsd, стоит там IPFW+NATD, под вечерок, когда много народу юзает NATD загружает процессор на 60-80% , пришла пора мне собрать в ядре nat, прошу поделиться опытом, кто что использует для трансляции пакетов?
Re: Замена демона NATD
Добавлено: 2009-05-28 0:28:19
Alex Keda
Juniper
Re: Замена демона NATD
Добавлено: 2009-05-28 1:06:57
super-fox
Спасибо, мне бы бюджетный вариант

Я думаю что если нат загрузить не как модуль, а скомпилить в ядре, то производительность будет намного лучше.
Re: Замена демона NATD
Добавлено: 2009-05-28 8:51:24
princeps
я юзаю ipfw с kernel nat и pf.
Re: Замена демона NATD
Добавлено: 2009-05-28 10:18:10
ViktorichZ
имхо самое самое на сегодняшний день ng_nat
Re: Замена демона NATD
Добавлено: 2009-05-28 13:52:22
buryanov
Если будет дцать nat"ов, то
Код: Выделить всё
/usr/src/sys/netinetip_fw.h
#define NAT_BUF_LEN 1024
меняешь на чтото вроде
или
и пересобираешь ядро
Re: Замена демона NATD
Добавлено: 2009-05-28 13:55:57
super-fox
nat у меня один, говорят pf собраный в ядре отлично работает, может кто покажет конфиги?
Re: Замена демона NATD
Добавлено: 2009-05-28 15:03:34
princeps
nat в ipfw, собранный в ядре, тоже работает нормально. Раз у тебя уже стоит ipfw, то стоит ли заморачиваться с pf?
Re: Замена демона NATD
Добавлено: 2009-05-28 15:59:16
buryanov
Если будешь делать port/proto/address_redirect > 16 раз, то тогда понадобится это
у меня сделано так
Код: Выделить всё
${FwCMD} nat 4 config ip ${ip_nat33}
${FwCMD} add nat 4 all from ${lan} to any out via ${ifwan}
${FwCMD} add nat 4 all from any to ${ip_nat33} in via ${ifwan}
Re: Замена демона NATD
Добавлено: 2009-05-28 18:01:51
super-fox
princeps, может покажеш конфиги, как єто все правильно стелать с natd, или ссылку на статейку даш?
buryanov, а зачем столько натов? Зачем их вообще столько?
Re: Замена демона NATD
Добавлено: 2009-05-29 0:54:29
buryanov
super-fox писал(а):а зачем столько натов? Зачем их вообще столько
У меня 4 ip на инрерфейсе, 2 провайдера + ngх. Разные чтоб было проще, есть удалённый ip, и к нему мы конектимся чемто(это уже кто,чем из пользователей), а на удалённой стороне прописан portmapping в зависимости от моего адреса, проэктов несколько таких, плюс, исходя из горького опыта командаровок, частенько у людей открыт только 80,443 порты, и у меня на 443 висит ssh, который мапится в локалку на сервак, потом на другом ip на 443 висит OWA,OMA, на ещё одном 443 ClearQuest и так далее
И получается проще, когда надо закрыть или открыть доступ или поменять настройки я перезагружаю именно для него фаер и нат соответственно. Но в этом методе тоже есть свои нюансы, очень легко запутатся, что где натится и куда должно возвращатся
Re: Замена демона NATD
Добавлено: 2009-05-29 1:36:23
super-fox
buryanov, спасибо за обьяснение, а можно например сделать так, что-бы пользователи попадали рандом на какой-то нат с определенным внешним ай пи? А то с рапидами да депозитами туговато

Re: Замена демона NATD
Добавлено: 2009-05-30 19:39:58
Alex Keda
super-fox писал(а):Спасибо, мне бы бюджетный вариант

ну, вы спросили кто что юзает - я вам ответил
Re: Замена демона NATD
Добавлено: 2009-05-31 17:35:42
qwe
Реализация с pf.
Код: Выделить всё
/boot/loader.conf
pf_load="YES"
/etc/rc.conf
pf_enable="YES"
/etc/pf.conf
set limit states 30000
set optimization normal
set skip on lo0
scrub in all
nat on <имя_интерфейса, через который уходит на дефолт роут> from <серые адреса, которые нужно натить> to any -> <ip, на который натим>
pass all no state
Пример строки с nat:
Код: Выделить всё
nat on vlan200 from 10.10.1.0/24 to any -> 21.21.21.21