diff --git a/bird.conf b/bird.conf index 948d4d0..6ffbf2c 100644 --- a/bird.conf +++ b/bird.conf @@ -13,6 +13,7 @@ include "/etc/bird/passwords.conf"; include "/etc/bird/communities.conf"; include "/etc/bird/tables.conf"; include "/etc/bird/filters/*.conf"; +include "/etc/bird/templates/*.conf"; include "/etc/bird/protocols/*.conf"; protocol device { diff --git a/templates/dn42.conf b/templates/dn42.conf new file mode 100644 index 0000000..e44aee7 --- /dev/null +++ b/templates/dn42.conf @@ -0,0 +1,44 @@ +template bgp dn42_peer { + local as my_dn42_asn; + + graceful restart on; +} + +template bgp dn42_peer_v46 from dn42_peer { + ipv4 { + table dn42_v4; + + import keep filtered; + import where dn42_import_v4(); + export where dn42_export_v4(); + }; + + ipv6 { + table dn42_v6; + + import keep filtered; + import where dn42_import_v6(); + export where dn42_export_v6(); + }; +} + +template bgp dn42_peer_v4 from dn42_peer { + ipv4 { + table dn42_v4; + + import keep filtered; + import where dn42_import_v4(); + export where dn42_export_v4(); + }; +} + +template bgp dn42_peer_v6 from dn42_peer { + ipv6 { + table dn42_v6; + + import keep filtered; + import where dn42_import_v6(); + export where dn42_export_v6(); + }; +} + diff --git a/templates/ebgp.conf b/templates/ebgp.conf new file mode 100644 index 0000000..c0a74df --- /dev/null +++ b/templates/ebgp.conf @@ -0,0 +1,30 @@ +template bgp ebgp_peer { + local as my_ripe_asn; + + graceful restart on; +} + +template bgp ebgp_peer_v6 from ebgp_peer { + ipv6 { + table ebgp_v6; + + import keep filtered; + import limit 100000; + + import where ebgp_import_v6(); + export where ebgp_export_v6(); + }; +} + +template bgp ebgp_peer_v4 from ebgp_peer { + ipv4 { + table ebgp_v4; + + import keep filtered; + import limit 200000; + + import where ebgp_import_v4(); + export where ebgp_export_v4(); + }; +} +