diff options
Diffstat (limited to 'tnet/templates')
-rw-r--r-- | tnet/templates/bird.conf.j2 | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/tnet/templates/bird.conf.j2 b/tnet/templates/bird.conf.j2 new file mode 100644 index 0000000..45dc318 --- /dev/null +++ b/tnet/templates/bird.conf.j2 @@ -0,0 +1,36 @@ +template bgp tnet_tpl { + local as 4242423538; + neighbor internal; + + direct; + rr client; + + password "trygvis"; + + ipv6 { + next hop self; + import filter { + if is_tnet() then { + print proto, ": import accept, net=", net, ", from=", from, ", gw=", gw; + accept; + } + print proto, ": import reject, reason=not tnet"; reject; + }; + # newer bird's only + # import keep filtered; + export filter { + if is_tnet() then { + print proto, ": export accept, net=", net, ", from=", from, ", gw=", gw; + accept; + } + print proto, ": export reject, reason=not tnet"; reject; + }; + }; +} +{% for p in tnet_bird_peers|default([])|sort %} + +protocol bgp tnet_{{ p }} from tnet_tpl { + neighbor {{ hostvars[p].tnet_wg[inventory_hostname].address }}; + interface "tnet-{{ p }}"; +} +{% endfor %} |