4.2.3 子网掩码
互联网是由许多小型网络构成的,每个网络上都有许多主机,这样便构成了一个有层次的结构。IP地址在设计时就考虑到地址分配的层次特点,将每个IP地址都分割成网络号和主机号两部分,以便于IP地址的寻址操作。此时,需要用某种方法指定哪些位是网络号,哪些是主机号,这个任务就是由子网掩码来承担的。
子网掩码不能单独存在,它必须和IP地址一起使用。与IP地址相同,子网掩码的长度也是32位,左边的若干位是1,右边的若干位是0。在IP地址中,与子网掩码1对应的那些位组成了网络号,而与子网掩码0对应的那些位组成了主机号。例如,192.168.75.109/255.255.248.0转换成二进制表示后,将如下所示:
11000000 10101000 01001011 01101101
11111111 11111111 11111000 00000000
在IP地址中,与子网掩码位1对应的位组成了以下网络号:
11000000 10101000 01001000
即网络号是192.168.72,而与子网掩码位0对应的位组成了以下主机号:
00000000 00000000 00000011 01101101
即主机号是3.109。通常,将IP地址的主机号全改为0,则可以得到IP地址的网络号,而把网络号全改为0,则得到IP地址的主机号。
子网掩码的作用就是获取主机IP的网络地址信息,用于区别主机通信的不同情况,由此选择不同路由。IPv4协议为A、B、C类地址分别规定了固定位数的网络号和主机号,其中,A类地址的默认子网掩码为255.0.0.0;B类地址的默认子网掩码为255.255.0.0;C类地址的默认子网掩码为255.255.255.0。
%注意:当用户配置自己的内网时,可以根据实际情况规定子网掩码的位数。