IP地址和广播地址不在一个网段内时根据IP地址和子网掩码计算广播地址

看TCP/IP详解 卷1这部大作的时候,看到里面计算广播地址的方法,就在自己的机器 上测试了一下,结果遇到了一个小困难:我的机器上IP地址和广播地址不在一个网段:

广播地址就是把IP地址中主机号的那几位设置为1,可是这里看起来确实都设置为1了(广播地址的最后一段为255),为什么广播地址的前一段是7,IP地址却是5?

解决问题的关键在子网掩码上:

从IP地址的格式来看,我的IP地址属于A类,由于IP地址总共32位,A类地址中第0位是0,第1~7位是网络号(固定格式),后24位是主机号,而子网掩码是255.255.252.0,二进制表示为11111111 11111111 11111100 00000000,子网掩码中值为1的bit留给了网络号和子网号,值为0的bit留给了主机号,可以看出我的子网号是从第8~21位,所以第22~31为是留个我的主机号的。我的IP地址是10.200.5.222,对照子网掩码,前16位是网络号和子网号的一部分,IP地址第16~23位设置的值是5,即00000101,这里第21位的1是属于子网号的位,第25位的1是属于主机号的位。看到这里就比较清晰了,我的主机所在的网络的网络号和子网号是由IP地址的第0~21位表示的,即10.200.4,将IP地址后10位表示主机号的位全部置1,得到的广播地址就是10.200.7.255

我的系统是Ubuntu14.04

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值