ipv4 table dn42v4; ipv6 table dn42v6; function dn42_is_valid_network() { return net ~ [ 172.20.0.0/14{21,29}, # dn42 172.20.0.0/24{28,32}, # dn42 Anycast 172.21.0.0/24{28,32}, # dn42 Anycast 172.22.0.0/24{28,32}, # dn42 Anycast 172.23.0.0/24{28,32} # dn42 Anycast ]; } function dn42_is_valid_network_v6() { return net ~ [ fd00::/8{44,64} # ULA address space as per RFC 4193 ]; } protocol pipe dn42v4_sync { table dn42v4; peer table master4; export filter { if bgp_large_community ~ [(DN42_ASN, 3,*)] then reject; accept; }; } protocol pipe dn42v6_sync { table dn42v6; peer table master6; export filter { if bgp_large_community ~ [(DN42_ASN, 3,*)] then reject; accept; }; }