【问题标题】:Terraform cidrsubnet functionTerraform cidrsubnet 函数
【发布时间】:2021-05-28 03:40:47
【问题描述】:

首先,我很抱歉现在知道如何更好地进行子网划分。到目前为止,这不是我必须做的事情。

我获得了 10.10.32.0/19 的网络/cidr。

我有 6 个子网,每个子网需要 255 个 ip。

我想将其余的 IP 分布在 3 个剩余的子网中。

这是我使用 cidrsubnet 想到的

        cidrsubnet("10.10.32.0/19", 2, 0) # "10.10.64.0/21" 2048 hosts
        cidrsubnet("10.10.32.0/19", 2, 1) # "10.10.72.0/21" 2048 hosts
        cidrsubnet("10.10.32.0/19", 2, 2) # "10.10.80.0/21" 2048 hosts

        cidrsubnet("10.10.32.0/19", 5, 24) # "10.10.88.0/24" 255 hosts
        cidrsubnet("10.10.32.0/19", 5, 25) # "10.10.89.0/24" 255 hosts
        cidrsubnet("10.10.32.0/19", 5, 26) # "10.10.90.0/24" 255 hosts

        cidrsubnet("10.10.32.0/19", 5, 27) # "10.10.91.0/24" 255 hosts
        cidrsubnet("10.10.32.0/19", 5, 28) # "10.10.92.0/24" 255 hosts
        cidrsubnet("10.10.32.0/19", 5, 29) # "10.10.93.0/24" 255 hosts

这给我留下了大约 512 个无法使用的 ip。我这样做对吗?

【问题讨论】:

  • 你能澄清一下是什么问题吗?
  • 问题是我的子网划分正确吗?

标签: terraform subnet


【解决方案1】:

您有 2^11 (32-19) 主机 == 8192

您的范围从10.10.32.0 开始并贯穿10.10.63.255

6*256+3*2048 == 7680离开512

您需要重新平衡,以免浪费 IP。

您的第一个cidrsubnet(10.10.32/19,2,0)10.10.32.0--10.10.39.255

【讨论】:

  • 你能解释一下重新平衡你的ips意味着什么吗?
  • 是的,抱歉,我不清楚。我回复的时候已经是深夜了。您希望拥有使用所有 (8192) IP 的子网,而不是让 512 未使用。您指定了 6*256 并将剩余的部分涂抹在 3 上,但这并没有给您同样大小的子集 (8192-6*256)/3=2218.666... 所以您不能这样做。你可以有 6*256、2*2048、1*2560 但这有点粗糙。我不知道您的要求是什么,但我建议使分发更加一致(和完整)。
猜你喜欢
  • 1970-01-01
  • 2020-11-20
  • 2021-02-28
  • 2021-03-19
  • 2021-02-28
  • 1970-01-01
  • 2021-06-27
  • 1970-01-01
  • 2022-12-11
相关资源
最近更新 更多