Jump to content
Калькуляторы

Ухудшение пинга и потери при >500 VPN юзеров

З.Ы. если ве-же нужен НАТ - то тут походу ничего не поможет - контрак реально больше 500 сесий активных юзверей не вытянет...
вытянет, нужно отрубать только conntrack_gre, а не весь conntrack

Попробую согласиться т.к. реально после установки ассел нагрузка в итоге упала в 2 раза (даже по сравнению с улучшенным файрволом) а если все в целом то во все 3 :-), так-что 500 абонентов с натом может еще и вытянет - но НЕ БОЛЬШЕ :-).... (Не забываем что тарифы то "корбиновские")

 

ХЕВ - кстати в 0.8.2какие то проблемы... make server не выполняется в каком-то конфигуре происходит сбой из-за пермишенов.
только что проверил, всё нормально

ОК - покавыряю у себя...

 

Share this post


Link to post
Share on other sites

Знающие люди говорят что iptables тут не самое узкое место, типа он плоский фаервол из 1000 правил нормально отрабатывает на 100 Мбит.

P.S.: Научите как отрубить conntrack вобще? Я так понимаю для TCP слеедить за состоянием можно и по SYN.

 

2Negator1983: а что с ними не так вроде NAPI поддерживают, интеловские e1000 подоойдут?

Share this post


Link to post
Share on other sites

echo blacklist nf_nat_proto_gre >> /etc/modprobe.conf

Share this post


Link to post
Share on other sites

Я делаю вот так:

.....

${fwcmd} -t raw -F

${fwcmd} -t raw -F PREROUTING

${fwcmd} -t raw -F OUTPUT

 

${fwcmd} -t raw -N DO_TRACK

${fwcmd} -t raw -F DO_TRACK

 

${fwcmd} -t raw -N DO_NOTRACK

${fwcmd} -t raw -F DO_NOTRACK

${fwcmd} -t raw -A DO_NOTRACK -j NOTRACK

 

${fwcmd} -t raw -A PREROUTING -j NOTRACK

${fwcmd} -t raw -A OUTPUT -j NOTRACK

 

${fwcmd} -t raw -A PREROUTING -p gre -g DO_NOTRACK

${fwcmd} -t raw -A PREROUTING -p tcp --dport 1723 -g DO_NOTRACK

 

${fwcmd} -t raw -A PREROUTING -p tcp --dport 25 -g DO_TRACK

 

for cur_val in ${net_cl_dirip} ; {

${fwcmd} -t raw -A PREROUTING -s ${cur_val} -g DO_NOTRACK

${fwcmd} -t raw -A PREROUTING -d ${cur_val} -g DO_NOTRACK

};

 

${fwcmd} -t raw -A OUTPUT -p gre --g DO_NOTRACK

${fwcmd} -t raw -A OUTPUT -p tcp --sport 1723 -g DO_NOTRACK

 

for cur_val in ${net_cl_dirip} ; {

${fwcmd} -t raw -A OUTPUT -s ${cur_val} -g DO_NOTRACK

${fwcmd} -t raw -A OUTPUT -d ${cur_val} -g DO_NOTRACK

};

....

man iptables вам поможет...

 

про плоский файрвол - КАТЕГОРИЧЕСКИ НЕ СОГЛАСЕН... в том-то и дело ПЛОСКИЙ... если нужное вам правило введено 1001-м в ячейке, то прежде чем до него дойдет обработчик пакета -он проверит все 1000 предидущих правил! а если покавырять код то там кажется минимум 6 параметров сравнивается....

потому он и называется TABLES - надо ветвить, пользоваться -g ЯЧЕЙКА а не -j модуль... а для основного трафика правила ставить первыми, а не проверять сперва на всякую мелочь...

 

ну и конечно нафиг не использовать всякие конлимит НА все подряд, только на строго ограниченные порты (например почту) и не более эбав 10!

(правда без контрака он работать все равно не будет)

 

 

ну и кстати если вы не пользуетесь флагами типа ESTABLISHED.. и вам не нужен НАТ, то можно просто модуль контрака отключить!

Edited by sdy_moscow

Share this post


Link to post
Share on other sites

ну и кстати если вы не пользуетесь флагами типа ESTABLISHED.. и вам не нужен НАТ, то можно просто модуль контрака отключить!

ESTABLISHED для TCP можно заменить проверкой флага SYN (UDP мне не нужно), а НАТ, да не нужен. Я вот и спрашивал выше как его полностью отключить, так же в блэклист?

Edited by SokolovS

Share this post


Link to post
Share on other sites
ну и кстати если вы не пользуетесь флагами типа ESTABLISHED.. и вам не нужен НАТ, то можно просто модуль контрака отключить!
ESTABLISHED для TCP можно заменить проверкой флага SYN (UDP мне не нужно), а НАТ, да не нужен. Я вот и спрашивал выше как его полностью отключить, так же в блэклист?

Есть действие
*raw

-A PREROUTING -j NOTRACK

Share this post


Link to post
Share on other sites

ну да, в блэк лист - а чего тут думать :-)....

а если модуль в ядре, блеклист на него подействует?

Share this post


Link to post
Share on other sites

Кстати да, тоже интересно. Может можно как-то через sysctl отключить?

Share this post


Link to post
Share on other sites
ну да, в блэк лист - а чего тут думать :-)....
а если модуль в ядре, блеклист на него подействует?

нет если он в ядре -то или перекомпилить ядро или маркировать как было описано выше...

 

З.Ы. маркировка проц почти не нагружает!

Edited by sdy_moscow

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this