通过MCP连接 →

输入计算

数学公式

广告

结果

通配符掩码(反向掩码)
0.0.0.255
from subnet mask 255.255.255.0
子网掩码 255.255.255.0
通配符掩码 0.0.0.255
第 1 段通配符值 0
第 2 段通配符值 0
第 3 段通配符值 0
第 4 段通配符值 255
匹配的地址数 256

什么是通配符掩码?

通配符掩码(也叫反向掩码)是子网掩码按位取反的结果。在子网掩码中,1 表示“这一位必须匹配”;而在通配符掩码中,恰恰相反,用 0 表示“这一位必须匹配”,用 1 表示“这一位无所谓(任意)”。通配符掩码最常见于思科(Cisco)IOS 的访问控制列表(ACL)以及 OSPF 的 network 语句中——这些场景下设备要求填写的是反向掩码,而不是普通的子网掩码。这是思科设备的特有写法,与一般理解的子网掩码方向正好相反,配置时务必区分清楚。

子网掩码二进制位与取反后的通配符掩码位的对比
通配符掩码是子网掩码的逐位取反。

如何使用本计算器

先选择一种输入方式。如果填写 CIDR 前缀长度(例如 24 代表一个 /24 网络),计算器会先推算出对应的子网掩码;或者选择“子网掩码”,直接输入四个八位组的数值(如 255.255.255.0)。随后工具会返回对应的通配符掩码,并按每个八位组拆解显示结果,同时给出该掩码所匹配的地址数量。

公式详解

换算是对四个八位组分别独立完成的:

$$\text{通配符八位组} = 255 - \text{子网掩码八位组}$$

原理在于:每个八位组都是一个 8 位二进制数,其最大值为 255(二进制 \(11111111\))。用 255 去减,相当于把每一位都翻转一遍,正好得到精确的按位取反结果。

Advertisement
显示子网掩码八位组与其通配符八位组相加等于 255 的示意图
每个通配符八位组等于 255 减去对应的子网掩码八位组。

实例演示

以子网掩码 255.255.255.0(即一个 /24 网络)为例,逐个八位组套用公式:

$$255 - 255 = 0,\quad 255 - 255 = 0,\quad 255 - 255 = 0,\quad 255 - 0 = 255.$$

得到的通配符掩码为 0.0.0.255。它共匹配 256 个地址(\(1 \times 1 \times 1 \times 256\)),正好对应一个 /24 网段的大小。

常见问题

通配符掩码和子网掩码是一回事吗?不是。两者互为反码。子网掩码 255.255.255.0 对应的通配符掩码就是 0.0.0.255。

为什么 OSPF 要用通配符掩码?思科的 OSPF 配置语法沿用了 ACL 一贯采用的反向掩码格式,因此声明网络时填写的是通配符掩码,而非子网掩码。

通配符掩码可以是不连续的吗?可以。与子网掩码不同,ACL 中的通配符掩码允许使用不连续的位来匹配特定模式,不过本计算器默认按标准的连续掩码进行计算。

最后更新: