Discussion:
OSPF stubnets of PtP interfaces
Thomas Goldberg
2014-10-10 10:05:30 UTC
Permalink
Hello,

we've OSPF running over a openvpn ptp tunnel and some problems with
the routes injected by bird (v1.4.5).

OSPF is running in PtP mode on the tun0 interface of each router. The
problem is that bird doesn't inject any routers for the local
interface IP as intra-area route into OSPF itself. We've to inject
them as external route via import of routes learned by a direct
protocol (d_local).
This is how the end result looks:

Router A:
interface config:
17: tun0: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1500 qdisc
pfifo_fast state UNKNOWN qlen 100
link/none
inet 10.176.3.29 peer 10.176.3.30/32 scope global tun0

bird routes:
10.176.3.30/32 dev tun0 [d_local 2014-10-07 16:13:46] * (240)
10.176.3.29/32 via 10.176.3.30 on tun0 [o_internal 2014-10-09
17:45:44] * E1 (150/100) [10.176.3.30]


Router B:
interface config:
13: tun0: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1500 qdisc
pfifo_fast state UNKNOWN group default qlen 100
link/none
inet 10.176.3.30 peer 10.176.3.29/32 scope global tun0

bird routes:
10.176.3.29/32 dev tun0 [d_local 2014-10-09 17:45:43] * (240)
10.176.3.30/32 via 10.176.3.29 on tun0 [o_internal 2014-10-09
17:40:51] * E1 (150/100) [10.176.3.29]


Shouldn't bird inject routes like this on the corresponding router
(without having to learn them via the direct protocol)?
10.176.3.29/32 dev lo [o_internal 2014-10-09 00:00:00] * I (150/0) [10.176.3.29]
Manuel Thoenes
2014-10-10 10:16:07 UTC
Permalink
Hi Thomas,

no, randomly adding host-routes to peers addresses is an unwanted behavour
imo.

The more important question is: why are you using a /32 transit network?
Your OS will add a route to your peer when using /31 or less.
Post by Thomas Goldberg
Hello,
we've OSPF running over a openvpn ptp tunnel and some problems with
the routes injected by bird (v1.4.5).
OSPF is running in PtP mode on the tun0 interface of each router. The
problem is that bird doesn't inject any routers for the local
interface IP as intra-area route into OSPF itself. We've to inject
them as external route via import of routes learned by a direct
protocol (d_local).
17: tun0: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1500 qdisc
pfifo_fast state UNKNOWN qlen 100
link/none
inet 10.176.3.29 peer 10.176.3.30/32 scope global tun0
10.176.3.30/32 dev tun0 [d_local 2014-10-07 16:13:46] * (240)
10.176.3.29/32 via 10.176.3.30 on tun0 [o_internal 2014-10-09
17:45:44] * E1 (150/100) [10.176.3.30]
13: tun0: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1500 qdisc
pfifo_fast state UNKNOWN group default qlen 100
link/none
inet 10.176.3.30 peer 10.176.3.29/32 scope global tun0
10.176.3.29/32 dev tun0 [d_local 2014-10-09 17:45:43] * (240)
10.176.3.30/32 via 10.176.3.29 on tun0 [o_internal 2014-10-09
17:40:51] * E1 (150/100) [10.176.3.29]
Shouldn't bird inject routes like this on the corresponding router
(without having to learn them via the direct protocol)?
10.176.3.29/32 dev lo [o_internal 2014-10-09 00:00:00] * I (150/0) [10.176.3.29]
Loading...