Hello list, I'm a new in Bird word :).
I'm working on a Bird mock-up. I'm actually blocked on OSPF filters. OSPF conf for First Router: *protocol ospf OSPF {* * import filter NFRANCE_OSPF_IN;* * export filter NFRANCE_OSPF_OUT;* * rfc1583compat yes;* * area 0 {* * interface "xn1" {* * type broadcast;* * };* * interface "xn2" {* * stub;* * };* * };* *};* OSPF conf for Second Router: *protocol ospf OSPF {* * import filter NFRANCE_OSPF_IN;* * export filter NFRANCE_OSPF_OUT;* * rfc1583compat yes;* * area 0 {* * interface "xn1" {* * type broadcast;* * };* * interface "xn2" {* * stub;* * };* * };* *};* Filters: *filter NFRANCE_OSPF_IN {* * if net ~ [80.247.224.0/20{24,32} <http://80.247.224.0/20{24,32}>] && (source ~ [ RTS_OSPF_EXT1, RTS_OSPF_EXT2 ])* * then* * {* * print net, " is accepted => OSPF_IN Public Nfrance";* * accept;* * }* * if net ~ [0.0.0.0/0{30,30} <http://0.0.0.0/0{30,30}>] && (source ~ [ RTS_OSPF_EXT1, RTS_OSPF_EXT2 ])* * then* * {* * print net, " is accepted => OSPF_IN Interco /30";* * accept;* * }* * else* * {* * print net, " is rejected => non OSPF_IN compliant";* * reject;* * }* * }* 80.247.227.2/24 is installed on Router 1, xn2 interface, Export network 80.247.227.0/24 on router 1 is ok but Import on the another router is KO. Indeed, If I use the condition: *if net ~ [80.247.224.0/20{24,32} <http://80.247.224.0/20{24,32}>] && (source ~ [ RTS_OSPF_EXT1, RTS_OSPF_EXT2 ])* 80.247.227.0/24 is rejected by the OSPF neighbor filter rule* NFRANCE_OSPF_IN* 2016-11-25 16:31:28 <INFO> 80.247.227.0/24 is rejected => non OSPF_IN compliant If I use the condition: *if net ~ [80.247.224.0/20{24,32} <http://80.247.224.0/20{24,32}>] *without *&& (source ~ [ RTS_OSPF_EXT1, RTS_OSPF_EXT2 ])* 80.247.227.0/24 is accepted by the OSPF neighbor filter rule* NFRANCE_OSPF_IN* 2016-11-25 16:42:18 <INFO> 80.247.227.0/24 is accepted => OSPF_IN Public Nfrance And when I check the bird route when network is accepted, I can see "OSPF" bird> show route 0.0.0.0/0 via 192.168.0.254 on xn0 [kernel1 16:35:00] * (10) 192.168.0.221/32 dev lo0 [kernel1 16:35:00] * (10) *80.247.227.0/24 <http://80.247.227.0/24> via 172.16.51.4 on xn1 [OSPF 16:42:18] * I (150/20) [192.168.0.223]* 172.16.51.1/32 dev lo0 [kernel1 16:35:00] * (10) bird> So I don't understand why *&& (source ~ [ RTS_OSPF_EXT1, RTS_OSPF_EXT2 ]) *does not match when the rule is added to my filter ? I use FreeBSD 10, Is there an issue on FBSD regarding RTS_* ? __ *Jean-Baptiste COUPIAC*