BIRD ripng default gateway route strange behavior

pavel.tvrdik at nic.cz pavel.tvrdik at nic.cz
Mon May 11 13:17:13 CEST 2015


Hi

On 2015-05-03 12:33, olivier a wrote:
> Network topology :
>  ------------------
> 
> PC1-----Router1------Router2-----InternetGateway---z
>                     eth1   eth0
> 
> RIPng enabled on PC1, Router1, Router2
>  Router2 has a static IPv6 DG ( Default Gateway ) to InternetGateway
>  Router1 has no static IPv6 DG, and no kernel{learn} directive.
> 
> Router2=Ubuntu14.04 LTS, Router1=raspbian Wheezy, bird = last version,
>  compiled from sources
>  link-local addresses replaces with symbolic names ( ie
> [fe80::Router1] )
> 
> Syslog :
>  --------
> 
> May  3 12:06:19 vubuntu-VirtualBox bird6: kernel1: Initializing
>  May  3 12:06:19 vubuntu-VirtualBox bird6: direct1: Initializing
>  May  3 12:06:19 vubuntu-VirtualBox bird6: device1: Initializing
>  May  3 12:06:19 vubuntu-VirtualBox bird6: rip1: Initializing
>  May  3 12:06:19 vubuntu-VirtualBox bird6: device1: Starting
>  May  3 12:06:19 vubuntu-VirtualBox bird6: device1: Scanning
> interfaces
>  May  3 12:06:19 vubuntu-VirtualBox bird6: device1: Connected to table
> master
>  May  3 12:06:19 vubuntu-VirtualBox bird6: device1: State changed to
> feed
>  May  3 12:06:19 vubuntu-VirtualBox bird6: kernel1: Starting
>  May  3 12:06:19 vubuntu-VirtualBox bird6: kernel1: Connected to table
> master
>  May  3 12:06:19 vubuntu-VirtualBox bird6: kernel1: State changed to
> feed
>  May  3 12:06:19 vubuntu-VirtualBox bird6: direct1: Starting
>  May  3 12:06:19 vubuntu-VirtualBox bird6: direct1: Connected to table
> master
>  May  3 12:06:19 vubuntu-VirtualBox bird6: direct1: State changed to
> feed
>  May  3 12:06:19 vubuntu-VirtualBox bird6: rip1: Starting
>  May  3 12:06:19 vubuntu-VirtualBox bird6: rip1: Listening on (dummy),
> port 521, mode broadcast (::)
>  May  3 12:06:19 vubuntu-VirtualBox bird6: rip1: Connected to table
> master
>  May  3 12:06:19 vubuntu-VirtualBox bird6: rip1: State changed to feed
>  May  3 12:06:19 vubuntu-VirtualBox bird6: Started
>  May  3 12:06:19 vubuntu-VirtualBox bird6: device1: State changed to
> up
>  May  3 12:06:19 vubuntu-VirtualBox bird6: kernel1 < interface lo goes
> up
>  May  3 12:06:19 vubuntu-VirtualBox bird6: kernel1 < interface eth0
> goes up
>  May  3 12:06:19 vubuntu-VirtualBox bird6: kernel1 < interface eth1
> goes up
>  May  3 12:06:19 vubuntu-VirtualBox bird6: kernel1: State changed to
> up
>  May  3 12:06:19 vubuntu-VirtualBox bird6: direct1 < primary address
> ::1/128 on interface lo added
>  May  3 12:06:19 vubuntu-VirtualBox bird6: direct1 < primary address
> 2001:db8:0:1::/64 on interface eth0 added
>  May  3 12:06:19 vubuntu-VirtualBox bird6: direct1 > added [best]
> 2001:db8:0:1::/64 dev eth0
>  May  3 12:06:19 vubuntu-VirtualBox bird6: kernel1 < rejected by
> protocol 2001:db8:0:1::/64 dev eth0
>  May  3 12:06:19 vubuntu-VirtualBox bird6: rip1 < added
> 2001:db8:0:1::/64 dev eth0
>  May  3 12:06:19 vubuntu-VirtualBox bird6: direct1 < secondary address
> fe80::/64 on interface eth0 added
>  May  3 12:06:19 vubuntu-VirtualBox bird6: direct1 < primary address
> 2001:db8:0:5::/64 on interface eth1 added
>  May  3 12:06:19 vubuntu-VirtualBox bird6: direct1 > added [best]
> 2001:db8:0:5::/64 dev eth1
>  May  3 12:06:19 vubuntu-VirtualBox bird6: kernel1 < rejected by
> protocol 2001:db8:0:5::/64 dev eth1
>  May  3 12:06:19 vubuntu-VirtualBox bird6: rip1 < added
> 2001:db8:0:5::/64 dev eth1
>  May  3 12:06:19 vubuntu-VirtualBox bird6: direct1 < secondary address
> fe80::/64 on interface eth1 added
>  May  3 12:06:19 vubuntu-VirtualBox bird6: direct1: State changed to
> up
>  May  3 12:06:19 vubuntu-VirtualBox bird6: rip1 < interface lo goes up
>  May  3 12:06:19 vubuntu-VirtualBox bird6: rip1 < interface eth0 goes
> up
>  May  3 12:06:19 vubuntu-VirtualBox bird6: rip1 < interface eth1 goes
> up
>  May  3 12:06:19 vubuntu-VirtualBox bird6: rip1 < added
> 2001:db8:0:1::/64 dev eth0
>  May  3 12:06:19 vubuntu-VirtualBox bird6: rip1 < added
> 2001:db8:0:5::/64 dev eth1
>  May  3 12:06:19 vubuntu-VirtualBox bird6: rip1: State changed to up
>  May  3 12:06:19 vubuntu-VirtualBox bird6: kernel1: Scanning routing
> table
>  May  3 12:06:19 vubuntu-VirtualBox bird6: kernel1: ::/0: [alien]
> created
>  May  3 12:06:19 vubuntu-VirtualBox bird6: kernel1: Pruning table
> master
>  May  3 12:06:19 vubuntu-VirtualBox bird6: kernel1: Pruning inherited
> routes
>  May  3 12:06:19 vubuntu-VirtualBox bird6: kernel1 > added [best] ::/0
> via 2001:db8:0:1::1 on eth0
>  May  3 12:06:19 vubuntu-VirtualBox bird6: kernel1 < rejected by
> protocol ::/0 via 2001:db8:0:1::1 on eth0
>  May  3 12:06:19 vubuntu-VirtualBox bird6: rip1 < added ::/0 via
> 2001:db8:0:1::1 on eth0
>  May  3 12:06:19 vubuntu-VirtualBox bird6: rip1: Listening on eth1,
> port 521, mode multicast (ff02::9)
>  May  3 12:06:19 vubuntu-VirtualBox bird6: rip1: Listening on eth0,
> port 521, mode multicast (ff02::9)
>  May  3 12:06:21 vubuntu-VirtualBox bird6: rip1: Broadcasting routing
> table to eth0
>  May  3 12:06:21 vubuntu-VirtualBox bird6: rip1: Broadcasting routing
> table to eth1
>  May  3 12:06:22 vubuntu-VirtualBox bird6: rip1: Broadcasting routing
> table to eth0
>  May  3 12:06:22 vubuntu-VirtualBox bird6: rip1: Broadcasting routing
> table to eth1
>  May  3 12:06:22 vubuntu-VirtualBox bird6: rip1: block:
> fe80::[Router1] tells me: ::/0 available, metric 16...
>  May  3 12:06:22 vubuntu-VirtualBox bird6: rip1 > added [best] ::/0
> via fe80::[Router1] on eth1
>  May  3 12:06:22 vubuntu-VirtualBox bird6: kernel1 < added ::/0 via
> fe80::[Router1] on eth1
>  May  3 12:06:22 vubuntu-VirtualBox bird6: rip1 < forced accept by
> protocol ::/0 via fe80::[Router1] on eth1
>  May  3 12:06:22 vubuntu-VirtualBox bird6: rip1 < replaced ::/0 via
> fe80::[Router1] on eth1
>  May  3 12:06:22 vubuntu-VirtualBox bird6: rip1: block:
> fe80::[Router1] tells me: 2001:db8:0:1::/64 available, metric 16...
>  May  3 12:06:22 vubuntu-VirtualBox bird6: rip1 > added
> 2001:db8:0:1::/64 via fe80::[Router1] on eth1
>  May  3 12:06:23 vubuntu-VirtualBox bird6: rip1: block:
> fe80::[Router1] tells me: ::/0 available, metric 16...
>  May  3 12:06:23 vubuntu-VirtualBox bird6: rip1 > ignored ::/0 via
> fe80::[Router1] on eth1
>  May  3 12:06:23 vubuntu-VirtualBox bird6: rip1: block:
> fe80::[Router1] tells me: 2001:db8:0:1::/64 available, metric 16...
>  May  3 12:06:23 vubuntu-VirtualBox bird6: rip1 > ignored
> 2001:db8:0:1::/64 via fe80::[Router1] on eth1
>  May  3 12:06:23 vubuntu-VirtualBox bird6: rip1: Broadcasting routing
> table to eth0
>  May  3 12:06:23 vubuntu-VirtualBox bird6: rip1: Broadcasting routing
> table to eth1
>  May  3 12:06:24 vubuntu-VirtualBox bird6: rip1: block:
> fe80::[Router1] tells me: ::/0 available, metric 16...
>  May  3 12:06:24 vubuntu-VirtualBox bird6: rip1 > ignored ::/0 via
> fe80::[Router1] on eth1
>  May  3 12:06:24 vubuntu-VirtualBox bird6: rip1: Broadcasting routing
> table to eth0
>  May  3 12:06:24 vubuntu-VirtualBox bird6: rip1: Broadcasting routing
> table to eth1
>  May  3 12:06:25 vubuntu-VirtualBox bird6: rip1: Broadcasting routing
> table to eth0
>  May  3 12:06:25 vubuntu-VirtualBox bird6: rip1: Broadcasting routing
> table to eth1
>  May  3 12:06:25 vubuntu-VirtualBox bird6: rip1: block:
> fe80::[Router1] tells me: ::/0 available, metric 16...
>  May  3 12:06:25 vubuntu-VirtualBox bird6: rip1 > ignored ::/0 via
> fe80::[Router1] on eth1
>  May  3 12:06:26 vubuntu-VirtualBox bird6: rip1: Broadcasting routing
> table to eth0
>  May  3 12:06:26 vubuntu-VirtualBox bird6: rip1: Broadcasting routing
> table to eth1
>  May  3 12:06:26 vubuntu-VirtualBox bird6: rip1: block:
> fe80::[Router1] tells me: ::/0 available, metric 16...
>  May  3 12:06:26 vubuntu-VirtualBox bird6: rip1 > ignored ::/0 via
> fe80::[Router1] on eth1
>  May  3 12:06:26 vubuntu-VirtualBox bird6: rip1: block:
> fe80::[Router1] tells me: 2001:db8:0:1::/64 available, metric 16...
>  May  3 12:06:26 vubuntu-VirtualBox bird6: rip1 > ignored
> 2001:db8:0:1::/64 via fe80::[Router1] on eth1
>  May  3 12:06:26 vubuntu-VirtualBox bird6: rip1: block:
> fe80::[Router1] tells me: 2001:db8:0:3::/64 available, metric 1...
>  May  3 12:06:26 vubuntu-VirtualBox bird6: rip1 > added [best]
> 2001:db8:0:3::/64 via fe80::[Router1] on eth1
>  May  3 12:06:26 vubuntu-VirtualBox bird6: kernel1 < added
> 2001:db8:0:3::/64 via fe80::[Router1] on eth1
>  May  3 12:06:26 vubuntu-VirtualBox bird6: rip1 < forced accept by
> protocol 2001:db8:0:3::/64 via fe80::[Router1] on eth1
>  May  3 12:06:26 vubuntu-VirtualBox bird6: rip1 < added
> 2001:db8:0:3::/64 via fe80::[Router1] on eth1
>  May  3 12:06:26 vubuntu-VirtualBox bird6: rip1: block:
> fe80::[Router1] tells me: 2001:db8:0:5::/64 available, metric 1...
>  May  3 12:06:26 vubuntu-VirtualBox bird6: rip1 > added
> 2001:db8:0:5::/64 via fe80::[Router1] on eth1
>  May  3 12:06:27 vubuntu-VirtualBox bird6: rip1: Broadcasting routing
> table to eth0
>  May  3 12:06:27 vubuntu-VirtualBox bird6: rip1: Broadcasting routing
> table to eth1
>  May  3 12:06:28 vubuntu-VirtualBox bird6: rip1: Broadcasting routing
> table to eth0
>  May  3 12:06:28 vubuntu-VirtualBox bird6: rip1: Broadcasting routing
> table to eth1
>  May  3 12:06:29 vubuntu-VirtualBox bird6: device1: Scanning
> interfaces
>  May  3 12:06:29 vubuntu-VirtualBox bird6: rip1: Broadcasting routing
> table to eth0
>  May  3 12:06:29 vubuntu-VirtualBox bird6: rip1: Broadcasting routing
> table to eth1
>  May  3 12:06:30 vubuntu-VirtualBox bird6: rip1: Broadcasting routing
> table to eth0
>  May  3 12:06:30 vubuntu-VirtualBox bird6: rip1: Broadcasting routing
> table to eth1
>  May  3 12:06:31 vubuntu-VirtualBox bird6: rip1: Broadcasting routing
> table to eth0
>  May  3 12:06:31 vubuntu-VirtualBox bird6: rip1: Broadcasting routing
> table to eth1
>  May  3 12:06:32 vubuntu-VirtualBox bird6: rip1: Broadcasting routing
> table to eth0
>  May  3 12:06:32 vubuntu-VirtualBox bird6: rip1: Broadcasting routing
> table to eth1
>  May  3 12:06:33 vubuntu-VirtualBox bird6: rip1: Broadcasting routing
> table to eth0
>  May  3 12:06:33 vubuntu-VirtualBox bird6: rip1: Broadcasting routing
> table to eth1
>  May  3 12:06:34 vubuntu-VirtualBox bird6: rip1: Broadcasting routing
> table to eth0
>  May  3 12:06:34 vubuntu-VirtualBox bird6: rip1: Broadcasting routing
> table to eth1
>  May  3 12:06:35 vubuntu-VirtualBox bird6: rip1: Broadcasting routing
> table to eth0
>  May  3 12:06:35 vubuntu-VirtualBox bird6: rip1: Broadcasting routing
> table to eth1
>  May  3 12:06:36 vubuntu-VirtualBox bird6: rip1: Broadcasting routing
> table to eth0
>  May  3 12:06:36 vubuntu-VirtualBox bird6: rip1: Broadcasting routing
> table to eth1
>  May  3 12:06:37 vubuntu-VirtualBox bird6: rip1: Broadcasting routing
> table to eth0
>  May  3 12:06:37 vubuntu-VirtualBox bird6: rip1: Broadcasting routing
> table to eth1
>  May  3 12:06:38 vubuntu-VirtualBox bird6: rip1: Broadcasting routing
> table to eth0
>  May  3 12:06:38 vubuntu-VirtualBox bird6: rip1: Broadcasting routing
> table to eth1
>  May  3 12:06:39 vubuntu-VirtualBox bird6: device1: Scanning
> interfaces
>  May  3 12:06:39 vubuntu-VirtualBox bird6: kernel1: Scanning routing
> table
>  May  3 12:06:39 vubuntu-VirtualBox bird6: kernel1: 2001:db8:0:3::/64:
> seen
>  May  3 12:06:39 vubuntu-VirtualBox bird6: kernel1: ::/0: [alien] seen
>  May  3 12:06:39 vubuntu-VirtualBox bird6: kernel1: ::/0: seen
>  May  3 12:06:39 vubuntu-VirtualBox bird6: kernel1: Pruning table
> master
>  May  3 12:06:39 vubuntu-VirtualBox bird6: kernel1: Pruning inherited
> routes
>  May  3 12:06:39 vubuntu-VirtualBox bird6: rip1: Broadcasting routing
> table to eth0
>  May  3 12:06:39 vubuntu-VirtualBox bird6: rip1: Broadcasting routing
> table to eth1
>  May  3 12:06:40 vubuntu-VirtualBox bird6: rip1: Broadcasting routing
> table to eth0
>  May  3 12:06:40 vubuntu-VirtualBox bird6: rip1: Broadcasting routing
> table to eth1
>  May  3 12:06:41 vubuntu-VirtualBox bird6: rip1: Broadcasting routing
> table to eth0
>  May  3 12:06:41 vubuntu-VirtualBox bird6: rip1: Broadcasting routing
> table to eth1
>  May  3 12:06:42 vubuntu-VirtualBox bird6: rip1: Broadcasting routing
> table to eth0
>  May  3 12:06:42 vubuntu-VirtualBox bird6: rip1: Broadcasting routing
> table to eth1
>  May  3 12:06:43 vubuntu-VirtualBox bird6: rip1: Broadcasting routing
> table to eth0
>  May  3 12:06:43 vubuntu-VirtualBox bird6: rip1: Broadcasting routing
> table to eth1
>  May  3 12:06:44 vubuntu-VirtualBox bird6: rip1: Broadcasting routing
> table to eth0
>  May  3 12:06:44 vubuntu-VirtualBox bird6: rip1: Broadcasting routing
> table to eth1
>  May  3 12:06:45 vubuntu-VirtualBox bird6: rip1: Broadcasting routing
> table to eth0
>  May  3 12:06:45 vubuntu-VirtualBox bird6: rip1: Broadcasting routing
> table to eth1
>  May  3 12:06:46 vubuntu-VirtualBox bird6: rip1: Broadcasting routing
> table to eth0
>  May  3 12:06:46 vubuntu-VirtualBox bird6: rip1: Broadcasting routing
> table to eth1
>  May  3 12:06:47 vubuntu-VirtualBox bird6: rip1: Broadcasting routing
> table to eth0
>  May  3 12:06:47 vubuntu-VirtualBox bird6: rip1: Broadcasting routing
> table to eth1
>  May  3 12:06:48 vubuntu-VirtualBox bird6: rip1: Broadcasting routing
> table to eth0
>  May  3 12:06:48 vubuntu-VirtualBox bird6: rip1: Broadcasting routing
> table to eth1
>  May  3 12:06:49 vubuntu-VirtualBox bird6: device1: Scanning
> interfaces
>  May  3 12:06:49 vubuntu-VirtualBox bird6: rip1: Broadcasting routing
> table to eth0
>  May  3 12:06:49 vubuntu-VirtualBox bird6: rip1: Broadcasting routing
> table to eth1
>  May  3 12:06:50 vubuntu-VirtualBox bird6: rip1: Broadcasting routing
> table to eth0
>  May  3 12:06:50 vubuntu-VirtualBox bird6: rip1: Broadcasting routing
> table to eth1
>  May  3 12:06:51 vubuntu-VirtualBox bird6: rip1: Broadcasting routing
> table to eth0
>  May  3 12:06:51 vubuntu-VirtualBox bird6: rip1: Broadcasting routing
> table to eth1
>  May  3 12:06:52 vubuntu-VirtualBox bird6: rip1: Broadcasting routing
> table to eth0
>  May  3 12:06:52 vubuntu-VirtualBox bird6: rip1: Broadcasting routing
> table to eth1
>  May  3 12:06:53 vubuntu-VirtualBox bird6: rip1: Broadcasting routing
> table to eth0
>  May  3 12:06:53 vubuntu-VirtualBox bird6: rip1: Broadcasting routing
> table to eth1
>  May  3 12:06:54 vubuntu-VirtualBox bird6: rip1: Broadcasting routing
> table to eth0
>  May  3 12:06:54 vubuntu-VirtualBox bird6: rip1: Broadcasting routing
> table to eth1
>  May  3 12:06:55 vubuntu-VirtualBox bird6: rip1: Broadcasting routing
> table to eth0
>  May  3 12:06:55 vubuntu-VirtualBox bird6: rip1: Broadcasting routing
> table to eth1
>  May  3 12:06:56 vubuntu-VirtualBox bird6: rip1: Broadcasting routing
> table to eth0
>  May  3 12:06:56 vubuntu-VirtualBox bird6: rip1: Broadcasting routing
> table to eth1
>  May  3 12:06:57 vubuntu-VirtualBox bird6: rip1: Broadcasting routing
> table to eth0
>  May  3 12:06:57 vubuntu-VirtualBox bird6: rip1: Broadcasting routing
> table to eth1
>  May  3 12:06:57 vubuntu-VirtualBox bird6: rip1: block:
> fe80::[Router1] tells me: ::/0 available, metric 16...
>  May  3 12:06:57 vubuntu-VirtualBox bird6: rip1 > ignored ::/0 via
> fe80::[Router1] on eth1
>  May  3 12:06:57 vubuntu-VirtualBox bird6: rip1: block:
> fe80::[Router1] tells me: 2001:db8:0:1::/64 available, metric 16...
>  May  3 12:06:57 vubuntu-VirtualBox bird6: rip1 > ignored
> 2001:db8:0:1::/64 via fe80::[Router1] on eth1
>  May  3 12:06:57 vubuntu-VirtualBox bird6: rip1: block:
> fe80::[Router1] tells me: 2001:db8:0:3::/64 available, metric 1...
>  May  3 12:06:57 vubuntu-VirtualBox bird6: rip1 > ignored
> 2001:db8:0:3::/64 via fe80::[Router1] on eth1
>  May  3 12:06:57 vubuntu-VirtualBox bird6: rip1: block:
> fe80::[Router1] tells me: 2001:db8:0:5::/64 available, metric 1...
>  May  3 12:06:57 vubuntu-VirtualBox bird6: rip1 > ignored
> 2001:db8:0:5::/64 via fe80::[Router1] on eth1
>  May  3 12:06:58 vubuntu-VirtualBox bird6: rip1: Broadcasting routing
> table to eth0
>  May  3 12:06:58 vubuntu-VirtualBox bird6: rip1: Broadcasting routing
> table to eth1
>  May  3 12:06:59 vubuntu-VirtualBox bird6: device1: Scanning
> interfaces
>  May  3 12:06:59 vubuntu-VirtualBox bird6: kernel1: Scanning routing
> table
>  May  3 12:06:59 vubuntu-VirtualBox bird6: kernel1: 2001:db8:0:3::/64:
> seen
>  May  3 12:06:59 vubuntu-VirtualBox bird6: kernel1: ::/0: [alien] seen
>  May  3 12:06:59 vubuntu-VirtualBox bird6: kernel1: ::/0: seen
>  May  3 12:06:59 vubuntu-VirtualBox bird6: kernel1: Pruning table
> master
>  May  3 12:06:59 vubuntu-VirtualBox bird6: kernel1: Pruning inherited
> routes
>  May  3 12:06:59 vubuntu-VirtualBox bird6: rip1: Broadcasting routing
> table to eth0
>  May  3 12:06:59 vubuntu-VirtualBox bird6: rip1: Broadcasting routing
> table to eth1
>  May  3 12:06:59 vubuntu-VirtualBox bird6: rip1: Broadcasting routing
> table to eth0
>  May  3 12:06:59 vubuntu-VirtualBox bird6: rip1: Broadcasting routing
> table to eth1
>  May  3 12:07:00 vubuntu-VirtualBox bird6: rip1: Broadcasting routing
> table to eth0
>  May  3 12:07:00 vubuntu-VirtualBox bird6: rip1: Broadcasting routing
> table to eth1
>  May  3 12:07:01 vubuntu-VirtualBox bird6: rip1: Broadcasting routing
> table to eth0
>  May  3 12:07:01 vubuntu-VirtualBox bird6: rip1: Broadcasting routing
> table to eth1
> 

The log seems OK.

> Router2 routing table :
>  -----------------------
> 
> 2001:db8:0:1::/64 dev eth0  proto kernel  metric 256
>  2001:db8:0:3::/64 via fe80::[Router1] dev eth1  proto bird  metric
> 1024
>  2001:db8:0:5::/64 dev eth1  proto kernel  metric 256
>  fe80::/64 dev eth0  proto kernel  metric 256
>  fe80::/64 dev eth1  proto kernel  metric 256
>  default via 2001:db8:0:1::1 dev eth0  proto static  metric 1
>  default via fe80::[Router1] dev eth1  proto bird  metric 1024
> 

I am guesting the routing table was invoked with command `ip -6 route` 
and the metrics 256 and 1024 are here probably OK, common values.

Pavel

> Router2 bird6.conf file :
>  -------------------------
> 
> log syslog all;
>  debug protocols all;
>  #log stderr all;
>  #log "tmp" all;
> 
> router id 192.168.5.1;
>  protocol kernel {
>  learn;
>  scan time 20;
>  export all;
>  import all;
>  }
> 
> protocol direct {
>  #interface "eth0";
>  }
> 
> protocol device {
>  scan time 10;
>  }
> 
> protocol rip {
>  debug all;
>  port 521;
>  interface "*" { mode multicast; ttl security on; };
>  honor neighbor;
>  authentication none;
> 
> import all;
>  export all;
>  }
>  
> ---------------------------------------------------------------------------
> 
> On Apr 29, 2015 4:30 PM, <pavel.tvrdik at nic.cz> wrote:
> 
>> Hi Olivier,
>> 
>> I failed to reproduce the metric 1024. Can you please send a log
>> file from Router2?
>> 
>> On 2015-04-29 11:02, olivier a wrote:
>> 
>>> Follow up : Nobody has ideas about that ?
>>> On Apr 18, 2015 7:14 PM, "olivier a" <oatech7402 at gmail.com>
>>> wrote:
>>>> 
>>>> Hello all ^^
>>>> 
>>>> I'm puzzled with a really weird RIPng default gateway
>>> propagation
>>> problem.
>>>> I don't quite understand what's happening. Here is what
>>> happens ...
>>>> 
>>>> Network topology :
>>>> 
>>>> PC1---Router1---Router2----InternetGateway---z
>>>> 
>>>> RIPng enabled on PC1, Router1, Router2
>>>> Router2 has a static IPv6 DG ( Default Gateway ) to
>>> InternetGateway
>>>> Router1 has no static IPv6 DG, and no kernel{learn} directive.
>>>> 
>>>> Router2=Ubuntu14.04 LTS, Router1=raspbian Wheezy, bird = last
>>> version, compiled from sources
>>>> link-local addresses replaces with symbolic names ( ie
>>> [fe80::Router1] )
>>>> 
>>>> Something really strange seems to happen :
>>>> 
>>>> . Router2 gets this routing table :
>>>> 
>>>> default via InternetGateway dev eth0 proto static metric 1
>>>> default via [fe80::Router1] dev eth1 proto bird metric 1024
>> Did you try commented out the learn directive in protocol kernel?
>> Did the metric 1024 disappear?
>> 
>>>> 
>>>> But Router1 isn't announcing any IPv6 DefaultGateway, just
>>> ::/0
>>> metric 16 ( ie it is poisoning the route ).
>>>> ( I checked using Wireshark ).
>>>> 
>>>> Is there a bug that transforms a received "::/0 metric 16"
>>> into a
>>> "default via [fe80::Router1] dev eth1 proto bird metric 1024"
>>> route
>>> ?
>> Probably not.
>> 
>>>> 
>>>> Here is Router2 bird6.conf file :
>>>> 
>>>> -------------------------------------------------
>>>> log syslog all;
>>>> debug protocols all;
>>>> #log stderr all;
>>>> #log "tmp" all;
>>>> 
>>>> router id 192.168.4.1;
>>>> protocol kernel {
>>>> learn;
>>>> scan time 20;
>>>> export all;
>>>> import all;
>>>> }
>>>> 
>>>> protocol direct {
>>>> #interface "eth0";
>>>> }
>>>> 
>>>> protocol device {
>>>> scan time 10;
>>>> }
>>>> 
>>>> protocol rip {
>>>> debug all;
>>>> port 521;
>>>> interface "*" { mode multicast; ttl security on; };
>>>> honor neighbor;
>>>> authentication none;
>>>> import all;
>>>> export all;
>>>> }
>>>> -------------------------------------------------------------
>>>> 
>>>> I managed to solve the problem, by having Router2 drop
>>> incomming
>>> ::/0 announcements :
>>>> 
>>>> ---------------------------------------------------------
>>>> import filter { # This block filters ::/0 in
>>>> if net ~ [ ::/0 ] then
>>>> reject "ripng:rejected:DG";
>>>> else
>>>> accept "ripng:accepted:not-DG";
>>>> };
>>>> 
>>>> export all;
>> Do you use filter at rip or at kernel protocol?
>> 
>>>> 
>>>> ---------------------------------------------------------
>>>> 
>>>> the problem is solved, yet it puzzles me.
>>>> This is really strange. Does anybody understand what is
>>> happening
>>> ??
>> 
>> Pavel



More information about the Bird-users mailing list