Another bird newbie question I'm afraid. I have the following config:
10.255.199.3 10.255.199.1
[Quagga]----------------------------- [BIRD]
10.255.199.0/24
My bird config and quagga config are at the bottom of this email.
Bird is learning a kernel route (6.6.6.6) and advertising it to quagga.
This works fine.
Quagga is originating a default route (0.0.0.0/32) and advertising it
to bird. The advertisement works fine, but I see:
bird> show route
6.6.6.6/32 via 10.99.99.2 on dummy [kernel1 18:02] * (10)
0.0.0.0/0 unreachable [MyBGP 18:26 from 10.255.199.1] * (100/-) [i]
bird> show route 0.0.0.0/0 all
0.0.0.0/0 unreachable [MyBGP 18:26 from 10.255.199.1] * (100/-) [i]
Type: BGP unicast univ
BGP.origin: IGP
BGP.as_path:
BGP.next_hop: 10.255.199.1
BGP.local_pref: 100
Bird has marked the route as unreachable. Obviously the route is
not unreachable, because it is the next hop (quagga is doing
next-hop-self).
The only reason for this I can see is because bird is determining
reachability on the basis of its FIB only (as opposed to the kernel
routing table) and there is no FIB entry for 10.255.199.0/24
(from show route).
How are such interface routes meant to get into the FIB?
--
Alex Bligh
Bird config:
protocol kernel {
persist; # Don't remove routes on bird shutdown
scan time 10; # Scan kernel routing table every 20
seconds
import all;
export all;
learn; # Learn all alien routes from the kernel
}
# This pseudo-protocol watches all interface up/down events.
protocol device {
scan time 10; # Scan interfaces every 10 seconds
}
protocol bgp MyBGP {
local as 65000;
neighbor 10.255.199.1 as 65000;
export filter {
accept;
};
import filter {
accept;
};
next hop self;
import all;
export all;
}
Quagga config:
router bgp 65000
bgp router-id 10.255.199.1
neighbor 10.255.199.3 remote-as 65000
neighbor 10.255.199.3 next-hop-self
neighbor 10.255.199.3 default-originate
neighbor 10.255.199.3 soft-reconfiguration inbound
Log from Quagga
2011/08/17 18:19:43 BGP: 10.255.199.3 went from Idle to Connect
2011/08/17 18:19:43 BGP: 10.255.199.3 passive open
2011/08/17 18:19:43 BGP: 10.255.199.3 went from Active to OpenSent
2011/08/17 18:19:43 BGP: 10.255.199.3 rcv message type 1, length (excl.
header) 26
2011/08/17 18:19:43 BGP: 10.255.199.3 rcv OPEN, version 4, remote-as (in
open) 65000, holdtime 240, id 10.99.99.1
2011/08/17 18:19:43 BGP: 10.255.199.3 sending OPEN, version 4, my as 65000,
holdtime 180, id 10.255.199.1
2011/08/17 18:19:43 BGP: 10.255.199.3 send message type 1, length (incl.
header) 53
2011/08/17 18:19:43 BGP: 10.255.199.3 rcv OPEN w/ OPTION parameter len: 16
2011/08/17 18:19:43 BGP: 10.255.199.3 rcvd OPEN w/ optional parameter type
2 (Capability) len 14
2011/08/17 18:19:43 BGP: 10.255.199.3 OPEN has MultiProtocol Extensions
capability (1), length 4
2011/08/17 18:19:43 BGP: 10.255.199.3 OPEN has MP_EXT CAP for afi/safi: 1/1
2011/08/17 18:19:43 BGP: 10.255.199.3 OPEN has Route Refresh capability
(2), length 0
2011/08/17 18:19:43 BGP: message index 65 [4-octet AS number] found in
position 4 (max is 8)
2011/08/17 18:19:43 BGP: 10.255.199.3 OPEN has 4-octet AS number capability
(65), length 4
2011/08/17 18:19:43 BGP: 10.255.199.3 went from OpenSent to Deleted
2011/08/17 18:19:43 BGP: 10.255.199.3 send message type 4, length (incl.
header) 19
2011/08/17 18:19:43 BGP: 10.255.199.3 went from OpenSent to OpenConfirm
2011/08/17 18:19:43 BGP: 10.255.199.3 rcv message type 4, length (excl.
header) 0
2011/08/17 18:19:43 BGP: 10.255.199.3 went from OpenConfirm to Established
2011/08/17 18:19:43 BGP: 10.255.199.3 send message type 4, length (incl.
header) 19
2011/08/17 18:19:43 BGP: 10.255.199.3 send UPDATE 0.0.0.0/0 nexthop
10.255.199.1, origin i, mp_nexthop ::, path
2011/08/17 18:19:43 BGP: 10.255.199.3 rcvd UPDATE w/ attr: nexthop
10.255.199.3, origin i, localpref 100, path
2011/08/17 18:19:43 BGP: 10.255.199.3 rcvd 6.6.6.6/32