[Babel-users] Babeld doesn't cleanup unreacheable route before stopping
Gioacchino Mazzurco
gio at eigenlab.org
Tue Dec 11 20:24:54 UTC 2012
Stopping babeld 1.3.4 I was expecting it clean up the routing table
before stopping, but it is not happening
here you can see what happen
---------> The routing table while babeld is running <---------
zefiro ~ # ip -6 route show
2001:470:c8f7:ee:: via fe80::f4fa:7bff:fe8e:df20 dev babeld proto 42
metric 1000
unreachable 2001:470:c8f7:ee:: dev lo proto 42 metric -1 error -101
2001:470:c8f7:ee:ee::cee via fe80::f4fa:7bff:fe8e:df20 dev babeld proto
42 metric 1000
unreachable 2001:470:c8f7:ee:ee::cee dev lo proto 42 metric -1 error -101
2001:470:c8f7:ee:ee::1000 via fe80::f4fa:7bff:fe8e:df20 dev babeld
proto 42 metric 1000
unreachable 2001:470:c8f7:ee:ee::1000 dev lo proto 42 metric -1 error
-101
2001:470:c8f7:ee:ee:15:6d7b:4cbc via fe80::f4fa:7bff:fe8e:df20 dev
babeld proto 42 metric 1000
2001:470:c8f7:ee:ee:15:6d7b:4d21 via fe80::f4fa:7bff:fe8e:df20 dev
babeld proto 42 metric 1000
2001:470:c8f7:ee:d48:b42c:d670:4fc via fe80::f4fa:7bff:fe8e:df20 dev
babeld proto 42 metric 1000
2001:470:c8f7:ee::/64 via fe80::f4fa:7bff:fe8e:df20 dev babeld proto 42
metric 1000
unreachable 2001:470:c8f7:ee::/64 dev lo proto 42 metric -1 error -101
2001:500:3::42 via 2001:1418:100:3ae::1 dev sixxs proto 37 metric 1024
2001:1418:100:3ae::/64 dev sixxs proto kernel metric 256
unreachable 2001:1418:1a9:eeab::d1 dev lo proto 42 metric -1 error -101
unreachable 2001:1418:1a9:eeab::112 dev lo proto 42 metric -1 error -101
2001:1418:1a9:eeab::/64 dev bat0 proto kernel metric 256
2001:1418:1a9:eebb::/64 dev batvpn proto kernel metric 256
fe80::/64 dev eth2 proto kernel metric 256
fe80::/64 dev eth0 proto kernel metric 256
fe80::/64 dev babeld proto kernel metric 256
fe80::/64 dev batvpn proto kernel metric 256
fe80::/64 dev sixxs proto kernel metric 256
fe80::/64 dev bat0 proto kernel metric 256
ff00::/8 dev eth2 metric 256
ff00::/8 dev eth0 metric 256
ff00::/8 dev babeld metric 256
ff00::/8 dev batvpn metric 256
ff00::/8 dev sixxs metric 256
ff00::/8 dev bat0 metric 256
default via 2001:1418:100:3ae::1 dev sixxs proto 60 metric 1024
---------> Stopping babeld <---------
zefiro ~ # /etc/init.d/babeld stop
* Stopping babeld ...
[ ok ]
---------> The routing table after babeld stopped you can see the
unreacheable route remained here <---------
zefiro ~ # ip route show
default via 131.114.250.1 dev eth0 src 131.114.251.236 metric 2
10.0.1.0/24 dev babeld proto kernel scope link src 10.0.1.101
10.174.0.0/15 dev bat0 proto kernel scope link src 10.175.0.101
unreachable 10.174.0.100 proto 42 metric -1 onlink
unreachable 10.175.0.112 proto 42 metric -1 onlink
unreachable 10.180.0.0/15 proto 42 metric -1 onlink
127.0.0.0/8 via 127.0.0.1 dev lo
131.114.250.0/23 dev eth0 proto kernel scope link src 131.114.251.236
172.18.0.0/24 dev batvpn proto kernel scope link src 172.18.0.1
zefiro ~ # ip -6 route show
unreachable 2001:470:c8f7:ee:: dev lo proto 42 metric -1 error -101
unreachable 2001:470:c8f7:ee:ee::cee dev lo proto 42 metric -1 error
-101
unreachable 2001:470:c8f7:ee:ee::1000 dev lo proto 42 metric -1 error
-101
unreachable 2001:470:c8f7:ee::/64 dev lo proto 42 metric -1 error -101
2001:503:ba3e::2:30 via 2001:1418:100:3ae::1 dev sixxs proto 37 metric
1024
2001:1418:100:3ae::/64 dev sixxs proto kernel metric 256
unreachable 2001:1418:1a9:eeab::d1 dev lo proto 42 metric -1 error -101
unreachable 2001:1418:1a9:eeab::112 dev lo proto 42 metric -1 error -101
2001:1418:1a9:eeab::/64 dev bat0 proto kernel metric 256
2001:1418:1a9:eebb::/64 dev batvpn proto kernel metric 256
fe80::/64 dev eth2 proto kernel metric 256
fe80::/64 dev eth0 proto kernel metric 256
fe80::/64 dev babeld proto kernel metric 256
fe80::/64 dev batvpn proto kernel metric 256
fe80::/64 dev sixxs proto kernel metric 256
fe80::/64 dev bat0 proto kernel metric 256
ff00::/8 dev eth2 metric 256
ff00::/8 dev eth0 metric 256
ff00::/8 dev babeld metric 256
ff00::/8 dev batvpn metric 256
ff00::/8 dev sixxs metric 256
ff00::/8 dev bat0 metric 256
default via 2001:1418:100:3ae::1 dev sixxs proto 60 metric 1024
---------> As you can see here babeld is really stopped
/usr/sbin/babeld-route-share-daemon is just a bash script that add route
we wanna share with babeld only if they are reacheable for example
0.0.0.0/0 only if we can ping 8.8.8.8 <---------
zefiro ~ # ps ax | grep babel
2322 ? Ss 1:46 /usr/sbin/tincd --net=babeld --pidfile
/var/run/tinc.babeld.pid
15901 ? S 0:17 /bin/sh /usr/sbin/babeld-route-share-daemon start
16454 ? S 0:00 /bin/sh /usr/sbin/babeld-route-share-daemon start
16491 pts/0 S+ 0:00 grep --colour=auto babel
---------> babeld version info r3 mean just the gentoo package revision
<---------
zefiro ~ # emerge -s babeld
Searching...
[ Results for search key : babeld ]
[ Applications found : 2 ]
* net-misc/babeld
Latest version available: 1.3.4-r3
Latest version installed: 1.3.4-r3
Size of files: 63 kB
Homepage: http://www.pps.jussieu.fr/~jch/software/babel/
Description: a loop-free distance-vector routing protocol
License: MIT
* net-misc/babeld-route-share
Latest version available: 0.1-r1
Latest version installed: 0.1-r1
Size of files: 0 kB
Homepage: http://www.eigenlab.org/
Description: babeld safe route sharing tool
License: GPL-3
zefiro ~ #
what is happening?
More information about the Babel-users
mailing list