Good morning Lexi, I believe the issue might be this one: define OSPF_V4_EXPORT = [ 0.0.0.0/0 ]; 0.0.0.0/0 matches only the default route *exactly*, nothing shorter. What you probably meant is: 0.0.0.0/0+ (default route and everything shorter as well). Best regards, Nico <#secure method=pgpmime mode=sign> Lexi Winter <lexi@le-fay.org> writes:
hello,
i'm using BIRD 3.2.0 on FreeBSD 15.0. i have a PPPoE interface with a point-to-point IPv4 address configured:
ng0: flags=10088d1<UP,POINTOPOINT,RUNNING,NOARP,SIMPLEX,MULTICAST,LOWER_UP> metric 0 mtu 1500 options=0 inet 81.187.73.117 --> 81.187.81.187/32 inet6 2001:8b0:aab5:1::1/128 inet6 fe80::227c:14ff:fef3:d8f7%ng0/64 scopeid 0x12 groups: arpa nd6 options=1<PERFORMNUD>
i would like to advertise this in OSPF as a passive interface, so i configured the OSPF protocol:
define OSPF_V6_EXPORT = [ ];
define OSPF_V4_EXPORT = [ 0.0.0.0/0 ];
filter ospf_export { if (net ~ OSPF_V6_EXPORT) then accept; if (net ~ OSPF_V4_EXPORT) then accept; reject; };
protocol ospf v2 core4 { ipv4 { export filter ospf_export; import all; };
area 0 { interface "ng0" { stub yes; }; [... other config elided ...] }; }
however, BIRD does not advertise 81.187.73.117/32 in OSPF. it *does* advertise 81.187.81.187/32, which is the remote side of the interface.
the interface looks fine in BIRD:
bird> show ospf interface "ng0" core6:
core4: Interface ng0 (peer 81.187.81.187) Type: ptp Area: 0.0.0.0 (0) State: PtP (stub) Priority: 1 Cost: 10 ECMP weight: 1 Hello timer: 10 Wait timer: 40 Dead timer: 40 Retransmit timer: 5
the route:
bird> show route for 81.187.73.117/32 Table master4: 0.0.0.0/0 unicast [kernel4 2026-07-04] ! (10) via 81.187.81.187 on ng0 81.187.73.117/32 unicast [kernel4 2026-07-04] ! (10) dev lo0
if i add 81.187.73.117/32 to OSPF_V4_EXPORT, then it is correctly advertised as an E2 route, which is fine as a workaround, but i would like to understand why the interface configuration doesn't work.
-- Sustainable and modern Infrastructures by ungleich.ch