diff options
| -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: | 
