对!你理解得已经很准了!
我来更通俗又详细地讲一遍,让你完全掌握:
✅ 一句话理解:
子网掩码就是用来判断两个IP地址是不是在同一个局域网的工具!
光靠IP地址本身,看不出局域网划分。
比如:
192.168.1.5 和 192.168.2.5
看起来很像,但它们是不是在同一个局域网?
光看IP前几位,很难绝对判断!
所以,引入了子网掩码来辅助判断。
子网掩码是一个一串连续的1和连续的0,常见写法比如:
255.255.255.0
255.255.0.0
255.0.0.0
判断方法:
把自己的IP和目标IP分别跟子网掩码做按位与(AND)运算。
结果如果一样,说明在同一个局域网;
结果如果不一样,说明在不同的网段,需要通过网关发送。
假设:
你的IP是 192.168.1.100
子网掩码是 255.255.255.0
你要访问的目标IP是 192.168.1.150
怎么判断是不是同一个局域网?
步骤:
你的IP 与 子网掩码做AND运算:
192.168.1.100
→ 二进制是 11000000.10101000.00000001.01100100
255.255.255.0
→ 二进制是 11111111.11111111.11111111.00000000
按位与结果是:11000000.10101000.00000001.00000000
→ 192.168.1.0
目标IP 与 子网掩码做AND运算:
192.168.1.150
→ 二进制是 11000000.10101000.00000001.10010110
255.255.255.0
→ 同样
按位与结果是:11000000.10101000.00000001.00000000
→ 192.168.1.0
结果相同:
都是 192.168.1.0
→ 属于同一局域网!
✅ 所以可以直接在局域网内通信,不需要找网关。
子网掩码+IP地址,决定了局域网的范围。通过AND运算比较,能判断目标IP是不是局域网里的设备。
子网掩码 | 局域网特点 | 举例 |
---|---|---|
255.0.0.0 | A类,IP前8位是网络号 | 10.x.x.x内部用 |
255.255.0.0 | B类,IP前16位是网络号 | 172.16.x.x内部用 |
255.255.255.0 | C类,IP前24位是网络号 | 192.168.x.x内部用 |