一、 子网掩码的概念及作用
子网掩码 (subnet mask) 又叫网络掩码、地址掩码、子网络遮罩,是一个应用于 TCP/IP 网络的 32 位二进制值。它可以屏蔽掉 IP 地址中的一部分,从而分离出 IP 地址中的网络部分与主机部分,基于子网掩码,管理员可以将网络进一步划分为若干子网。它必须结合 IP 地址一起使用。
二、 为什么需要使用子网掩码
虽然我们说子网掩码可以分离出 IP 地址中的网络部分与主机部分,可大家还是会有疑问,比如为什么要区分网络地址与主机地址?区分以后又怎样呢?那么好,让我们再详细的讲一下吧!
通过计算机的子网掩码判断两台计算机是否属于同一网段的方法是,将计算机十进制的IP地址和子网掩码转换为二进制的形式,然后进行二进制“与”(AND)计算(全1则得1,不全1则得0),如果得出的结果是相同的,那么这两台计算机就属于同一网段。具体来说:
- 我们通过将本机的子网掩码与接受方主机的 IP 地址进行 ' 与 ' 运算,即可得到目标主机所在的网络号,
- 又由于每台主机在配置 TCP/IP 协议时都设置了一个本机 IP 地址与子网掩码,将本机的子网掩码与本机的 IP 地址进行 ' 与 ' 运算,即可得到本机所在的网络号。
通过比较这两个网络号,就可以知道接受方主机是否在本网络上。如果网络号相同,表明接受方在本网络上,那么可以通过相关的协议(注:ARP,详细参考下面提高部分)把数据包直接发送到目标主机;如果网络号不同,表明目标主机在远程网络上,那么数据包将会发送给本网络上的路由器,由路由器将数据包发送到其他网络,直至到达目的地。在这个过程中你可以看到,子网掩码是不可或缺的!。
三、 如何用子网掩码得到网络 / 主机地址
既然子网掩码这么重要,那么它是如何分离出 IP 地址中的网络地址和主机地址的呢?
过程如下:
1. 将 IP 地址与子网掩码转换成二进制;
2. 将二进制形式的 IP 地址与子网掩码做 ' 与 ' 运算,将答案化为十进制便得到网络地址;
课程上主要讲解一下如何取网络地址
3. 将二进制形式的子网掩码取 ' 反 ' ;
4. 将取 ' 反 ' 后的子网掩码与 IP 地址做 ' 与 ' 运算,将答案化为十进制便得到主机地址。
下面我们用一个例子给大家演示:
假设有一个 I P 地址: 192.168.0.1
子网掩码为: 255.255.255.0
化为二进制为: I P 地址 11000000.10101000.00000000.00000001
子网掩码 11111111.11111111.11111111.00000000
将两者做 ' 与 ' 运算得: 11000000.10101000.00000000.00000000
将其化为十进制得: 192.168.0.0
这便是上面 IP 的网络地址,主机地址以此类推。
本文介绍了子网掩码的基本概念及其在网络划分中的作用,并详细解释了如何利用子网掩码来确定网络地址与主机地址。

13万+

被折叠的 条评论
为什么被折叠?



