diff --git a/lib/10-community-transit.conf b/lib/10-community-transit.conf index 7acafb6..2d80597 100644 --- a/lib/10-community-transit.conf +++ b/lib/10-community-transit.conf @@ -62,7 +62,7 @@ function pub_process_communities(int ASN; int PeerType) { # PEER if (PeerType<10) then { - if (LOCAL_ASN, 1, 1) ~ bgp_large_community then return false; + if (LOCAL_ASN, 1, 1) ~ bgp_large_community then bgp_community.add((65535, 65281)); # UPSTREAM } else if (PeerType=10) then { diff --git a/protocol/external_network.conf b/protocol/external_network.conf index d507532..f15d883 100644 --- a/protocol/external_network.conf +++ b/protocol/external_network.conf @@ -1,6 +1,8 @@ template bgp pub_transit { local as LOCAL_ASN; + interpret communities off; + ipv6 { import where transit_import_filter(6939); export where transit_export_filter(6939); @@ -9,7 +11,9 @@ template bgp pub_transit { template bgp pub_peer { local as LOCAL_ASN; - + + interpret communities off; + ipv6 { import where direct_peer_import_filter(6939); export where direct_peer_export_filter(6939); @@ -19,6 +23,8 @@ template bgp pub_peer { template bgp pub_downstream { local as LOCAL_ASN; + interpret communities off; + ipv6 { import where downstream_import_filter(6939); export where downstream_export_filter(6939);