Re: OSPF state inconsistency

2016-02-21 Thread Przemyslaw Frasunek
> Interesting. Could you send me output of 'show ospf state',
> 'show ospf lsadb' and 'show route' when the situation happens?

Sure. I'll grab it on next opportunity.

> How OSPF learns subscriber routes? From the kernel proto? I don't see any
> non-OSPF route on 'birdc show route' below, but there should be at least
> one for the current session.

Yes, subscriber routes are added to kernel by mpd5 and then imported by BIRD.
Recently, I patched mpd5 to delete subscriber route before adding new one. It
helped a bit and now inconsistency happens only few times per month.

> You have 'preference 10' for OSPF, this is the same as the default
> preference for kernel protocol. That is unreliable, you should ensure
> that kernel protocol has higher preference than OSPF, if you want to
> export kernel routes to OSPF.

Thanks, I'll change preference for OSPF.





signature.asc
Description: OpenPGP digital signature


OSPF state inconsistency

2015-05-04 Thread Przemyslaw Frasunek
Dear all,

we are using BIRD 1.4.5 with OSPF on PPPoE access servers running FreeBSD 9.3
and mpd 5.7. In order to achieve fail-over, each access server is listening on
the same VLANs. The user connects to access server which first responds with
PPPoE PADO.

Some of our subscribers need additional IPv4 prefix, which is routed via address
assigned from pool. Such route is added by mpd on connect and deleted on
disconnect or LCP timeout.

Unfortunately, we are experiencing OSPF state inconsistency between access
servers, when user quickly disconnects from one node and connects to another.
This is such example, which caused routing loop:

(on 193.138.118.89)
# birdc show route for 46.21.220.80/28
BIRD 1.4.5 ready.
46.21.220.80/28via 193.138.118.90 on vlan0 [ospf1 13:08:12] * E2
(10/10/1) [193.138.118.90]

(on 193.138.118.90)
# birdc show route for 46.21.220.80/28
BIRD 1.4.5 ready.

46.21.220.80/28via 193.138.118.89 on vlan0 [ospf1 13:12:32] * E2
(10/10/1) [193.138.118.89]

Any ideas, how to fix it?

This is our bird.conf:

log syslog { remote, error, auth, fatal, bug };
router id 193.138.118.90;

protocol kernel {
learn;
scan time 20;
export filter {
if proto = static_bgp then reject;
accept;
};
}

protocol device {
scan time 10;
}

protocol ospf {
preference 10;
import filter {
accept;
};
export filter {
if net.ip = 0.0.0.0 then reject;
if source = RTS_STATIC then accept;
if proto = kernel1 then accept;
if proto = direct1 then accept;
reject;
};

area 0 {
interface vlan0 { };
interface vlan* { stub; };
interface carp* { stub; cost 1000; };
};
}

protocol direct {
import filter {
accept;
};
};


Re: OSPF state inconsistency

2015-05-04 Thread Ondrej Zajicek
On Mon, May 04, 2015 at 10:04:53AM +0200, Przemyslaw Frasunek wrote:
 Dear all,
 
 we are using BIRD 1.4.5 with OSPF on PPPoE access servers running FreeBSD 9.3
 and mpd 5.7. In order to achieve fail-over, each access server is listening on
 the same VLANs. The user connects to access server which first responds with
 PPPoE PADO.
 
 Some of our subscribers need additional IPv4 prefix, which is routed via 
 address
 assigned from pool. Such route is added by mpd on connect and deleted on
 disconnect or LCP timeout.
 
 Unfortunately, we are experiencing OSPF state inconsistency between access
 servers, when user quickly disconnects from one node and connects to another.
 This is such example, which caused routing loop:
 
 ...
 
 Any ideas, how to fix it?

Hi

First, try switching to version 1.5.0 . There were several problems in
earlier versions esp. when external routes were swiftly originated and
withdrawn.

 protocol direct {
 import filter {
 accept;
 };
 };

You probably do not need direct protocol.

-- 
Elen sila lumenn' omentielvo

Ondrej 'Santiago' Zajicek (email: santi...@crfreenet.org)
OpenPGP encrypted e-mails preferred (KeyID 0x11DEADC3, wwwkeys.pgp.net)
To err is human -- to blame it on a computer is even more so.


signature.asc
Description: Digital signature