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

Исходное сообщение
"Решение проблемы с падением FreeBSD при удалении связанных с dummynet ipfw правил"

Отправлено opennews , 09-Фев-09 19:38 
"Решение проблемы с kernel panic на FreeBSD (http://www.opennet.me/base/sys/freebsd_panic_solution.txt.html)" - разбор причин падения FreeBSD при высокой загруженности системы в момент удаления ipfw правил, отправляющих пакеты в dummynet.

URL: http://www.opennet.me/base/sys/freebsd_panic_solution.txt.html
Новость: http://www.opennet.me/opennews/art.shtml?num=20179


Содержание

Сообщения в этом обсуждении
"Решение проблемы с падением FreeBSD при удалении связанных с dummynet ipfw правил"
Отправлено wtf , 09-Фев-09 19:38 
Вся проблема в этом 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

"Решение проблемы с падением FreeBSD при удалении связанных с..."
Отправлено wtf , 09-Фев-09 20:35 
>Вся проблема в этом 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

описался, ошибка ipfw:ouch!, skip past end of rules, denying packet возникает при
net.inet.ip.fw.one_pass=0


"Решение проблемы с падением FreeBSD при удалении связанных с dummynet ipfw правил"
Отправлено Аноним , 09-Фев-09 21:53 
>описался, ошибка ipfw:ouch!, skip past end of rules, denying packet возникает >при
>net.inet.ip.fw.one_pass=0

Ну разумеется. При этом пакеты из dummynet просто идут мимо фаервола. Так что это применимо в очень редких случаях.
А к чему тут
>ipfw flush

я не понял вообще.


"Решение проблемы с падением FreeBSD при удалении связанных с..."
Отправлено dansoftware , 10-Фев-09 13:48 
Это старая и до сих пор нерешенная проблема: http://www.freebsd.org/cgi/query-pr.cgi?pr=kern/106316

"Решение проблемы с падением FreeBSD при удалении связанных с"
Отправлено Ilya Evseev , 10-Фев-09 20:04 
net.inet.ip.fw.one_pass=0 нужен при использовании netgraph'a.
Избегать kernel panic'a можно IMHO тремя способами:

1) вместо удаления/создания правила менять параметры queue/pipe,
которое используется в правиле, а само правило оставлять без изменений.

2) если в правиле используются таблица, то очистить таблицу и подождать:
ipfw add 10 pipe 20 from any to table(30) in
ipfw table 30 flush && sleep 1 && ipfw delete 10

3) временно добавить "ipfw add N-1 skipto N+1 from any to any" и подождать
(где N - номер dummynet-правила).


"Решение проблемы с падением FreeBSD при удалении связанных с dummynet ipfw правил"
Отправлено byteplayer , 11-Фев-09 23:49 
Я прошу модераторов не удалять мой коммент, как в прошлый раз!
Я говорю по сути! У автора _!В КОРНЕ!_ неправильный подход к построению сервера доступа в Интернет по протоколу РРТР!
Я настаиваю на том, что для того случая, о котором пишет автор, нельзя строить сервер с использованием РОРТОР + user-ppp + ipfw + dummynet.
Такая конфигурация, кроме поедания ресурсов CPU, ничего хорошего не принесёт!
Такие сервера доступа нужно строить с использованием mpd + ng_car.
Тогда всё будет работать _!ОЧЕНЬ!_ быстро, проблем не будет, один сервер сможет обслуживать _!ОЧЕНЬ!_ много клиентов и маршрутизировать много трафика как в мегабитах, так и в килопакетах.
При использовании схемы, описанной автором, такое невозможно!
Не делайте так никто!

"Решение проблемы с падением FreeBSD при удалении связанных с"
Отправлено freebsd_max , 20-Фев-09 22:19 
хе, проше резать трафик самим mpd, man mpd, радиус передаёт функцию на нарезку интерффейса! а ipfw использывать только как нат! фсё пожно зделать проше, и без паники в ядро!


P.S. читаем маны не стесняемся! :)


"Решение проблемы с падением FreeBSD при удалении связанных с"
Отправлено byteplayer , 21-Фев-09 14:00 
хе, проше резать трафик самим mpd, man mpd, радиус передаёт функцию на нарезку интерффейса! а ipfw использывать только как нат! фсё пожно зделать проше, и без паники в ядро!

P.S. читаем маны не стесняемся! :)

Как раз об этом я и говорю!
mpd получает от радиуса опции для настройки ng_car на каждом интерфейсе!
всё очень мощно получается!
Окрываем ссылку и смотрм в самом её низу:
http://mpd.sourceforge.net/doc5/mpd30.html#30