erroneous "Netlink: File exists" ?

Aragon Gouveia aragon at phat.za.net
Fri May 24 00:10:45 CEST 2013


Hi,

So I've seen this issue mentioned in past mailings, and the FAQ, but I 
think I might be experiencing a buggy form of it in Bird 1.3.10.

In debug mode I'm getting this:

May 23 23:59:06 wugpi bird: device1: Scanning interfaces
May 23 23:59:06 wugpi bird: CTWUG: HELLO packet sent via eth0
May 23 23:59:06 wugpi bird: kernel1: Scanning routing table
May 23 23:59:06 wugpi bird: kernel1: Pruning table master
May 23 23:59:06 wugpi bird: kernel1: 172.18.102.32/32: reinstalling
May 23 23:59:06 wugpi bird: Netlink: File exists
May 23 23:59:06 wugpi bird: kernel1: 172.18.102.160/28: reinstalling
May 23 23:59:06 wugpi bird: Netlink: File exists
May 23 23:59:06 wugpi bird: kernel1: 172.18.102.224/28: reinstalling
May 23 23:59:06 wugpi bird: Netlink: File exists
May 23 23:59:06 wugpi bird: kernel1: 172.18.102.240/28: reinstalling
May 23 23:59:06 wugpi bird: Netlink: File exists
May 23 23:59:06 wugpi bird: kernel1: 172.18.128.0/22: reinstalling
May 23 23:59:06 wugpi bird: Netlink: File exists
May 23 23:59:06 wugpi bird: ...

Those prefixes are from OSPF only, and are not alien routes.  My routing 
table without bird:

# ip route list
default via 172.18.102.7 dev eth0
172.18.102.0/28 dev eth0  proto kernel  scope link  src 172.18.102.8
172.18.102.71 via 172.18.102.7 dev eth0

With bird:

# ip route list
default via 172.18.102.7 dev eth0
172.16.0.0/12 via 172.18.102.1 dev eth0  proto bird
172.18.0.0/16 via 172.18.102.1 dev eth0  proto bird
172.18.1.1 via 172.18.102.7 dev eth0  proto bird
172.18.100.0/24 via 172.18.102.1 dev eth0  proto bird
172.18.100.2 via 172.18.102.1 dev eth0  proto bird
172.18.100.16/30 via 172.18.102.1 dev eth0  proto bird
172.18.100.20/30 via 172.18.102.1 dev eth0  proto bird
172.18.100.22 via 172.18.102.1 dev eth0  proto bird
172.18.100.24/30 via 172.18.102.1 dev eth0  proto bird
172.18.100.28/30 via 172.18.102.1 dev eth0  proto bird
172.18.100.29 via 172.18.102.1 dev eth0  proto bird
172.18.101.0/24 via 172.18.102.1 dev eth0  proto bird
172.18.102.0/28 dev eth0  proto kernel  scope link  src 172.18.102.8
172.18.102.1 via 172.18.102.1 dev eth0  proto bird
172.18.102.16/29 via 172.18.102.1 dev eth0  proto bird
172.18.102.18 via 172.18.102.1 dev eth0  proto bird
172.18.102.24/30 via 172.18.102.1 dev eth0  proto bird
172.18.102.32 via 172.18.102.7 dev eth0  proto bird
172.18.102.64/28 via 172.18.102.7 dev eth0  proto bird
172.18.102.71 via 172.18.102.7 dev eth0
172.18.102.128/27 via 172.18.102.14 dev eth0  proto bird
172.18.102.160/28 via 172.18.102.11 dev eth0  proto bird
172.18.102.192/28 via 172.18.102.9 dev eth0  proto bird
172.18.102.208/28 via 172.18.102.12 dev eth0  proto bird
172.18.102.224/28 via 172.18.102.10 dev eth0  proto bird
172.18.102.240/28 via 172.18.102.13 dev eth0  proto bird
172.18.103.0/24 via 172.18.102.1 dev eth0  proto bird
172.18.103.1 via 172.18.102.1 dev eth0  proto bird
172.18.128.0/22 via 172.18.102.1 dev eth0  proto bird

Kernel:

# uname -a
Linux wugpi 3.6.11+ #452 PREEMPT Fri May 17 14:25:40 BST 2013 armv6l 
GNU/Linux

Bird config:

filter ospfin
{
	if net ~ 172.16.0.0/12 then accept;
	reject;
}

protocol kernel {
	learn;
	scan time 20;
	import none;
	export all;
}

protocol device {
	scan time 10;
}

protocol ospf CTWUG {
	import filter ospfin;
	export none;
	area 172.18.102.0 {
		interface "eth*" 172.16.0.0/12 {
			type broadcast;
			priority 0;
		};
	};
}

Any ideas please?  Before I start fumbling in source code... :)


Thanks,
Aragon



More information about the Bird-users mailing list