FreeBSD 7.2 + mpd5.4 + bge карты

Настройка сетевых служб, маршрутизации, фаерволлов. Проблемы с сетевым оборудованием.
Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Zohan
рядовой
Сообщения: 34
Зарегистрирован: 2010-01-03 10:40:15

FreeBSD 7.2 + mpd5.4 + bge карты

Непрочитанное сообщение Zohan » 2010-02-25 8:56:47

FreeBSD 7.2 + mpd5.4
HP DL360 G4

bge0 смотрит в локалку
bge1 смотрит в инет с реальным адресом и несколькими алиасами с реальными адресами

предполагаемая нагрузка в 1000 pptp/l2tp сессий

перекомпилировал ядро с KVA_PAGES=512


cat /boot/loader.conf

Код: Выделить всё

pf_load="YES"
kern.ipc.maxpipekva=256000009
kern.ipc.maxsockets=262144
kern.ipc.nmbclusters=262144
kern.maxfiles=204800
kern.maxfilesperproc=200000
kern.ipc.maxsockbuf=524288
autoboot_delay="3"
kern.maxusers=1024
net.graph.maxdata=1024
vm.kmem_size=1G
vm.kmem_size_max=1G
cat /etc/sysctl.conf

Код: Выделить всё

net.inet.icmp.icmplim=5000
net.graph.maxdgram=200000
net.graph.recvspace=200000
net.inet.tcp.sendspace=65536
net.inet.tcp.recvspace=65536
kern.ipc.somaxconn=4096
kern.maxfilesperproc=200000
kern.maxvnodes=200000
kern.ipc.maxsockbuf=4097152
net.inet.ip.intr_queue_maxlen=5120
net.route.netisr_maxqlen=512
net.local.stream.recvspace=65535
net.local.stream.sendspace=65535
net.inet.tcp.blackhole=2
net.inet.udp.blackhole=1
cat /usr/local/etc/mpd5/linkup

Код: Выделить всё

#!/usr/local/bin/bash

if [ "X`echo $4|egrep -c 192.168.`" != "X0" ]; then
 pfctl -t accept -T add $4
 echo "$4" >> log.txt
fi
cat /etc/pf.conf

Код: Выделить всё

ext_if="bge0"
#int_net_vpn="192.168.1.0/8"
icmp_types="{echoreq, unreach}"
table <blocked> persist
table <accept> persist

# Options
set require-order yes
#set block-policy drop
#set block-policy return
#set optimization normal
set loginterface none
set skip on lo0

# Normalize packets
#scrub in all
#scrub out all

#NAT
nat pass from <accept> to any -> 77.**.***.**
№nat pass from <accept> to any -> $ext_if
nat pass from <blocked> to any port {80, 443, 8080, 3128} -> $ext_if


#Redirecting ports
rdr pass proto tcp from <blocked> to any port {80, 8080, 3128} -> 10.0.2.240 port 80
rdr pass proto tcp from <blocked> to any port {443} -> 10.0.2.240 port 443

block all

pass out keep state
pass out all

pass inet from <blocked> to 10.0.2.240
pass inet from 10.0.2.240 to <blocked>

pass inet from 77.**.**.0/24 to any
pass in inet from any to 77.**.**.0/24
pass out inet from 77.**.**.0/24 to any


pass inet from <accept> to !(self)
#pass inet from any to !(self)

pass in on $ext_if inet proto tcp from any to any port 1723
pass in on $ext_if inet proto udp from any to any port 1701
pass in on $ext_if inet proto gre from any to any
pass in on $ext_if inet proto tcp from any to any port 22
pass in on $ext_if inet proto tcp from any to any port 53
pass in on $ext_if inet proto udp from any to any port 53
pass in on $ext_if inet proto udp from any to any port 1814
pass in on $ext_if inet proto udp from any to any port 1813
pass in on $ext_if inet proto udp from any to any port 1812
pass in on $ext_if inet proto udp from any to any port 123
pass in on $ext_if inet proto tcp from any to any port 5006


pass in on bge1 inet proto tcp from any to 77.**.***.** port ssh

pass in on $ext_if inet proto icmp all icmp-type $icmp_types
#pass out on $ext_if inet proto icmp all icmp-type $icmp_types

После часа идеальной работы и начинающейся нагрузке в 150 сессий начинается латентность сети - named очень медленно отдает запросы, страницы открываются медленно.
Хотя пинги идут идеально через ВПН.

Заметил что с самого начала идут ошибки на интерфейсах - netstat -w 1: при 4000 пакетов в секунду уже проскакивают 1-3 ошибки
также заметил что sysctl -a | grep dev.bge дает dev.bge.1.stats.rx.FCSErrors: 4676 и дальше растет :(
знаю что у этих карт есть сейчас проблема в Stable версии, но ведь в 7.2-RELEASE такого вроде нет.

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

Аватара пользователя
baton4eg
сержант
Сообщения: 274
Зарегистрирован: 2009-10-11 14:36:35
Контактная информация:

Re: FreeBSD 7.2 + mpd5.4 + bge карты

Непрочитанное сообщение baton4eg » 2010-02-25 10:32:42

а вывод pfctl -ss | wc -l можно ?
"Все говорят, что у меня /dev/hands криво и я всё делаю через /dev/ass. А у меня этих файлов вообще нет!" (c)
"Я ем руками, она вилкой и ножом, я бью вилкой и ножом, она руками" (с)

Zohan
рядовой
Сообщения: 34
Зарегистрирован: 2010-01-03 10:40:15

Re: FreeBSD 7.2 + mpd5.4 + bge карты

Непрочитанное сообщение Zohan » 2010-02-25 11:10:52

baton4eg писал(а):а вывод pfctl -ss | wc -l можно ?
Завтра утром выложу. Что еще нужно/можно выложить, логи может какие?

Аватара пользователя
baton4eg
сержант
Сообщения: 274
Зарегистрирован: 2009-10-11 14:36:35
Контактная информация:

Re: FreeBSD 7.2 + mpd5.4 + bge карты

Непрочитанное сообщение baton4eg » 2010-02-25 12:17:12

всё выкладывай что есть :)
"Все говорят, что у меня /dev/hands криво и я всё делаю через /dev/ass. А у меня этих файлов вообще нет!" (c)
"Я ем руками, она вилкой и ножом, я бью вилкой и ножом, она руками" (с)

Zohan
рядовой
Сообщения: 34
Зарегистрирован: 2010-01-03 10:40:15

Re: FreeBSD 7.2 + mpd5.4 + bge карты

Непрочитанное сообщение Zohan » 2010-02-26 8:18:18

Да, Вы были правы, таблица states была переполнена,
set limit {states 300000, src-nodes 300000}
увеличил до 300000 - все отлично, спасибо.

Но теперь есть другая проблема с которой столкнулся - в netstat -w 1 сыпятся ошибки уже при 20 Мбит/с, единицами, но чем выше тем больше:

Код: Выделить всё

            input        (Total)           output
   packets  errs      bytes    packets  errs      bytes colls
     17143     6    9702780      21933     0   15069125     0
     17667     1    9891583      22098     0   15026861     0
     16824     0    9531438      21779     0   15099333     0
     17657     1    9794952      22346     0   15175035     0
     17469     2    9539822      22636     0   14913510     0
     17149     5    9721691      21757     0   14704150     0
     16466     2    9285077      21783     0   14683952     0
     17012     7    9604861      22663     0   15446231     0
     16197     5    9245003      21287     0   14737452     0
еще смущает:
sysctl -a | grep dev.bge

Код: Выделить всё

...
dev.bge.0.stats.InputErrors: 14
dev.bge.0.stats.rx.FCSErrors: 424
...
dev.bge.1.stats.rx.FCSErrors: 11173
dev.bge.1.stats.InputErrors: 97
...
на работу вроде бы это никак не влияет, но что это и какова причина, как можно устранить?