[Babel-users] killing myself with a configuration error

Dave Taht dave.taht at gmail.com
Wed Jul 2 16:48:23 UTC 2014


I was fiddling with filtering out cero's /27s with the method
described in the previous thread, using the blackhole route to the
covering /24 and

redistribute ip 0.0.0.0/0 le 24 allow

in the conf file

and a command line of babeld -D -z3 -c /etc/babeld.conf ge00 se00 gw00
gw01 gw11 sw00 sw10 sw01

That does indeed work. Elsewhere on the network instead of seeing the
former /27s and /32s exported I see a single /24 and the /32s

root at roof-to-office:~# ip route | grep 172.21.2
172.21.2.0/24 via 172.20.142.9 dev eth0  proto 42 onlink
172.21.2.1 via 172.20.142.9 dev eth0  proto 42 onlink
172.21.2.5 via 172.20.142.9 dev eth0  proto 42 onlink
172.21.2.12 via 172.20.142.9 dev eth0  proto 42 onlink
172.21.2.65 via 172.20.142.9 dev eth0  proto 42 onlink
172.21.2.77 via 172.20.142.9 dev eth0  proto 42 onlink
172.21.2.129 via 172.20.142.9 dev eth0  proto 42 onlink
172.21.2.161 via 172.20.142.9 dev eth0  proto 42 onlink
172.21.2.224 via 172.20.142.9 dev eth0  proto 42 onlink

cutting the number of routes exported in half. I was kind of hoping to
be rid of most of  P2P announcements also...

Interestingly, on the next hop out, I see

root at archer-test:~# ip route | egrep '172.21.2|172.21.50'
172.21.2.0/24 via 172.21.18.13 dev se00  proto babel onlink
172.21.2.1 via 172.21.18.13 dev se00  proto babel onlink
172.21.2.5 via 172.21.18.13 dev se00  proto babel onlink
172.21.2.12 via 172.21.18.13 dev se00  proto babel onlink
172.21.2.65 via 172.21.3.11 dev ge00  proto babel onlink
172.21.2.77 via 172.21.18.13 dev se00  proto babel onlink
172.21.2.129 via 172.21.18.13 dev se00  proto babel onlink
172.21.2.161 via 172.21.18.13 dev se00  proto babel onlink
172.21.2.224 via 172.21.3.11 dev ge00  proto babel onlink

(this is a bridged interface on the same box)
172.21.50.0/24 via 172.21.3.11 dev ge00  proto babel onlink
172.21.50.2 via 172.21.3.11 dev ge00  proto babel onlink
172.21.50.4 via 172.21.3.11 dev ge00  proto babel onlink

The ge00 and se00 devices are effectively equivalent (they are both
going through the same edgerouter on different ports), I assume that
diversity is playing a role here, in part because .65,.129,.161 do not
have a channel associated with them due to the bug noted in the
previous email, but are probably listed as "interfering". Call it
'mistaken cost multipath' - which is not a bad thing!

And then, I goofed, combining that with the original openwrt babel
conf file which has lines like:

config filter
        option 'ignore' 'false'
        option 'type' 'redistribute'
        option 'if' 'se00'
        option 'action' 'metric 96'

in it, with that setup.

The results were "interesting". Babel ran amuck, eating nearly all the
cpu, flooding the network, and having the following ill effects:


netlink_read: recvmsg(): No buffer space available
kernel_route(ADD): File exists
kernel_route(ADD): File exists
netlink_read: recvmsg(): No buffer space available
netlink_read: recvmsg(): No buffer space available
Warning: bucket full, dropping unicast packetto
fe80::221:63ff:fe2f:f2f4 if gw01.
Warning: bucket full, dropping unicast packetto
fe80::221:63ff:fe2f:f2f4 if gw01.
Warning: bucket full, dropping unicast packetto
fe80::221:63ff:fe2f:f2f4 if gw01.
Warning: bucket full, dropping unicast packetto
fe80::221:63ff:fe2f:f2f4 if gw01.
Warning: bucket full, dropping unicast packetto
fe80::221:63ff:fe2f:f2f4 if gw01.
Warning: bucket full, dropping unicast packetto
fe80::260a:64ff:fecc:247d if sw00.
Warning: bucket full, dropping unicast packetto
fe80::221:63ff:fe2f:f2f4 if gw01.
Warning: bucket full, dropping packet to sw00.
Warning: bucket full, dropping packet to gw01.
Warning: bucket full, dropping packet to sw00.
Warning: bucket full, dropping unicast packetto
fe80::260a:64ff:fecc:247d if sw00.
Warning: bucket full, dropping packet to gw01.
Warning: bucket full, dropping packet to sw00.
Warning: bucket full, dropping unicast packetto
fe80::221:63ff:fe2f:f2f4 if gw01.
Warning: bucket full, dropping packet to sw00.
Warning: bucket full, dropping unicast packetto
fe80::260a:64ff:fecc:247d if sw00.
Warning: bucket full, dropping packet to gw01.
Warning: bucket full, dropping packet to gw01.
Warning: bucket full, dropping unicast packetto
fe80::221:63ff:fe2f:f2f4 if gw01.
Warning: bucket full, dropping packet to sw00.
Warning: bucket full, dropping unicast packetto
fe80::260a:64ff:fecc:247d if sw00.
Warning: bucket full, dropping packet to gw01.
Warning: bucket full, dropping unicast packetto
fe80::221:63ff:fe2f:f2f4 if gw01.
Warning: bucket full, dropping unicast packetto
fe80::260a:64ff:fecc:247d if sw00.
Warning: bucket full, dropping unicast packetto
fe80::221:63ff:fe2f:f2f4 if gw01.
Warning: bucket full, dropping unicast packetto
fe80::260a:64ff:fecc:247d if sw00.
Warning: bucket full, dropping unicast packetto
fe80::221:63ff:fe2f:f2f4 if gw01.
Warning: bucket full, dropping unicast packetto
fe80::260a:64ff:fecc:247d if sw00.
Warning: bucket full, dropping unicast packetto
fe80::221:63ff:fe2f:f2f4 if gw01.
Warning: bucket full, dropping unicast packetto
fe80::260a:64ff:fecc:247d if sw00.
Warning: bucket full, dropping packet to gw01.
Warning: bucket full, dropping packet to sw00.
Warning: bucket full, dropping unicast packetto
fe80::221:63ff:fe2f:f2f4 if gw01.
Warning: bucket full, dropping packet to sw00.
Warning: bucket full, dropping unicast packetto
fe80::260a:64ff:fecc:247d if sw00.
Warning: bucket full, dropping packet to gw01.
Warning: bucket full, dropping unicast packetto
fe80::221:63ff:fe2f:f2f4 if gw01.
Warning: bucket full, dropping unicast packetto
fe80::260a:64ff:fecc:247d if sw00.
Warning: bucket full, dropping unicast packetto
fe80::221:63ff:fe2f:f2f4 if gw01.
Warning: bucket full, dropping unicast packetto
fe80::260a:64ff:fecc:247d if sw00.
Warning: bucket full, dropping unicast packetto
fe80::221:63ff:fe2f:f2f4 if gw01.
Warning: bucket full, dropping unicast packetto
fe80::260a:64ff:fecc:247d if sw00.
Warning: bucket full, dropping unicast packetto
fe80::221:63ff:fe2f:f2f4 if gw01.
Warning: bucket full, dropping unicast packetto
fe80::260a:64ff:fecc:247d if sw00.
Warning: bucket full, dropping unicast packetto
fe80::221:63ff:fe2f:f2f4 if gw01.
Warning: bucket full, dropping unicast packetto
fe80::260a:64ff:fecc:247d if sw00.

send: Resource temporarily unavailable
Warning: bucket full, dropping packet to gw01.
Warning: bucket full, dropping unicast packetto
fe80::221:63ff:fe2f:f2f4 if gw01.
Warning: bucket full, dropping packet to gw01.
Warning: bucket full, dropping unicast packetto
fe80::221:63ff:fe2f:f2f4 if gw01.
Warning: bucket full, dropping packet to sw00.
Warning: bucket full, dropping packet to gw01.
Warning: bucket full, dropping packet to sw00.
Warning: bucket full, dropping packet to gw01.
Warning: bucket full, dropping unicast packetto
fe80::260a:64ff:fecc:247d if sw00.
send: Resource temporarily unavailable
send: Resource temporarily unavailable
send: Resource temporarily unavailable
send: Resource temporarily unavailable
send: Resource temporarily unavailable
send: Resource temporarily unavailable
send: Resource temporarily unavailable
send: Resource temporarily unavailable
send: Resource temporarily unavailable
send: Resource temporarily unavailable
send: Resource temporarily unavailable
send: Resource temporarily unavailable
send: Resource temporarily unavailable
send(unicast): Resource temporarily unavailable
send: Resource temporarily unavailable
send: Resource temporarily unavailable


-- 
Dave Täht

NSFW: https://w2.eff.org/Censorship/Internet_censorship_bills/russell_0296_indecent.article



More information about the Babel-users mailing list