diff options
author | Trygve Laugstøl <trygvis@inamo.no> | 2024-06-13 20:08:38 +0200 |
---|---|---|
committer | Trygve Laugstøl <trygvis@inamo.no> | 2024-06-13 20:08:38 +0200 |
commit | 76e3c7f247f16056129d945e9002730329e57ad6 (patch) | |
tree | 5aaf78fd7e8d861f0b200699b2db9d59bef1731c | |
parent | 36f713dff28d357458b787e2f1e00a71da7bd51f (diff) | |
download | infra-76e3c7f247f16056129d945e9002730329e57ad6.tar.gz infra-76e3c7f247f16056129d945e9002730329e57ad6.tar.bz2 infra-76e3c7f247f16056129d945e9002730329e57ad6.tar.xz infra-76e3c7f247f16056129d945e9002730329e57ad6.zip |
tnet
-rw-r--r-- | tnet/files/akili/bird-tnet.conf | 46 | ||||
-rw-r--r-- | tnet/files/astyanax/bird-tnet.conf | 46 | ||||
-rw-r--r-- | tnet/files/kv24ix/bird-tnet.conf | 41 | ||||
-rw-r--r-- | tnet/files/lhn2ix/bird-tnet.conf | 41 | ||||
-rw-r--r-- | tnet/files/lhn2pi/bird-tnet.conf | 46 | ||||
-rw-r--r-- | tnet/host_vars/lhn2ix/bird.yml | 1 |
6 files changed, 220 insertions, 1 deletions
diff --git a/tnet/files/akili/bird-tnet.conf b/tnet/files/akili/bird-tnet.conf new file mode 100644 index 0000000..3c53d79 --- /dev/null +++ b/tnet/files/akili/bird-tnet.conf @@ -0,0 +1,46 @@ +define tnet = fdb1:4242:3538::/48; +define tnet_router = fdb1:4242:3538:ffff::/64; + +function is_tnet() -> bool +{ + return net ~ tnet && ! (net ~ tnet_router); +} + +template bgp tnet_tpl { + local as 4242423538; + neighbor internal; + + direct; + + 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; + }; + }; +} + +protocol bgp tnet_hash from tnet_tpl { + neighbor fdb1:4242:3538:ffff:ca85:f812:3935:5fba; + interface "tnet-hash"; +} + +protocol bgp tnet_knot from tnet_tpl { + neighbor fdb1:4242:3538:ffff:59d7:cf77:8b5d:761a; + interface "tnet-knot"; +} diff --git a/tnet/files/astyanax/bird-tnet.conf b/tnet/files/astyanax/bird-tnet.conf new file mode 100644 index 0000000..8fa46b9 --- /dev/null +++ b/tnet/files/astyanax/bird-tnet.conf @@ -0,0 +1,46 @@ +define tnet = fdb1:4242:3538::/48; +define tnet_router = fdb1:4242:3538:ffff::/64; + +function is_tnet() -> bool +{ + return net ~ tnet && ! (net ~ tnet_router); +} + +template bgp tnet_tpl { + local as 4242423538; + neighbor internal; + + direct; + + 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; + }; + }; +} + +protocol bgp tnet_hash from tnet_tpl { + neighbor fe80:a0fd:89e4:42c6:f617:7398:abf4:b516; + interface "tnet-hash"; +} + +protocol bgp tnet_knot from tnet_tpl { + neighbor fe80:6728:53fc:fc81:40b3:9beb:8336:ba56; + interface "tnet-knot"; +} diff --git a/tnet/files/kv24ix/bird-tnet.conf b/tnet/files/kv24ix/bird-tnet.conf new file mode 100644 index 0000000..a8fb14c --- /dev/null +++ b/tnet/files/kv24ix/bird-tnet.conf @@ -0,0 +1,41 @@ +define tnet = fdb1:4242:3538::/48; +define tnet_router = fdb1:4242:3538:ffff::/64; + +function is_tnet() -> bool +{ + return net ~ tnet && ! (net ~ tnet_router); +} + +template bgp tnet_tpl { + local as 4242423538; + neighbor internal; + + direct; + + 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; + }; + }; +} + +protocol bgp tnet_knot from tnet_tpl { + neighbor fdb1:4242:3538:ffff:ea4:11cb:863:5252; + interface "tnet-knot"; +} diff --git a/tnet/files/lhn2ix/bird-tnet.conf b/tnet/files/lhn2ix/bird-tnet.conf new file mode 100644 index 0000000..b020368 --- /dev/null +++ b/tnet/files/lhn2ix/bird-tnet.conf @@ -0,0 +1,41 @@ +define tnet = fdb1:4242:3538::/48; +define tnet_router = fdb1:4242:3538:ffff::/64; + +function is_tnet() -> bool +{ + return net ~ tnet && ! (net ~ tnet_router); +} + +template bgp tnet_tpl { + local as 4242423538; + neighbor internal; + + direct; + + 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; + }; + }; +} + +protocol bgp tnet_knot from tnet_tpl { + neighbor fdb1:4242:3538:ffff:18b7:d3ec:5608:db9a; + interface "tnet-knot"; +} diff --git a/tnet/files/lhn2pi/bird-tnet.conf b/tnet/files/lhn2pi/bird-tnet.conf new file mode 100644 index 0000000..5d5939b --- /dev/null +++ b/tnet/files/lhn2pi/bird-tnet.conf @@ -0,0 +1,46 @@ +define tnet = fdb1:4242:3538::/48; +define tnet_router = fdb1:4242:3538:ffff::/64; + +function is_tnet() -> bool +{ + return net ~ tnet && ! (net ~ tnet_router); +} + +template bgp tnet_tpl { + local as 4242423538; + neighbor internal; + + direct; + + 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; + }; + }; +} + +protocol bgp tnet_hash from tnet_tpl { + neighbor fe80:6195:1d43:9655:35f7:9dba:798c:26b8; + interface "tnet-hash"; +} + +protocol bgp tnet_knot from tnet_tpl { + neighbor fdb1:4242:3538:ffff:374e:2c7d:319e:e526; + interface "tnet-knot"; +} diff --git a/tnet/host_vars/lhn2ix/bird.yml b/tnet/host_vars/lhn2ix/bird.yml index b59526c..e20c45a 100644 --- a/tnet/host_vars/lhn2ix/bird.yml +++ b/tnet/host_vars/lhn2ix/bird.yml @@ -1,3 +1,2 @@ tnet_bird_peers: - hash: knot: |