23.02.11 @ 01:33 Alexey Karguine wrote:
[mu] /var/crash % kldstat
Id Refs Address Size Name
1 8 0xc0400000 bb5504 kernel
2 1 0xc5ea1000 37000 ipl.ko
3 1 0xc60e6000 11000 ipfw.ko
4 1 0xc60f8000 d000 libalias.ko
В машине установлены две интеловские гигабитные карточки. На одной из
них подняты два влана. Работает quagga, забирает bgp-маршруты (не
full-view). Также эта машина натит трафик с помощью ipnat.
А зачем ipfw/libalias, если ipnat?
Не знаю, откуда он там взялся. Может его что-то штатное подгружать?
В rc.conf кроме ifconfig/route/hostname есть вот это:
firewall_enable="YES"
firewall_type="open"
Ну отсюда и берется. А зачем писать, если не используется?
Проблема заключается в том, что не реже одного раза в неделю эта
машина ловит kernel panic и перегружается.
Менять пробовал всё, что только можно: сетевые карты, полностью
компьютер с переустановкой ОСи начисто, блок питания, патч-корды.
Зачем это шаманство, если по dmesg явно видно активное сканирование
tcp-портов?
А не может это быть потому, что машина натит через себя сеть на пару
сотен машин, многие из которых активно льют торренты? Не они ли там с
портами договариваются?
Оно самое, значит. Можно поставить net/miniupnpd, настроить в нем UPnP или
NAT-PMP, он будет добавлять редиректы этих портов в нат по запросу
клиентских торрентов.
Опыта в отлове таких проблем у меня нет никакого, но чувствую, что
дело в нате. Куда копать, что пробовать?
Пробовать лучше перейти на другой нат - ipfilter давно уже deprecated.
Покопать можно в сторону зарезки лишних пакетов (сканы портов).
А что посоветуете? ipfw nat? Не natd же использовать.
Ближайший по синтаксису - pf, он и создавался как замена ipfilter. Как и
он, не умеет править payload пакета (ftp/irc dcc/pptp gre/etc.). На базе
libalias сделаны natd, ipfw nat, ng_nat. У ipfw nat криво сделана
управляющая обертка. А ng_nat несколько сложен в настройке; впрочем, можно
взять скрипт для конфигурирования
http://antigreen.org/vadim/freebsd/ng_nat/ (там же есть демон NAT-PMP для
связки с такой конфигурацией и/или нескольких внешних адресов - miniupnpd
и UPnP вообще такую ситуацию не умеет).
--
WBR, Vadim Goncharov