Имеются два PPPoE-шлюза на FreeBSD 9.1. PPPoE-сервер - mpd5.6, Quagga 0.99.22 используется как маршрутизатор OSPF. Раз в месяц-полтора один из серверов встает колом и выдает следующее
Код: Выделить всё
processor eflags = interrupt enabled, resume, IOPL = 0
current process = 0 (eml que)
trap number = 18
panic: integer divide fault
cpuid = 4
KDB: stack backtrace:
#0 0xffffffff80943986 at kdb_backtrace+0x66
#1 0xfffffff f8090d99e at panic+0xlce
#2 0xffffffff80be5bl0 at trap_fata1+0x290
#3 0xffffffff80be61a5 at trap+0xl05
#4 0xffffffff80bd0a2f at calltrap+0x8
#5 0xffffffff8162f126 at ng_bpf_rcvdata+0x66
#6 0xffffffff80al47a8 at ng_apply_item+0x208
#7 0xffffffff80al390e at ng_snd_item+0x39e
#8 0xffffffff816207be at ng_iface_send+0xee
#9 0xffffffff81620bd3 at ng_iface_output+0xlb3
#10 0xffffffff80a33252 at ip_fastforward+0x752
#11 0xffffffff809c64el at ether_demux+0xl31
#12 0xffffffff809c67c4 at ether_nh_input*0xlf4
#13 0xffffffff809d057b at netisr_dispatch_src+0x20b
#14 0xf f f f f ff f804d216a at em_rxeof+0xlca
#15 0xffffffff804d25e8 at em_handle_que+0x48
#16 0xffffffff80950035 at taskqueue_run_locked+0x85
#17 0xffffffff80950fb6 at taskqueue_thread_loop+0x46
Появляется проблема, как правило, когда при старте сервера начинают подниматься сессии и ng интерфейсы, они добавляются в кваггу с опцией ip ospf network хотя в конфиге четко прописан passive-interface default. То есть квагга игнорирует опции для интерфейсов отсутствующих в системе при старте квагги.
Соответственно, начинается бешеное обновление базы OSPF и сервер (зачастую соседний) встает колом.
"Решение" пока состоит в ручном прописывании no ip ospf network на ng интерфейсах в консоли квагги.
Можно ли как-то отучить кваггу от такого безобразного поведения?