1

我创建了一个地址空间为 10.1.0.0/16 的 VN 和一个 10.0.1.0/24 的子网。我收到地址空间错误。我尝试了 VN 10.0.0.0/24 并且成功了。我想知道为什么?为什么第一个子网失败而第二个子网通过了?这个地址空间是如何定义的?

4

1 回答 1

0

Azure 虚拟网络和子网使用CIDR表示法。这允许您表示网络路由所需的重要位部分。

例如,IPv4 地址192.168.1.0/24的网络掩码为255.255.255.0,这表示前 24 位被认为是重要的。这意味着我们不能混合使用 和 之类的两个地址192.168.0.0192.168.1.0因为前 24 位不匹配。

我们可以查看二进制表示以确保:

  • 192.168.0.0 => 11000000 10101000 00000000 00000000
  • 192.168.1.0 => 11000000 10101000 00000001 00000000

这表明两个 IPv4 地址之间的第 24 位不匹配。但是,我们可以将地址空间更改为192.168.0.0/23,两个地址将匹配,因为前 23 位相同,这也意味着网络掩码将是255.255.254.0

综上所述,CIDR 让我们能够更好地控制如何将连续的 IP 地址块重叠在一起。

您的第一个虚拟网络地址空间10.1.0.0/16需要与网络掩码共享相同前 16 位的子网255.255.0.0。子网地址空间喜欢10.1.1.0/1610.1.0.0/16将在这里工作。10.0.1.0/24在这里不起作用,因为它不与虚拟网络地址空间重叠。

您的第二个虚拟网络地址空间10.0.0.0/24需要与网络掩码共享相同前 24 位的子网255.255.255.0。子网地址空间喜欢 10.0.0.1/2410.0.0.2/24将在这里工作。10.0.1.0/24在这里不起作用,因为它不与虚拟网络地址空间重叠。

当子网地址空间与虚拟网络地址空间不匹配时,我们可以在 Azure 门户中验证子网错误。我在下面包含了一个屏幕截图。

在此处输入图像描述

于 2020-05-09T11:10:15.360 回答