公共 IPv4 子网说明

网络工程 ip IPv4
2022-02-07 21:59:51

我一直在研究网络这个美妙的词(大声笑),我有一些关于 IPv4 子网的澄清问题。

我对子网划分的想法很满意。我知道这是一种将 IP 地址拆分为公共/本地地址的方法。不过,根据我的经验,我唯一一次看到这种使用是在专用网络中(10.xxx、198.162.xx 等)。

公共 IP 地址的子网划分如何工作?例如,如果我正在运行一个数据中心,拥有 30.214.41.2/16 是否等同于拥有 30.214.41.2 和 30.215.41.2 之间的 ~65000 个地址?

作为后续,ISP 是否将其用作路由目的的便利?

我问这个是因为与 AWS 合作,据我所知,它不可能为公共子网分配连续的公共 IP 地址。我正在构建一个公共子网,用运行 API 的机器填充它,并希望每台机器在子网中都有一个连续的公共 IP。我是否正确假设这是不可能的?

我知道 AWS 中的 IP 分配是在它自己的小世界中(因为你基本上是在借用亚马逊以前购买的 IP),并且它可能在其他地方有所不同。

为菜鸟问题道歉:)

编辑:65000 不是 600000

2个回答

公共 IP 地址的子网划分如何工作?例如,如果我正在运行一个数据中心,拥有 30.214.41.2/16 是否等同于拥有 30.214.41.2 和 30.215.41.2 之间的 ~65000 个地址?

子网掩码始终从左到右应用,因此 /24 或更小的子网不会有一个非零开头的最右边的值。对于您的示例:

      30.     214.      41.       2
00011110 11010110 00101001 00000010 address
11111111 11111111 00000000 00000000 network mask (/16)
======== ======== ======== ======== (bitwise AND)
00011110 11010110 00000000 00000000 network

本例中的网络为 30.214.0.0/16,主机范围为 30.214.0.1-30.214.255.254(30.214.0.0 和 30.214.255.255 有特殊含义。)

作为后续,ISP 是否将其用作路由目的的便利?

ISP 可以利用其地址范围划分子网这一事实来简化路由表。这称为路由汇总,对于保持 Internet 正常运行非常重要,因为您的 ISP 不必通告他们在连续范围内使用的每个网络块,他们可以只通告一个。还有比这更多的,但幸运的是,这超出了这个问题的范围(它很复杂,我已经忘记了大部分细节!)

顺便说一句,如果您的假设网络中需要超过 65534 台主机,您可以获得两个彼此相邻的 /16 网络(例如 10.214.0.0/16 和 10.215.0.0/16)并将它们超网到一个网络中(10.214.0.0/15)。它在较小的网络分配(/24 和更小)中更常见,但您应该知道它的存在。

我对子网划分的想法很满意。我知道这是一种将 IP 地址拆分为公共/本地地址的方法。不过,根据我的经验,我唯一一次看到这种使用是在专用网络中(10.xxx、198.162.xx 等)。

对于任何单播寻址,子网的工作方式相同。事实上,IP 对公共或私有寻址一无所知。私有地址只是 ISP 同意不路由的地址块。IP 本身并没有任何内在的东西可以说明任何地址是公共的或私有的。

ISP 所做的会因 ISP 的不同而不同,关于 ISP 网络的问题在这里是题外话。