我正在尝试使用 terraform 在 aws 中创建一个 vpc,并在我的子网之间划分 cidr 范围,如下所示:
resource "aws_vpc" "dev_vpc" {
cidr_block = "10.0.0.0/24"
tags = {
Name = "Dev environment VPC"
}
}
resource "aws_subnet" "private_subnet_operational_db_dev_1" {
vpc_id = aws_vpc.dev_vpc.id
cidr_block = "10.0.0.0/30"
availability_zone = "eu-west-1a"
tags = {
Name = "Public Subnet Operational db dev 1}"
}
}
我计算出我的 vpc 的 cidr 范围是:10.0.0.0 - 10.0.0.255。如果子网的范围是这样的:10.0.0.0 - 10.0.0.3,那么为什么它无效呢?即使在文档上花费了大量时间之后,我仍然很难理解 CIDR 表示法,因此我们将不胜感激。
AWS 在每个子网内保留 5 个 IP 地址。当您创建 CIDR 块 10.0.0.0/30 的子网时,它仅提供 4 个 IP 地址 (10.0.0.0 - 10.0.0.3)。
AWS 保留每个子网 CIDR 块中的前四个 IP 地址和最后一个 IP 地址,因此您甚至没有足够的 IP 地址供 AWS 使用。它们不可供您使用,也不能分配给实例。
将子网中可用的 IP 地址数量增加到至少 6 个。