子网掩码(subnet mask)又叫 网络掩码、 地址掩码、子网络遮罩,它是一种用来指明一个 IP地址的哪些位标识的是 主机所在的子网,以及哪些位标识的是主机的位掩码。子网掩码不能单独存在,它必须结合IP地址一起使用。子网掩码只有一个作用,就是将某个IP地址划分成 网络地址和 主机地址两部分。

子网掩码是一个32位地址,用于屏蔽IP地址的一部分以区别网络标识和主机标识,并说明该IP地址是在局域网上,还是在远程网上。

定义

子网掩码(subnet mask)是每个使用 互联网的人必须要掌握的基础知识,只有掌握它,才能够真正理解 TCP/IP协议的设置。

子网掩码——屏蔽一个 IP地址的网络部分的“全1”比特模式。对于A类地址来说,默认的子网掩码是255.0.0.0;对于B类地址来说默认的子网掩码是255.255.0.0;对于C类地址来说默认的子网掩码是255.255.255.0。

利用子网掩码可以把大的网络划分成 子网,即 VLSM(可变长子网掩码),也可以把小的网络归并成大的网络即 超网。

构成

要想理解什么是子网掩码,就不能不了解IP地址的构成。 互联网是由许多小型 网络构成的,每个网络上都有许多 主机,这样便构成了一个有层次的结构。IP地址在设计时就考虑到地址分配的层次特点,将每个IP地址都分割成 网络号和 主机号两部分,以便于IP地址的 寻址操作。

IP地址的 网络号和 主机号各是多少位呢?如果不指定,就不知道哪些位是网络号、哪些是主机号,这就需要通过子网掩码来实现。

规则

子网掩码的设定必须遵循一定的规则。与 二进制IP地址相同,子网掩码由1和0组成,且1和0分别连续。子网掩码的长度也是32位,左边是网络位,用 二进制数字“1”表示,1的数目等于网络位的长度;右边是主机位,用二进制数字“0”表示,0的数目等于主机位的长度。这样做的目的是为了让掩码与 ip地址做按位与运算时用0遮住原主机数,而不改变原网络段数字,而且很容易通过0的位数确定子网的主机数(2的主机位数次方-2,因为主机号全为1时表示该网络 广播地址,全为0时表示该网络的 网络号,这是两个特殊地址)。只有通过子网掩码,才能表明一台主机所在的子网与其他子网的关系,使网络正常工作。

作用

子网掩码是一个32位地址,是与IP地址结合使用的一种技术。它的主要作用有两个,一是用于屏蔽IP地址的一部分以区别 网络标识和 主机标识,并说明该IP地址是在 局域网上,还是在远程网上。二是用于将一个大的IP网络划分为若干小的子网络。

使用子网是为了减少IP的浪费。因为随着 互联网的发展,越来越多的网络产生,有的网络多则几百台,有的只有区区几台,这样就浪费了很多IP地址,所以要划分子网。使用子网可以提高网络应用的效率。

通过IP 地址的 二进制与子网掩码的二进制进行与运算,确定某个设备的 网络地址和 主机号,也就是说通过子网掩码分辨一个网络的网络部分和主机部分。子网掩码一旦设置, 网络地址和 主机地址就固定了。子网一个最显著的特征就是具有子网掩码。与IP地址相同,子网掩码的长度也是32位,也可以使用十进制的形式。例如,为 二进制形式的子网掩码:1111 1111.1111 1111.1111 1111.0000 0000,采用十进制的形式为:255.255.255.0。

通过计算机的子网掩码判断两台计算机是否属于同一网段的方法是,将计算机十进制的IP地址和子网掩码转换为二进制的形式,然后进行二进制“与”(AND)计算(全1则得1,不全1则得0),如果得出的结果是相同的,那么这两台计算机就属于同一网段。