如何验证无效的CIDR块?

Joh*_*son 2 ip networking subnet vpc amazon-web-services

我为我的VPC保留了以下CIDR - > 10.0.0.0/22

这告诉我的是,我的主机ips或1,024地址有10位剩余.我试图计算有效地址的范围,因为亚马逊在创建新的私有子网时要求有效的IPv4 CIDR块.

我想从第3个八位字节中取出6/8位,最后一个八位字节全部为0,这导致我的IP范围为10.0.0.0 -> 10.0.3.255.

当我到屏幕上实际选择我的IPv4 CIDR块时,我得到一个"无效错误",这只是验证我不理解数学实际上是如何工作的.我输入了10.0.2.1/28一个必须是有效的Ipv4 CIDR错误.

我的思考过程:

这看起来像是在我计算的范围内,我希望我的私有子网保留16个IP地址.

我究竟做错了什么?

Joh*_*ley 9

您将从VPC 10.0.0.0/22开始.你是正确的,因为有效的寻址范围是10.0.0.0 - > 10.0.3.255.

现在,您要使用/ 28 CIDR块从此VPC创建子网./ 28表示最后四位为0,为您提供范围0 - > 15.CIDR块必须始终在自己的边界上开始./ 28的示例:

10.0.0.0 - > 10.0.0.15

10.0.0.16 - > 10.0.0.31

您尝试使用CIDR块10.0.2.1/28创建子网.这是无效的,因为它不是在/ 28的有效CIDR范围内的偏移0处开始.您可以创建一个有效的子网,如10.0.2.0/28或10.0.2.16/28等.请注意每个子网的起点如何将最后四位设为0.

快速查看此信息的方法是,对于任何子网,主机部分从0开始,以所有子网结束.

  • 如果将10.0.2.16转换为十六进制0A.00.02.10,则最后一个八位位组(0x10)的位模式为0001 0000.最后四位为零.十六进制的高位有效地址为0A.00.02.1F.注意最后四位是全部的. (2认同)

Nee*_*iya 6

我只是想告诉你选择CIDR块的规则如下:

  1. 所有 IP 地址应该是连续的。
  2. 您可以获得的 IP 数量是 2 n次方
  3. 块中的第一个 IP 地址应能被块的大小整除,即 (2 n )。

第三点很重要,也与第二点相关。

10.0.2.1/28 - It is not the proper CIDR block ID.
Run Code Online (Sandbox Code Playgroud)

这里没有遵循第三点。