最近遇到了一个子网掩码变化导致服务器与客户端通信不上的问题,问题原因很Low,解决方法也很简单,但是需要对局域网的基本概念有所理解。现将这个很Low的问题记录于下,希望广大网友再遇到这种问题时不要浪费时间。
首先理解几个概念:
1、局域网的网络号、主机号、子网掩码、广播地址
首先要明白网络、主机号、子网掩码、广播地址都是4字节的IP地址,对应32位的二进制。
局域网内每个网卡都有一个专属的IP地址,这就是每个网卡的主机号,整个局域网有一个唯一的网络号。而子网掩码的作用就是结合主机号计算出网络号。
比如一电脑网卡IP为172.16.4.101,子网掩码为255.255.252.0。将IP、子网掩码转化为二进制(4字节,32位)然后按位与,得到的结果再转化为十进制,结果就是网络号,IP地址剩下的部分就是主机号。
IP:192.168.4.101:转化为二进制:
1 | 0 | 1 | 0 | 1 | 1 | 0 | 0 | . | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | . |