如何通过子网掩码轻松识别网络地址和主机地址?
- 内容介绍
- 文章标签
- 相关推荐
你是否常遇到这些网络困扰?
🔴 IP 地址明明正确,却无法与同一局域网的设备通信。
🔴 默认网关不在同一个网段,导致网络访问“一片空白”。
🔴 手动计算网络地址和主机地址时总是觉得步骤繁琐、容易出错。其实,
如果你对以上情况感到头疼。那么掌握子网掩码的使用技巧,就是处理问题的关键。
子网掩码是一个 32 位的二进制数字,由连续的 1和连续的 0组成。常见的子网掩码示例:
-
255.255.255.0→11111111.11111111.11111111.00000000 -
255.255.0.0→11111111.11111111.00000000.00000000 -
255.0.0.0→11111111.00000000.00000000.00000000
作用:
- 划分网络地址和主机地址。
- 帮助路由器判断数据包应该投递到哪个子网。
- 防止 IP 冲突,提高网络管理效率。
一步步教你用子网掩码识别网络地址和主机地址
步骤 1:把 IP 地址和子网掩码转成二进制
以 192.168.1/100 (.100) 和子网掩码 255.255.255.0 为例:
| 八位组 | ||||
|---|---|---|---|---|
| ID | 十进制 → 二进制 | |||
| IP 地址 | 192 → 11000000 168 → 10101000 1 → 00000001 100 → 01100100 | |||
| 子网掩码 | 255 → 11111111 255 → 11111111 255 → 11111111 0 → 00000000 | |||
步骤 2:对每个八位组执行“与”运算
11000000 & 11111111 = 11000000 10101000 & 11111111 = 10101000 00000001 & 11111111 = 00000001 01100100 & 00000000 = 00000000
步骤 3:把结果再转回十进制。得到网络地址
网络地址 = 192 . 168 . 1 . 0
步骤 4:获取主机地址
a) 把子网掩码取反(即把所有1→0,0→1),得到“反向掩码”。b) 用原始 IP 与反向掩码进行 AND 运算,即可得到主机部分。
从反向掩码来看,0 . 0 . 0 . 255 IP 地址 : 192 .168 .1 .100 --------------------------------- 主机地址 : 0 . 0 . 0 .100 → **100**
说到案例演示,同一网段 vs 不同网段
a) 正常通信——在同一子网内
ID: IP = 192.168.1.100/24 。默认网关 = 192.168.1.1 .
- - 将两者都转换为二进制后做 AND 运算,得到相同的网络地址.
- - 所以设备可以直接与默认网关通信。
b) 通信失败——默认网关不在同一子网
- - 用相同方法计算后IP 的网络地址是。而默认网关的网络地址是.
- - 两个网络地址不同 ⇒ 属于不同子网 ⇒ 无法直接通信,需要路由器或更改子网掩码。
- - 常见错误:“默认网关不在由 IP 地址和子网掩码定义的同一网络段上”。从解决办法来看,确认IP、子 网 掩 碼、網關三者屬於同一網段; 或調整其中任意一項使其匹配。
实用方法的观点是,快速判断是否在同一子网上
-
#先记住常用子 网 掩 碼对应的十进制前缀:
- /8 → 255.0.0.{}
- /16 → 255.255.{} > ...
.255 / 24 = 255.255.255.0 )。 - #只比较“有效位”: 把 IP 和默认 网关分别与相同的子 网 掩 碼做 AND 运算。只要结果相等,就说明它们处于同一个网络。
- PING 一下你的默认网关。如果返回 “Destination host unreachable”,先检查「IP 与 子 网 掩 碼」是否产生相同的网络地址。其实,
-
#尝试修改本机 IP 为
x.x.x.y/24。并把默认 GW: `10.10.10.1`。观察是否能连通, - #使用下面这段 Python 脚本。一键输出「Network ID」与「Host ID」:
- #若仍有疑问,请留言或搜索 “subnet calculator”。市面上有大量免费工具能帮你省时省力。
为什么每个管理员都离不开它?
- **唯一标识**:每台设备都有唯一的 IP;而子 网 掩 碼把这个大空间划分成可管理的小块。 - **故障定位**:网络/主机部分,你可以立即判断“是不是因为不在同一段导致连不上”。- **安全隔离**:不同业务程序可以放在不同子网上。互相隔离,减少风险,- ** 从性**来看,规划好子 网 掩 碼。可让整个公司从几百台设备平滑 到几万台。
动手练习一下!
{% raw %}
import ipaddress
ip = ipaddress.IPv4Interface
print
print - int)
{% endraw %}
掌握了上述概念与操作。你就能轻松辨认任何 IP 所属的网络与主机部分,再也不会因为“找不到正确的默认路由”而抓狂了!祝你玩转局域网 🎉,
你是否常遇到这些网络困扰?
🔴 IP 地址明明正确,却无法与同一局域网的设备通信。
🔴 默认网关不在同一个网段,导致网络访问“一片空白”。
🔴 手动计算网络地址和主机地址时总是觉得步骤繁琐、容易出错。其实,
如果你对以上情况感到头疼。那么掌握子网掩码的使用技巧,就是处理问题的关键。
子网掩码是一个 32 位的二进制数字,由连续的 1和连续的 0组成。常见的子网掩码示例:
-
255.255.255.0→11111111.11111111.11111111.00000000 -
255.255.0.0→11111111.11111111.00000000.00000000 -
255.0.0.0→11111111.00000000.00000000.00000000
作用:
- 划分网络地址和主机地址。
- 帮助路由器判断数据包应该投递到哪个子网。
- 防止 IP 冲突,提高网络管理效率。
一步步教你用子网掩码识别网络地址和主机地址
步骤 1:把 IP 地址和子网掩码转成二进制
以 192.168.1/100 (.100) 和子网掩码 255.255.255.0 为例:
| 八位组 | ||||
|---|---|---|---|---|
| ID | 十进制 → 二进制 | |||
| IP 地址 | 192 → 11000000 168 → 10101000 1 → 00000001 100 → 01100100 | |||
| 子网掩码 | 255 → 11111111 255 → 11111111 255 → 11111111 0 → 00000000 | |||
步骤 2:对每个八位组执行“与”运算
11000000 & 11111111 = 11000000 10101000 & 11111111 = 10101000 00000001 & 11111111 = 00000001 01100100 & 00000000 = 00000000
步骤 3:把结果再转回十进制。得到网络地址
网络地址 = 192 . 168 . 1 . 0
步骤 4:获取主机地址
a) 把子网掩码取反(即把所有1→0,0→1),得到“反向掩码”。b) 用原始 IP 与反向掩码进行 AND 运算,即可得到主机部分。
从反向掩码来看,0 . 0 . 0 . 255 IP 地址 : 192 .168 .1 .100 --------------------------------- 主机地址 : 0 . 0 . 0 .100 → **100**
说到案例演示,同一网段 vs 不同网段
a) 正常通信——在同一子网内
ID: IP = 192.168.1.100/24 。默认网关 = 192.168.1.1 .
- - 将两者都转换为二进制后做 AND 运算,得到相同的网络地址.
- - 所以设备可以直接与默认网关通信。
b) 通信失败——默认网关不在同一子网
- - 用相同方法计算后IP 的网络地址是。而默认网关的网络地址是.
- - 两个网络地址不同 ⇒ 属于不同子网 ⇒ 无法直接通信,需要路由器或更改子网掩码。
- - 常见错误:“默认网关不在由 IP 地址和子网掩码定义的同一网络段上”。从解决办法来看,确认IP、子 网 掩 碼、網關三者屬於同一網段; 或調整其中任意一項使其匹配。
实用方法的观点是,快速判断是否在同一子网上
-
#先记住常用子 网 掩 碼对应的十进制前缀:
- /8 → 255.0.0.{}
- /16 → 255.255.{} > ...
.255 / 24 = 255.255.255.0 )。 - #只比较“有效位”: 把 IP 和默认 网关分别与相同的子 网 掩 碼做 AND 运算。只要结果相等,就说明它们处于同一个网络。
- PING 一下你的默认网关。如果返回 “Destination host unreachable”,先检查「IP 与 子 网 掩 碼」是否产生相同的网络地址。其实,
-
#尝试修改本机 IP 为
x.x.x.y/24。并把默认 GW: `10.10.10.1`。观察是否能连通, - #使用下面这段 Python 脚本。一键输出「Network ID」与「Host ID」:
- #若仍有疑问,请留言或搜索 “subnet calculator”。市面上有大量免费工具能帮你省时省力。
为什么每个管理员都离不开它?
- **唯一标识**:每台设备都有唯一的 IP;而子 网 掩 碼把这个大空间划分成可管理的小块。 - **故障定位**:网络/主机部分,你可以立即判断“是不是因为不在同一段导致连不上”。- **安全隔离**:不同业务程序可以放在不同子网上。互相隔离,减少风险,- ** 从性**来看,规划好子 网 掩 碼。可让整个公司从几百台设备平滑 到几万台。
动手练习一下!
{% raw %}
import ipaddress
ip = ipaddress.IPv4Interface
print
print - int)
{% endraw %}
掌握了上述概念与操作。你就能轻松辨认任何 IP 所属的网络与主机部分,再也不会因为“找不到正确的默认路由”而抓狂了!祝你玩转局域网 🎉,

