Thank you, the unset workaround works just fine.
By the way, unset() is not mentioned in documentation :-)
On 3/5/19 7:32 PM, Ondrej Zajicek wrote:
On Mon, Mar 04, 2019 at 04:54:10PM +0300, Yaroslav Dronskii wrote:
Hello, I need some help in understanding bird. Route redistribution between
ospf instances doesn't work for me.
I tried everything I could think of short of debugging source code, and
narrowed it down to route type.
If it's RTS_OSPF_IA, ospf_metric2 is set to LSINFINITY.
Hello
This seems like a bug in BIRD. OSPF generated routes other than E2 (type
2 external) have attribute ospf_metric2 set to LSINFINITY, but when a
route is exported to OSPF and have ospf_metric2 set (even to LSINFINITY),
then it is generated as E2 with given metric. We should generate
ospf_metric2 attribute only for E2 routes.
There is a simple workaround: In OSPF export filter, use this command:
unset(ospf_metric2);
That would generate E1 routes from IA routes. Or just set ospf_metric2 to
a sane value to generate E2 routes.
How route is seen:
Imported from other vm host via ospf:
bird> show route table table_ospf_0 10.20.5.135/32 all
Table table_ospf_0:
10.20.5.135/32 unicast [ospf_vm 13:52:53.209] IA (150/20)
[10.255.10.129]
via 10.133.146.12 on ospf0-br
Type: OSPF-IA univ
This seems like another bug, there should be list of OSPF attributes.