在 AWS VPC 中创建多个子网时出错

Error in creating multiple subnets in AWS VPC

我正在尝试在 AWS 中创建具有多个子网的 VPC。我很确定我已经掌握了 CIDR 的概念来屏蔽网络和可用主机。

不幸的是,每当我尝试设计 VPC 时,我都会遇到错误。这是我的 VPC 设计:

错误:

Must be a valid CIDR block. Did you mean 10.0.0.0/16?

然后由于错误,我将 Public 子网分配为 10.0.0.0/16。

然后我继续将我的专用网络创建为 10.0.1.0/16 - 我收到错误消息:

CIDR block 10.0.1.0/16 overlaps with pre-existing CIDR block 10.0.0.0/16

我做错了什么?我只想创建两个专用网络和一个 public 网络。

VPC 范围 10.0.0.0/16 意味着所有以 10.0.x.x 开头的地址都是 VPC 的一部分。

创建子网时,您希望它成为 VPC 的部分。人们通常分配一个像 10.0.1.0/24 这样的地址——/24 意味着子网的每个 IP 地址都以 10.0.1.x.

开头

您收到的错误是因为您试图在 /16 VPC 中创建 /16 子网。这会起作用(就像您第二次尝试时所做的那样),但是您只能拥有一个子网。

底线: 使用 /24,或至少小于 /16(在 CIDR 中实际上意味着更大的数字!)。

我认为您混淆了,因为您不了解 IP 地址掩码的工作原理。以下是我如何创建具有 1 个 public 和 2 个私有子网的 VPC 的一些细分:

  • vpc 10.0.0.0/16(这意味着 10.0.x.x 将在您的 vpc 下)
  • public 子网 10.0.1.0/24 - 这意味着所有 10.0.1.x 地址都是 public
  • 私有子网 10.0.2.0/24 - 这意味着所有 10.0.2.x 地址都是私有的
  • 私有子网 10.0.3.0/24 - 这意味着所有 10.0.3.x 地址都是私有的

有一个 nice little diagram 向您展示了应该如何设置 VPC: