I tried to play with idea to move my routers configs to the zebra
daemon. Would require some custom stuff to handle vlans etc. but
nothing too hard. Started with ip addresses, but ...
Moved ip addresses of 70 vlan interfaces to the zebra.conf and no go.
Zebra daemon isn't able to start and machine hangs. All I see is a
lot of "recvmsg overrun" messages. After some googling I tried to
play with two ideas.
1) Increasing buffer size with SO_RCVBUF. I got it working with huge
buffers, but I wouldn't rely on it in production system. There is no
way I can quarantee that I don't hit limit again if number of vlan
interfaces is increased.
2) Disabling netlink at all. But in this case I loose features. No
proto zebra flag, no equalize flag etc. Also, it seems that it's
missing some privs raise/lower bits (I will look into it later, but
it's not high priority).
So, there is no go at the moment. I still have to configure my routers
in two places - interfaces/addresses in init scripts and routing in
quagga.
But all this netlink stuff sounds quite dangerous for me and should be
fixed somehow IMHO. According to linux network developers correct
solution would be detect that something was lost and resync:
http://oss.sgi.com/projects/netdev/archive/2001-01/msg00215.html
(whole thread is quite interesting reading)
Ideas?
--
Hasso Tepper
Elion Enterprises Ltd.
WAN administrator
daemon. Would require some custom stuff to handle vlans etc. but
nothing too hard. Started with ip addresses, but ...
Moved ip addresses of 70 vlan interfaces to the zebra.conf and no go.
Zebra daemon isn't able to start and machine hangs. All I see is a
lot of "recvmsg overrun" messages. After some googling I tried to
play with two ideas.
1) Increasing buffer size with SO_RCVBUF. I got it working with huge
buffers, but I wouldn't rely on it in production system. There is no
way I can quarantee that I don't hit limit again if number of vlan
interfaces is increased.
2) Disabling netlink at all. But in this case I loose features. No
proto zebra flag, no equalize flag etc. Also, it seems that it's
missing some privs raise/lower bits (I will look into it later, but
it's not high priority).
So, there is no go at the moment. I still have to configure my routers
in two places - interfaces/addresses in init scripts and routing in
quagga.
But all this netlink stuff sounds quite dangerous for me and should be
fixed somehow IMHO. According to linux network developers correct
solution would be detect that something was lost and resync:
http://oss.sgi.com/projects/netdev/archive/2001-01/msg00215.html
(whole thread is quite interesting reading)
Ideas?
--
Hasso Tepper
Elion Enterprises Ltd.
WAN administrator