diff options
-rw-r--r-- | roles/space_server/files/bird.conf | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/roles/space_server/files/bird.conf b/roles/space_server/files/bird.conf index fbd426a..67f7419 100644 --- a/roles/space_server/files/bird.conf +++ b/roles/space_server/files/bird.conf @@ -60,8 +60,21 @@ define hafnium_prefixes_v6 = [ 2a0e:8f02:f034::/48 ]; +# large communities +define lc_f_type = 1; + +define lc_type_transit = 1; +define lc_type_peering = 2; +define lc_type_customer = 3; +define lc_type_originate = 4; + # functions and filters +function set_peer_type(int new_type) { + bgp_large_community.delete([(local_asn, lc_f_type, *)]); + bgp_large_community.add( (local_asn, lc_f_type, new_type)); +} + function is_default_route() { case net.type { NET_IP4: if net = 0.0.0.0/0 then return true; @@ -85,8 +98,7 @@ filter kernel_export { reject; } -function honor_graceful_shutdown() -{ +function honor_graceful_shutdown() { # RFC 8326 Graceful BGP Session Shutdown if (65535, 0) ~ bgp_community then { bgp_local_pref = 0; |