Bird active?

Terje Malmedal terje.malmedal at usit.uio.no
Mon Nov 4 12:10:45 CET 2002


[Ondrej Fila Filip]
> On Mon, 4 Nov 2002, Terje Malmedal wrote:
>> 
>> [Ondrej Feela Filip]
>> > On Sun, 3 Nov 2002, Terje Malmedal wrote:
>> >> 
>> >> Is Bird still being worked on? 
>> 
>> > Yes, a little bit. Which version do you use?
>> 
>> Bird version 1.0.5, Kernel is 2.4.18-10smp from RedHat. 

> OKay. Could you send me exact number of RPM package you use?

bird is built from source, The kernel is kernel-smp-2.4.18-10.i686.rpm 

>> 
>> >> 
>> >> I'm playing around a bit with it, and it seems to forget the nexthop
>> >> part of the routes it gets: 
>> >> 
>> >> bird> show route 
>> >> 10.2.6.0/24        via 10.2.7.1 on eth1 [kernel1 12:16] (10)
>> >> 10.2.7.0/24        dev eth1 [direct1 Nov02] (240)
>> >> 10.1.7.0/24        dev eth2 [direct1 Nov02] (240)
>> >> 10.3.8.0/24        dev eth0 [gaustad 12:16] I (150/20)
>> >> 10.4.8.0/24        via 0.0.0.0 on eth0 [gaustad 12:16] E2 (150/20/20)
>> >> 10.5.8.0/24        via 0.0.0.0 on eth0 [gaustad 12:16] E2 (150/20/20)
>> >> 10.9.8.0/24        dev eth0 [direct1 Nov02] (240)
>> >> dev eth0 [gaustad 12:16] I (150/10)
>> >> 62.70.74.192/27    dev eth0 [gaustad 12:16] I (150/11)
>> >> 127.0.0.0/8        dev lo [direct1 Nov02] (240)
>> >> 62.70.74.224/28    dev eth0 [gaustad 12:16] I (150/20)
>> >> 
>> >> # ip route
>> >> 62.70.74.224/28 dev eth0  proto bird 
>> >> 62.70.74.192/27 dev eth0  proto bird 
>> >> 10.2.6.0/24 via 10.2.7.1 dev eth1 
>> >> 10.2.7.0/24 dev eth1  proto kernel  scope link  src 10.2.7.26 
>> >> 10.3.8.0/24 dev eth0  proto bird 
>> >> 10.9.8.0/24 dev eth0  proto bird 
>> >> 10.1.7.0/24 dev eth2  proto kernel  scope link  src 10.1.7.26 
>> >> 127.0.0.0/8 dev lo  scope link 
>> >> 
>> >> Both Zebra and Cisco gets it right. 
>> 
>> > Could you send me 'ip r l' from Zebra?
>> 
>> Bird does not accept the command, Linux does though: 

> OK, I just wanted you to send me 'ip r l' while Zebra is running. 

Ah, sorry. This is on the zebra box: 
[root at cornavin zebra-0.93b]# ip route
62.70.74.224/28 via 10.9.8.1 dev eth0  proto zebra  metric 20 
62.70.74.192/27 via 10.9.8.1 dev eth0  proto zebra  metric 11 
10.2.6.0/24 via 10.9.8.26 dev eth0  proto zebra  metric 110 
10.2.7.0/24 via 10.9.8.26 dev eth0  proto zebra  metric 110 
10.3.8.0/24 dev dummy0  proto kernel  scope link  src 10.3.8.21 
10.5.8.0/24 via 10.3.8.1 dev dummy0 
10.9.8.0/24 dev eth0  scope link 
10.1.7.0/24 via 10.9.8.26 dev eth0  proto zebra  metric 110 
10.4.8.0/24 via 10.3.8.1 dev dummy0 
127.0.0.0/8 dev lo  scope link 
default via 10.9.8.1 dev eth0 

Bird is 10.9.8.26 Zebra is 10.9.8.21 and Cisco is 1.9.8.1 

> Could 
> you test Zebra on that machine?

I've tried both Zebra and Bird on Both machines, the results are
identical both from Zebra and Bird.

> Or could you send me relevant oarts of configs from Zebra & Cisco?

Sure, this is Zebra: 
cornavin# show running-config 
Building configuration...

Current configuration:
!
hostname Router
password zebra
enable password zebra
hostname ospfd
enable password zebra
log stdout
!
interface lo
!
interface teql0
!
interface tunl0
!
interface gre0
!
interface eth0
!
interface dummy0
!
router ospf
 ospf router-id 10.9.8.21
 redistribute kernel
 redistribute connected
 redistribute static
 network 10.3.8.0/24 area 0
 network 10.4.8.0/24 area 0
 network 10.5.8.0/24 area 0
 network 10.9.8.0/24 area 0
 distribute-list yohoo out kernel
!
access-list yohoo permit any
!
cornavin# show ip route 
Codes: K - kernel route, C - connected, S - static, R - RIP, O - OSPF,
       B - BGP, > - selected route, * - FIB route

K>* 0.0.0.0/0 via 10.9.8.1, eth0
O>* 10.1.7.0/24 [110/110] via 10.9.8.26, eth0, 00:03:51
O>* 10.2.6.0/24 [110/110] via 10.9.8.26, eth0, 00:03:51
O>* 10.2.7.0/24 [110/110] via 10.9.8.26, eth0, 00:03:51
O   10.3.8.0/24 [110/10] is directly connected, dummy0, 00:04:15
C>* 10.3.8.0/24 is directly connected, dummy0
K>* 10.4.8.0/24 via 10.3.8.1, dummy0
K>* 10.5.8.0/24 via 10.3.8.1, dummy0
O   10.9.8.0/24 [110/10] is directly connected, eth0, 00:03:52
K * 10.9.8.0/24 is directly connected, eth0
C>* 10.9.8.0/24 is directly connected, eth0
O>* 62.70.74.192/27 [110/11] via 10.9.8.1, eth0, 00:03:52
O>* 62.70.74.224/28 [110/20] via 10.9.8.1, eth0, 00:03:52
K * 127.0.0.0/8 is directly connected, lo
C>* 127.0.0.0/8 is directly connected, lo

And on the Cisco i just did: 

router ospf 666
 log-adjacency-changes
 redistribute connected subnets
 redistribute static subnets
 passive-interface default
 no passive-interface FastEthernet0/1
 network 0.0.0.0 255.255.255.255 area 0

fp-gw1#show ip route 
Codes: C - connected, S - static, I - IGRP, R - RIP, M - mobile, B - BGP
       D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area 
       N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
       E1 - OSPF external type 1, E2 - OSPF external type 2, E - EGP
       i - IS-IS, L1 - IS-IS level-1, L2 - IS-IS level-2, ia - IS-IS inter area
       * - candidate default, U - per-user static route, o - ODR
       P - periodic downloaded static route

Gateway of last resort is 62.70.74.225 to network 0.0.0.0

     10.0.0.0/24 is subnetted, 7 subnets
O       10.3.8.0 [110/11] via 10.9.8.21, 00:08:11, FastEthernet0/1
O E2    10.4.8.0 [110/20] via 10.9.8.21, 00:08:11, FastEthernet0/1
O E2    10.5.8.0 [110/20] via 10.9.8.21, 00:08:11, FastEthernet0/1
C       10.9.8.0 is directly connected, FastEthernet0/1
O E1    10.1.7.0 [110/101] via 10.9.8.26, 00:08:11, FastEthernet0/1
O E1    10.2.6.0 [110/101] via 10.9.8.26, 00:08:11, FastEthernet0/1
O E1    10.2.7.0 [110/101] via 10.9.8.26, 00:08:11, FastEthernet0/1
     62.0.0.0/8 is variably subnetted, 2 subnets, 2 masks
C       62.70.74.224/28 is directly connected, Ethernet1/0
C       62.70.74.192/27 is directly connected, FastEthernet0/0
S*   0.0.0.0/0 [1/0] via 62.70.74.225

Oh and the Bird config is: 

protocol device {
#       #scan time 10;
}

protocol direct {
}

protocol kernel {
        import all;
        learn;
        export filter {
                print net;
                if scope = SCOPE_HOST then {
                #if net ~ 10.9.8.0/24 then {
                   reject;
                } else {
                   accept;
                }
        };
}

protocol ospf gaustad {
        #rfc1583compat yes;
        debug all;
        import all;
        export filter {
                ospf_metric1 = 100;
                accept;
        };
        area 0 {
                tick 8;
                interface "eth0" {
                        #hello 30;
                        retransmit 6;
                        cost 10;
                        #transit delay 5;
                        #dead count 5;
                        wait 50;
                        type broadcast;
                        authentication none;
                        password "pass";
                };
        };
}

The export filter on protocol kernel is an attempt to stop Bird from
accepting routes to directly conncted subnets. It doesn't seem to be
working.

-- 
 - Terje
malmedal at usit.uio.no



More information about the Bird-users mailing list