很多人配置路由器或者排查网络问题时,都会听到“网络号”“主机号”这些词。简单来说,一个IP地址不是一串随便写的数字,它其实分成两部分:前半部分是网络号,用来标明你处在哪个网络里;后半部分就是主机号,用来标明这个网络里的具体某一台设备。今天我们就把主机号这件事彻底讲清楚。
主机号到底指什么
打个比方,IP地址就像现实中的收货地址。“XX市XX区”相当于网络号,负责把包裹送到正确的城市和小区;而“几栋几单元几零几”就是主机号,负责把包裹送到你家门口。同一个小区里的所有住户,小区地址都一样,但门牌号各不相同。同理,同一个局域网里的所有设备,网络号相同,主机号必须不一样,不然数据就不知道该发给谁了。
比如192.168.1.10和192.168.1.20这两个地址,如果子网掩码是255.255.255.0,那它们前面的192.168.1就是网络号,后面的10和20就是各自的主机号。
子网掩码决定了主机号从哪里开始
那么问题来了,怎么知道IP地址里哪一段是网络号、哪一段是主机号?答案就是子网掩码。子网掩码的作用就像一把刀,把IP地址一刀切成两段。
掩码中二进制为1的部分对应网络号,为0的部分对应主机号。常见的255.255.255.0换算成二进制就是24个1加8个0,意味着前24位是网络号,最后8位是主机号。这种写法也常简写成“/24”。如果掩码是255.255.0.0,也就是/16,那后16位就都是主机号了。
主机号的位数决定了能带多少台设备
主机号占的位数越多,这个网络里能容纳的设备就越多。计算公式是2的主机号位数次方,再减去2。
为什么要减2?因为主机号有两种取值是不能分配给设备的:主机号全部为0的地址代表这个网络本身,叫网络地址;主机号全部为1的地址是广播地址,发给它的消息网络里所有设备都会收到。这两个地址被系统保留,普通设备不能用。
举个例子,/24的网络主机号有8位,2的8次方是256,减去2就是254,所以这样一个网段最多能接254台设备。再比如/26的网络,主机号只剩6位,2的6次方是64,减去2就是62台可用地址。
怎么算出某台设备的主机号
实际操作中,把IP地址和子网掩码都换算成二进制,然后做一个“与运算”:两边都是1结果才是1,否则是0。运算结果就是网络地址,而IP地址中对应掩码为0的那些位,就是这台设备的主机号。
以192.168.10.35配合255.255.255.0为例,与运算后得到192.168.10.0,这就是网络地址,而最后的35就是主机号。现在很多在线工具可以直接算,但在考试或者面试里,手动与运算是基本功,建议自己多练几遍。
弄懂主机号有什么实际用处
首先是划分子网。公司里不同部门如果不想互相干扰,可以通过调整掩码长度,把一个大网络切成多个小网络,每个小网络有自己独立的主机号范围,既安全又好管理。
其次是排查故障。两台电脑明明都插了网线却 ping 不通,很可能就是主机号配重复了,或者两台设备的网络号不在同一个段里。会算主机号,一眼就能看出问题出在哪。
最后是地址规划。家里有几十个智能设备要联网,选 /24 还是更大的网段,都要根据主机号能提供的可用地址数量来决定,避免到时候地址不够用。
总结
主机号就是IP地址中用来唯一标识网络内某台设备的部分,它和网络号共同构成完整的IP地址,两者的分界线由子网掩码决定。记住三个要点:掩码为0的部分是主机号;主机号全0是网络地址、全1是广播地址;可用主机数量等于2的主机位数次方减2。掌握这些,不管是日常组网还是应对网络工程师考试,都够用了。
