绝对能看懂的子网划分过程及细节

                <svg xmlns="http://www.w3.org/2000/svg" style="display: none;">
                    <path stroke-linecap="round" d="M5,0 0,2.5 5,5z" id="raphael-marker-block" style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);"></path>
                </svg>
                <h1><a id="_0"></a>绝对能看懂的子网划分过程及细节</h1> 

IP 地址

随着网络的应用深入,IPv4 采用的 32 为 IP 地址设计限制了地址空间的总容量,出现了 IP 地址紧缺的现象,而 IPv6(采用 128 位 IP 地址设计)还不能够很快地进入应用,这时就需要采取一些措施来避免 IP 地址的浪费。
网络地址

子网掩码

以原先的 A,B,C 三类地址划分,经常出现 B 类太大、C 类太小或 C 类都太大的应用场景,为了解决 IP 地址的浪费,就出现了子网掩码

其主要思想是将 IP 地址划分成三个部分:网络号、子网号、主机号。

其实就是把原先 IP 地址的主机部分分成子网号和主机号两部分,也就是利用主机号部分继续划分子网。

那么怎么区分一个 IP 地址是属于哪个子网下的那一台主机的呢?

子网划分过程

例如一个 C 类网络,IP 地址为 192.168.37.69,子网掩码为 255.255.255.192。

① 分别转换成二进制形式:

IP 地址 11000000.10101000.00100101.01000101

子网掩码 11111111.11111111.11111111.11000000

C 类默认掩码 11111111.11111111.11111111.00000000

我们知道 C 类地址的默认子网掩码是 255.255.255.0,二进制形式的前三个字节全为 1,后一个字节全为 0。

而这个例子的子网掩码最后一个字节显然不全为 0,该字节的高两位为 1,说明 IP 地址中与其对应的这两个位被用作为子网号

用这两个位来表示子网,可以划分出 2^2=4 个子网,子网号分别为 00、01、10、11。

② 通过按位与运算我们可以计算出网络地址和主机号

IP 地址 11000000.10101000.00100101.01000101 (192.168.37.69)

子网掩码 11111111.11111111.11111111.11000000 (255.255.255.192)

网络地址 11000000.10101000.00100101.01000000 (192.168.37.64)

主机号 00000000.00000000.00000000.00000101 (0.0.0.5)

说明这个 IP 地址(192.168.37.69)是划分在一个子网号为 01、网络地址为 192.168.37.64 的子网下,分配在主机号为 0.0.0.5 的一台主机上

再例如 IP 地址为 192.168.37.216(11000000.10101000.00100101.11011000),还是用相同的子网掩码 255.255.255.192。

与上述计算过程同理,则

说明这个 IP 地址是划分在一个子网号为 11、网络地址为 192.168.37.192 的子网下,分配在主机号为 0.0.0.24 的一台主机上

网络地址为 192.168.37.64,那广播地址呢?

原理还是和原来 A、B、C 类大网的广播地址一样,就是在网络地址的基础上主机号部分全部为 1 就是广播地址

即 11000000.10101000.00100101.01111111 (192.168.37.127)。

什么?为什么和我以前看到的广播地址不一样,广播地址最后一个字节不应该是 255 吗?

注意,这里的广播地址是子网下的广播地址,你以前看到的 255 可能是因为 A、B、C 类大网没有划分的情况,现在是在大网的基础下继续划分子网情况。

④ 那这个子网掩码(255.255.255.192)划分的所有子网呢?

通过前面的 ① 知道,可划分四个子网,其子网号分别为:00 01 10 11。

四个子网对应的网络地址为:

  • 192.168.37.00 (11000000.10101000.00100101.00000000) 对应子网号 00
  • 192.168.37.64 (11000000.10101000.00100101.01000000) 对应子网号 01
  • 192.168.37.128 (11000000.10101000.00100101.10000000) 对应子网号 10
  • 192.168.37.192 (11000000.10101000.00100101.11000000) 对应子网号 11

四个子网对应的广播地址为:

  • 192.168.37.63 (11000000.10101000.00100101.00111111) 对应子网号 00
  • 192.168.37.127 (11000000.10101000.00100101.01111111) 对应子网号 01
  • 192.168.37.191 (11000000.10101000.00100101.10111111) 对应子网号 10
  • 192.168.37.255 (11000000.10101000.00100101.11111111) 对应子网号 11

⑤ 可用的 IP 地址范围

每个子网可用的 IP 地址范围:(网络地址 + 1) ~ (广播地址 - 1)

通过前面的 ④ 知道了网络地址和广播地址,那么可用的 IP 地址范围分别是:

  • 192.168.37.1 ~ 192.168.37.62
  • 192.168.37.65 ~ 192.168.37.126
  • 192.168.37.129 ~ 192.168.37.190
  • 192.168.37.192 ~ 192.168.37.254

⑤ 可容纳的主机数目

每个子网可容纳 2^(主机部分的位数) - 2 = 2^6 - 2 = 64 - 2 = 62 个主机。

这里减去 2 是因为 网络地址 和 广播地址 是不能分配给主机作为地址的。

扩展

每个子网下还可以继续划分子网,例如我们把网络地址为 192.168.37.192 的子网再次划分子网。

请参考此文章中的实例:https://blog.csdn.net/qq_44047479/article/details/109390618

结尾


如有错误之处望大家海涵并不吝指正!

posted @ 2022-11-04 20:45  大熊人  阅读(488)  评论(0编辑  收藏  举报