URL: https://www.opennet.ru/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 94318
[ Назад ]

Исходное сообщение
"Включение IPFW+Nat начало резать скорость на отдачу"

Отправлено Cassej , 30-Янв-13 15:32 
1. Есть сервер по управлением FreeBSD 9.1
2. Есть роутер и за ним несколько компов
3. На сервере настроен NAT для раздачи интернета на роутер(ну и соответственно на остальные компы)

так вот проблема в следущем, если отключаю nat с фаерволом, то все работает хорошо
скорость приема и отдачи с сервера около 600-700 КБ/с

как только включаю nat с фаерволом, то скорость на прием остается, а на отдачу резко падает до 15-20 КБ/с

если кто знает, подскажите какие настройки нужно произвести, чтобы такого не происходило

/etc/rc.conf
-------------------------------------------------------
hostname="мой хост"
defaultrouter="ip шлюза"
ifconfig_em0="DHCP"
ifconfig_em0_ipv6="inet6 accept_rtadv"
ifconfig_em1="inet 192.168.0.1 netmask 255.255.255.0"
gateway_enable="YES"
sshd_enable="YES"
ntpd_enable="YES"
natd_enable="YES"
natd_interface="em0"
firewall_enable="YES"
firewall_type="open"

dumpdev="NO"

nginx_enable="YES"
mysql_enable="YES"
php_fpm_enable="YES"
-------------------------------------------------------

/etc/natd.conf
-------------------------------
same_ports yes
use_sockets yes
unregistered_only yes
-------------------------------


Содержание

Сообщения в этом обсуждении
"Включение IPFW+Nat начало резать скорость на отдачу"
Отправлено Aquarius , 30-Янв-13 15:49 
>[оверквотинг удален]
> nginx_enable="YES"
> mysql_enable="YES"
> php_fpm_enable="YES"
> -------------------------------------------------------
> /etc/natd.conf
> -------------------------------
> same_ports yes
> use_sockets yes
> unregistered_only yes
> -------------------------------

ну когда вы уже забудете natd как кошмарный сон?


"Включение IPFW+Nat начало резать скорость на отдачу"
Отправлено Cassej , 30-Янв-13 16:29 
>[оверквотинг удален]
>> mysql_enable="YES"
>> php_fpm_enable="YES"
>> -------------------------------------------------------
>> /etc/natd.conf
>> -------------------------------
>> same_ports yes
>> use_sockets yes
>> unregistered_only yes
>> -------------------------------
> ну когда вы уже забудете natd как кошмарный сон?

а какие есть предложения, просто я кроме него ничего не знал? я бы попробовал что-нить другое но не знаю что именно


"Включение IPFW+Nat начало резать скорость на отдачу"
Отправлено PavelR , 30-Янв-13 16:50 
>[оверквотинг удален]
>>> -------------------------------------------------------
>>> /etc/natd.conf
>>> -------------------------------
>>> same_ports yes
>>> use_sockets yes
>>> unregistered_only yes
>>> -------------------------------
>> ну когда вы уже забудете natd как кошмарный сон?
> а какие есть предложения, просто я кроме него ничего не знал? я
> бы попробовал что-нить другое но не знаю что именно

man ipfw на тему nat


"Включение IPFW+Nat начало резать скорость на отдачу"
Отправлено Pahanivo , 30-Янв-13 17:11 
а можно всех посмотреть?
в смысле фаервол

"Включение IPFW+Nat начало резать скорость на отдачу"
Отправлено Гайдай , 30-Янв-13 17:54 
> а какие есть предложения?

Огласите весь список, пожалуйста! (С)
:)


"Включение IPFW+Nat начало резать скорость на отдачу"
Отправлено Cassej , 30-Янв-13 18:24 
>> а какие есть предложения?
> Огласите весь список, пожалуйста! (С)
> :)

— Демон Natd
— IPFilter (ipnat)
— PF nat
— ng_nat
— ipfw nat (kernel nat)

те, что я нашел


"Включение IPFW+Nat начало резать скорость на отдачу"
Отправлено artemrts , 30-Янв-13 23:17 
>>> а какие есть предложения?
>> Огласите весь список, пожалуйста! (С)
>> :)
> — Демон Natd
> — IPFilter (ipnat)
> — PF nat
> — ng_nat
> — ipfw nat (kernel nat)
> те, что я нашел

Так вы сами ответили на свой вопрос. ))


"Включение IPFW+Nat начало резать скорость на отдачу"
Отправлено Aquarius , 31-Янв-13 07:13 
>>> а какие есть предложения?
>> Огласите весь список, пожалуйста! (С)
>> :)
> — Демон Natd
> — IPFilter (ipnat)
> — PF nat
> — ng_nat
> — ipfw nat (kernel nat)
> те, что я нашел

первый превращается в последний практически без задействования мозга


"Включение IPFW+Nat начало резать скорость на отдачу"
Отправлено Cassej , 31-Янв-13 10:59 
>>>> а какие есть предложения?
>>> Огласите весь список, пожалуйста! (С)
>>> :)
>> — Демон Natd
>> — IPFilter (ipnat)
>> — PF nat
>> — ng_nat
>> — ipfw nat (kernel nat)
>> те, что я нашел
> первый превращается в последний практически без задействования мозга

мозг все-таки задействовать надо, без него я себя все что мог заблокировал


"Включение IPFW+Nat начало резать скорость на отдачу"
Отправлено Дум Дум , 31-Янв-13 09:37 
> как только включаю nat с фаерволом, то скорость на прием остается, а
> на отдачу резко падает до 15-20 КБ/с

А фаервол без ната? А фаервол только с натом?


"Включение IPFW+Nat начало резать скорость на отдачу"
Отправлено Cassej , 31-Янв-13 10:56 
>> как только включаю nat с фаерволом, то скорость на прием остается, а
>> на отдачу резко падает до 15-20 КБ/с
> А фаервол без ната? А фаервол только с натом?

вот не успел затестить, донастраивался вчера, сначала случайно извне себе доступ на сервер закрыл, потом еще немного постарался и изнутри тоже заблокировал, сегодня вечером буду напрямую с сервером работать(после того как клаву куплю) все обратно разблокировать

Начал мучать ipfw_nat, может кто подскажет действенный рецепт настройки, у меня по всяким инструкциям и манам чего-то не получилось?


"Включение IPFW+Nat начало резать скорость на отдачу"
Отправлено кегна , 31-Янв-13 21:14 
>>> как только включаю nat с фаерволом, то скорость на прием остается, а
>>> на отдачу резко падает до 15-20 КБ/с
>> А фаервол без ната? А фаервол только с натом?
> вот не успел затестить, донастраивался вчера, сначала случайно извне себе доступ на
> сервер закрыл, потом еще немного постарался и изнутри тоже заблокировал, сегодня
> вечером буду напрямую с сервером работать(после того как клаву куплю) все
> обратно разблокировать
> Начал мучать ipfw_nat, может кто подскажет действенный рецепт настройки, у меня по
> всяким инструкциям и манам чего-то не получилось?

$ uname -a
FreeBSD xxxxx.xx 9.0-RELEASE-p5

cat /etc/rc.conf
firewall_enable="YES"
firewall_type="simple"
firewall_nat_enable="YES"
firewall_nat_interface="em1"
firewall_nat_flags="same_ports unreg_only"
firewall_simple_oif="em1"            #внешка
firewall_simple_onet="xx.xx.xx.xx/xx"
firewall_simple_iif="em0"
firewall_simple_inet="192.168.0.0/24"

cat /etc/rc.firewall
#    KERNEL NAT в секции simple я добавил вот такие строчки....
if [ -n "${firewall_nat_interface}" ]; then
  ${fwcmd} nat 1 config if ${oif} log ${firewall_nat_flags}
  ${fwcmd} add nat 1 ip from ${inet} to any
  ${fwcmd} add nat 1 ip from any to ${onet} via ${oif}
fi

получилось вот что:
$ ipfw nat show config
ipfw nat 1 config if em1 log same_ports unreg_only

$ ipfw list | grep nat
01600 nat 1 ip from 192.168.0.0/24 to any
01700 nat 1 ip from any to xx.xx.xx.xx/xx via em1


"Включение IPFW+Nat начало резать скорость на отдачу"
Отправлено Cassej , 01-Фев-13 11:38 
>[оверквотинг удален]
>   ${fwcmd} add nat 1 ip from ${inet} to any
>   ${fwcmd} add nat 1 ip from any to ${onet} via
> ${oif}
> fi
> получилось вот что:
> $ ipfw nat show config
> ipfw nat 1 config if em1 log same_ports unreg_only
> $ ipfw list | grep nat
> 01600 nat 1 ip from 192.168.0.0/24 to any
> 01700 nat 1 ip from any to xx.xx.xx.xx/xx via em1

спасибо за подсказку :)
Я на пару часов пораньше решил проблему, но по другому, приведу пример, может кому-то понадобиться в будущем, да и мне может понадобиться когда забуду, а снова встанет такая задача:

/etc/rc.conf
---------------------------------------------------------
ifconfig_em0="DHCP"
ifconfig_em0_ipv6="inet6 accept_rtadv"
ifconfig_em1="inet 192.168.0.1 netmask 255.255.255.0"

gateway_enable="YES"

firewall_enable="YES"
firewall_nat_enable="YES"
firewall_nat_interface="em0" #внешний интерфейс
firewall_type="open"
firewall_flags="unreg_only same_ports unregistered_only"
firewall_script="/etc/rc.firewall" #в моей версии freebsd 9.1 этот файл уже был


"Включение IPFW+Nat начало резать скорость на отдачу"
Отправлено Cassej , 01-Фев-13 15:08 
Теперь все работает быстро, но встала другая проблема:

При закачке больших файлов постоянные  разрывы соединения, например в браузере при получении ajax ответа от сервера можно наблюдать Unexpected end of input(из 1,5 мб он успевает в лучшем случае принять 500кб)

Долго искал ответ в инете, но не нашел нормального решение, везде обычно связано с настройками mp5d...

пока писал все разрешилось для меня одной коммандой ifconfig em0 -tso