小提示:
- ip 地址为32位,每8位分成一组
- 128.14.35.7/20
/20
表示前20位为网络前缀,后32-20=12位为主机号,也就是说子网掩码是255.255.240.0
即20个全1(二进制),主机位全零的为网络地址,主机位全1的为广播地址,剩余的主机号码为主机地址范围- 子网掩码255.255.255.252 得出其网络位为30位,因为252为11111100,有30全为1,所以只有剩下的2位为主机位
例题:
一个主机的IP地址是202.112.14.137,掩码是255.255.255.224,要求计算这个主机所在网络的网络地址和广播地址。
以上问题有两种方法:
① 这个主机地址和子网掩码都换算成二进制数,两者进行逻辑与运算后即可得到网络地址,广播地址为主机位全为1
主机的IP 202.112.14.137转成二进制
11001010.11100000.00001110.10001001
掩码地址 255.255.255.224 转成二进制
11111111.11111111.11111111.11100000
二者相与:(相1为1,否则为0)
11001010.11100000.00001110.10001001//主机的IP
& 11111111.11111111.11111111.11100000//掩码地址
11001010.11100000.00001110.10000000
= 202.112.14.128//网络地址
由子网掩码可知有27位网络前缀(0前面有27个1),5个主机位为1,因此将主机 ip (转为二进制)最后5位变成1就为广播地址
11001010.11100000.00001110.10011111 //广播地址
= 202.112.14.159
② 255.255.255.224
的掩码所容纳的IP地址有256-224=32个(包括网络地址和广播地址),那么具有这种掩码的网络地址一定是32的倍数。而网络地址是子网IP地址的开始,广播地址是结束,可使用的主机地址在这个范围内,因此略小于137而又是32的倍数的只有128,所以得出网络地址是202.112.14.128,而广播地址就是下一个网络的网络地址减1。而下一个32的倍数是160,因此可以得到广播地址为202.112.14.159。