From 48b0ac84061a2c73d08726ccabf4dd60c506aab3 Mon Sep 17 00:00:00 2001 From: Trygve Laugstøl Date: Tue, 24 Sep 2024 21:30:22 +0200 Subject: ipam-generate-tf --- terraform/conflatorio-docker/main.tf | 16 ++-- terraform/ipam6/ipam6.tf | 150 +++++++++++++++++++++++++++++++++++ 2 files changed, 159 insertions(+), 7 deletions(-) create mode 100644 terraform/ipam6/ipam6.tf (limited to 'terraform') diff --git a/terraform/conflatorio-docker/main.tf b/terraform/conflatorio-docker/main.tf index e7b11ad..ad4e6fd 100644 --- a/terraform/conflatorio-docker/main.tf +++ b/terraform/conflatorio-docker/main.tf @@ -23,13 +23,15 @@ data "sops_file_entry" "linode_token" { } locals { - public_ip = "fdb1:4242:3538:2001::ffff" - network_addr = "fdb1:4242:3538:2001:1001::" - network_range = 112 - private_network_addr = "fdb1:4242:3538:2001:1002::" - private_network_range = 112 + hs = module.ipam6.hosts + ns = module.ipam6.networks + public_ip = local.hs.conflatorio-ix.address + network_addr = local.ns.conflatorio_docker.address + network_range = local.ns.conflatorio_docker.prefix + private_network_addr = local.ns.conflatorio_docker_private.address + private_network_range = local.ns.conflatorio_docker_private.range } -output "foo" { - value = "foo!" +module "ipam6" { + source = "../ipam6" } diff --git a/terraform/ipam6/ipam6.tf b/terraform/ipam6/ipam6.tf new file mode 100644 index 0000000..88f8181 --- /dev/null +++ b/terraform/ipam6/ipam6.tf @@ -0,0 +1,150 @@ +output "networks" { + value = { + bitraf_dn42 = { + range = "fdb1:4242:3538::/48" + address = "fdb1:4242:3538::" + prefix = "48" + hosts = { + } + } + tnet_dn42 = { + range = "fdb1:4242:3538:2000::/52" + address = "fdb1:4242:3538:2000::" + prefix = "52" + hosts = { + } + } + conflatorio_dn42 = { + description = "Internal network on host" + range = "fdb1:4242:3538:2001::/64" + address = "fdb1:4242:3538:2001::" + prefix = "64" + hosts = { + conflatorio = { + address : "fdb1:4242:3538:2001::ffff" + prefix : "64" + } + } + } + node1_dn42 = { + range = "fdb1:4242:3538:2002::/64" + address = "fdb1:4242:3538:2002::" + prefix = "64" + hosts = { + } + } + node2_dn42 = { + range = "fdb1:4242:3538:2003::/64" + address = "fdb1:4242:3538:2003::" + prefix = "64" + hosts = { + } + } + knot_dn42 = { + range = "fdb1:4242:3538:2004::/64" + address = "fdb1:4242:3538:2004::" + prefix = "64" + hosts = { + knot = { + address : "fdb1:4242:3538:2004::ffff" + prefix : "64" + } + } + } + coregonus_dn42 = { + range = "fdb1:4242:3538:2005::/64" + address = "fdb1:4242:3538:2005::" + prefix = "64" + hosts = { + coregonus-ix = { + address : "fdb1:4242:3538:2005::ffff" + prefix : "64" + } + danneri = { + address : "fdb1:4242:3538:2005:9422:d355:95b7:f170" + prefix : "128" + } + } + } + coregonus_docker = { + range = "fdb1:4242:3538:2005:df01:676a:ec28:0a00/120" + address = "fdb1:4242:3538:2005:df01:676a:ec28:a00" + prefix = "120" + hosts = { + } + } + kv24_dn42 = { + range = "fdb1:4242:3538:2006::/64" + address = "fdb1:4242:3538:2006::" + prefix = "64" + hosts = { + kv24ix = { + address : "fdb1:4242:3538:2006::ffff" + prefix : "64" + } + } + } + conflatorio_dn42_2 = { + range = "fdb1:4242:3538:2007:1001::/112" + address = "fdb1:4242:3538:2007:1001::" + prefix = "112" + hosts = { + } + } + lhn2_dn42 = { + range = "fdb1:4242:3538:2008::/64" + address = "fdb1:4242:3538:2008::" + prefix = "64" + hosts = { + lhn2pi = { + address : "fdb1:4242:3538:2008::ffff" + prefix : "64" + } + conflatorio = { + address : "fdb1:4242:3538:2008:8042:32ff:fe0c:7161" + prefix : "128" + } + } + } + dn42 = { + range = "fd00::/8" + address = "fd00::" + prefix = "8" + hosts = { + } + } + } +} + +output "hosts" { + value = { + conflatorio = { + address : "fdb1:4242:3538:2001::ffff" + prefix : "64" + } + knot = { + address : "fdb1:4242:3538:2004::ffff" + prefix : "64" + } + coregonus-ix = { + address : "fdb1:4242:3538:2005::ffff" + prefix : "64" + } + danneri = { + address : "fdb1:4242:3538:2005:9422:d355:95b7:f170" + prefix : "128" + } + kv24ix = { + address : "fdb1:4242:3538:2006::ffff" + prefix : "64" + } + lhn2pi = { + address : "fdb1:4242:3538:2008::ffff" + prefix : "64" + } + conflatorio = { + address : "fdb1:4242:3538:2008:8042:32ff:fe0c:7161" + prefix : "128" + } + } +} -- cgit v1.2.3