1.4, Аноним (4), 15:35, 09/02/2009 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
хм
есть такой же сервер примерно
фря 6.2
канал 10 мегабит
проблем пока таких небыло слава богу
также ipfw + shaper
спасибо автор, в закладки
| |
1.6, byteplayer (?), 15:39, 09/02/2009 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
На такой тачке должен стоять FreeBSD 7.1 + mpd 5.2, который использует для нарезок на каждом туннеле ng_car, параметры которого передаются от FreeRadius, который, в свою очередь берёт их из базы данных в момент коннекта юзера. Так можно хоть 300М роутить с тыщей туннелей, а кто-то может смог и более, а на рортор в юзер-левеле много не промаршрутизируешь.
| |
|
2.28, Radist (?), 20:13, 10/02/2009 [^] [^^] [^^^] [ответить]
| +/– |
>На такой тачке должен стоять FreeBSD 7.1 + mpd 5.2, который использует
>для нарезок на каждом туннеле ng_car, параметры которого передаются от FreeRadius,
>который, в свою очередь берёт их из базы данных в момент
>коннекта юзера. Так можно хоть 300М роутить с тыщей туннелей, а
>кто-то может смог и более, а на рортор в юзер-левеле много
>не промаршрутизируешь.
ИМХО mpd не подойдет, т.к. судя по описанию работает в один поток, а хочется использовать все четіре ядра.
Но. Если не ошибаю, то в описании написано, что все подключения обробатіваются одним процессом mpd. Конечно єто не мешат mpd посоздавать треди для каждого подключения и использовать все ядра одновременно. Я не пробівал. Кто знает, может он так и делает.
А poptop для каждого подключения создает отднльній процес, тоесть все ядра будут использоватся на 100%. Кстати, не знаю как там на щет юзер-левела, но у меня в топе, загрузка системі 50% а юзер - 3%.
| |
|
1.7, stasav (??), 15:48, 09/02/2009 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
ng_car не выход, в случае частичной зарезки скорости по диапазонам адресов он не подходит, так как вешается на интерфейс.
| |
1.8, mummy (?), 15:52, 09/02/2009 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
Никогда не было проблем. Перегружал так
1) Выключить ограничение
/sbin/ipfw add 999 allow all from any to any
sleep 3
2) Генерируем файл /tmp/fw.tmp:
disable firewall
flush
pipe flush
queue flush
add 1 allow tcp from 192.168.99.2 to me 22
add 2 deny tcp from any to me 22
add 1000 pipe 1 ip from 192.168.1.11 to any
add 1001 pipe 2 ip from any to 192.168.1.11
...
...
enable firewall
3) Проверка правил на ошибки и перегрузка настроек
/sbin/ipfw -qn /tmp/fw.tmp
if [ "$?" != "0" ]; then
echo "There was errors in rules."
exit 1
fi
/sbin/ipfw -q /tmp/fw.tmp
| |
|
2.16, mummy (?), 20:24, 09/02/2009 [^] [^^] [^^^] [ответить]
| +/– |
P.S. У меня sysctl net.inet.ip.fw.one_pass=1
net.inet.ip.fw.one_pass: 1
Forces a single pass through the firewall. If set to 0,
packets coming out of a pipe will be reinjected into the
firewall starting with the rule after the matching one.
NOTE: there is always one pass for bridged packets.
| |
|
3.26, Radist (?), 18:50, 10/02/2009 [^] [^^] [^^^] [ответить]
| +/– |
>P.S. У меня sysctl net.inet.ip.fw.one_pass=1
>
>net.inet.ip.fw.one_pass: 1
Не проходит, т.к. шейпов у меня несколько - на юзера, на групу, на тип трафика и т.д. Кроме того иногда не хочется отправлять пакет по маршруту в таблице маршрутизации (что стлучится вданном случае), а переслать его с помощью fwd
| |
|
2.25, Radist (?), 18:47, 10/02/2009 [^] [^^] [^^^] [ответить]
| +/– |
У меня время пересоздавания до тісячи правил на загруженой машине (сейчас в фаерволе более 3 тісяч) достигает пару минут. Бістерее будет перезагрузить сервер :) Но єто не решение.
| |
|
1.9, Buba (??), 16:13, 09/02/2009 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
Тут говорилось про altq но шейпер лучше вынести на отдельную машину и использовать полноформатный altqd (в нём присутвует возможность обреза входящего трафа и динамические очереди) в NetBSD у него возможностей больше чем у dummynet и работает стабильно у меня на 100мегабитной нагрузке уже больше года.
| |
|
|
|
4.24, dansoftware (ok), 14:11, 10/02/2009 [^] [^^] [^^^] [ответить]
| +/– |
>Тут нигде не сказано про панику.
Справедливое замечание. Тем не менее, на этот PR я наткнулся, когда разбирался с описанной в статье проблемой.
| |
|
|
2.27, Radist (?), 18:52, 10/02/2009 [^] [^^] [^^^] [ответить]
| +/– |
>Спасибо за описание проблемы. Оформили ли вы PR по результатам?
Ничего не формлял. В силу различніх причин.
| |
|
1.11, Аноним (-), 17:32, 09/02/2009 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
Автор, можешь расшифровать это предложение
>Причем пакет возвращается не на правило с
>номером большим чем правило отправившее пакет на >dummynet как это есть в
>natd, а пакет возвращается на СЛЕДУЮЩЕЕ правило.
Чем первое утверждение отличается от второго ?
| |
|
2.12, terminus (ok), 17:52, 09/02/2009 [^] [^^] [^^^] [ответить]
| +/– |
> Автор, можешь расшифровать это предложение
>>Причем пакет возвращается не на правило с
>>номером большим чем правило отправившее пакет на >dummynet как это есть в
>>natd, а пакет возвращается на СЛЕДУЮЩЕЕ правило.
>
>Чем первое утверждение отличается от второго ?
цитата из:
http://nuclight.livejournal.com/124348.html
...
Подобное выведение пакета из обработки ipfw в другую подсистему - не уникально
для divert, это общая схема работы в стеке FreeBSD. Например, действия pipe и
queue в dummynet, передача пакета в netgraph (а также появившийся в 7.0
ipfw nat) действуют по тому же принципу. Отличие, однако, в том, что в этих
подсистемах пакет остается внутри ядра, никакому демону не передается.
Поэтому, во-первых, подсистемы вместо номера правила сохраняют на него полный
указатель, и пакет вернется непосредственно в следующее правило, даже если оно
имеет тот же номер.
...
| |
|
3.14, Аноним (-), 18:38, 09/02/2009 [^] [^^] [^^^] [ответить]
| +/– |
Спасибо, так понятнее.
Могу, однако заметить, что сообщения
>ipfw: ouch!, skip past end of rules, denying packet
вполне безобидны и к панике не приводят. У меня на нагруженном роутере таких сообщений множество. Они означают именно то, что означают - пакет просто отбрасывается. Также на этом сервере в больших количествах постоянно создаются и удаляются пайпы и правила, направляющие трафик в них. (На сервере стояла 6.1, затем 6.4). Так что я думаю до сути проблемы вы не докопались и утверждение
>СИСТЕМА ПАДАЕТ КОГДА УДАЛЯЕТСЯ ПРАВИЛО КОТОРОЕ ОТПРАВЛЯЕТ ПАКЕТЫ НА DUMMYNET
неверно.
| |
|
|
1.15, wtf (ok), 19:38, 09/02/2009 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
Вся проблема в этом net.inet.ip.fw.one_pass если выставить в 0 то ipfw:ouch!, skip past end of rules, denying packet не будет, если эта переменная всеже необходима то я решал проблему отказом от ipfw flush.
Да и интернет не молчит http://www.google.ru/search?q=ipfw:+ouch!,+skip+past+end+of+rules,+denying+packet.++&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:ru-RU:unofficial&client=firefox-a
| |
|
|
3.18, wtf (ok), 20:33, 09/02/2009 [^] [^^] [^^^] [ответить]
| +/– |
да в 1, при этом параметры пакет проходит только через первое подходящее правило, при 0 он проходит через все правила, отсюда и ошибка - во время флуша пакет не находит следующего правила в которое он был отправлен.
| |
|
|
1.20, pashaumka (?), 23:36, 09/02/2009 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
не знаю как у вас с mpd, но у меня работа построена на pppoed & ppp - 100 мбит канал и при подключении/отключении создаются и удаляются правила - серваки жужжат и не парятся...150 сессий - 10% загрузки железок. всё железо на интеловых серверных матерях
| |
|
2.29, Radist (?), 20:25, 10/02/2009 [^] [^^] [^^^] [ответить]
| +/– |
У меня 600 сессий ВПН и одновременно ломятся в инет до 100.
Сейчас прошло уже более месяца. Серваки ни разу (сплюнуть три раза через плечо) не ребутнулись
З.І. Похожая проблема обнаружилась еще на одном серваке (АМД, два ядра, 6.5 фря, занимается НАТ в пять потоков, т.к. в один поток не справляется). Правил фаєрвола до 300, но есть пару пайп. Иногда при нагрузке близкой к 4 (в еденицах топа), когда удалял правило фаєрвола, все єто чудо просто ребуталось (даже без дампа и сообщений в логах). Исправил по образу и подобию, пока все гуд.
З.З.І. Спользовать общие пайпі на несколько юзеров немог, т.к. используется система бонусов и у каждого юзверя своя скорость.
Испольщовать таблиці (имеестя в виду tablearg), можно, но только если не удалять соответствующие правила, а править параметрі пайп. Тоесть все то-же самое.
| |
|
|
4.32, Radist (?), 20:28, 13/02/2009 [^] [^^] [^^^] [ответить]
| +/– |
>>6.5 фря
>
>Так и знал, что машину времени уже изобрели.
Sorry, 6.2
| |
|
|
|
1.34, ak (??), 19:17, 08/05/2009 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
Наблюдаю аналогичную проблему на FreeBSD + mpd4 на больших нагрузках (сотни тунелей, десятки килобит в секунду). Причем как на AMD, так и Intel. Как с net.inet.ip.fw.one_pass: 1 так и 0. Как с net.inet.ip.dummynet.io_fast=1, так и 0. Но действительно, на системах, где правила активно удаляются, намного чаще.
есть очень схожие багрепорты:
http://www.freebsd.org/cgi/query-pr.cgi?pr=kern/121382
http://www.freebsd.org/cgi/query-pr.cgi?pr=kern/118128
оба открыты. Все собираюсь дописать, собираю информацию. Напишите плз туда свое наблюдение.
| |
|
2.35, ak (??), 11:50, 12/05/2009 [^] [^^] [^^^] [ответить]
| +/– |
>десятки килобит в секунду
*десятки мегабит в секунду, сори
| |
|
1.36, napTu (??), 22:11, 16/03/2010 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
интересная статейка, а я то думал отчего у меня паник был постоянный после пересборок ядра, обновлений фри...
Что интересно, решилось пересборкой ядра с режимом отладки. После этого не падает.
Правда нет mpd, работает как основной шлюз с авторизацией stargazer, но правила постоянно добавляются-удаляются в зависимости от активности абонентов(не в моменты подключения-отключения)
Последовательность следующая:
ipfw delete $rulenum
ipfw pipe delete $rulenum
...
ipfw pipe $rulenum config bw $speed2
ipfw add $rulenum3 pipe $rulenum ip from...
| |
1.37, napTu (??), 22:16, 16/03/2010 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
а, кстати, говорят что то подправили в dummynet с месяц назад, связанное с падениями при 100% загрузке
у меня недавно упал сервак при выключении dummynet_io_fast в 0 на ядре 7.2p3
Знающие люди порекомендовали обновиться на последние патчи.
| |
1.38, napTu (ok), 10:09, 26/05/2010 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
недавно понадобилось грохнуть все правила с pipe. Упали...
FreeBSD 7.2-RELEASE-p7
| |
|