Cisco ACL 配置中的异常通配符掩码

网络工程 思科 ACL
2021-07-12 21:53:28

我从以前的管理员那里继承了我管理的网络上的一些配置。

在某些 ACL 中,有一些我以前从未见过的非常奇怪的通配符掩码,例如:

10 permit ip any 10.160.1.0 0.31.0.255

我在网上找不到任何声明这种 ACL 有效的地方。有没有人能够为我确认/否认这一点?

提前致谢

1个回答

这是一个有效的通配符掩码。它将匹配任何格式为 10.(160-191).1.(0-255) 的 IP。这是否是有意的,或好的设计,是未知的。

通配符掩码只是查看 IP 时使用的“do-we-care”位掩码——0 表示“do-care”,1 表示“don't-care”。

在这种情况下,0.31.0.255 转换为:

00000000 00011111 00000000 1111111

因此 ACL (10.160.1.0) 中列出的 IP 将具有二进制值

00001010 10100000 00000001 00000000

测试 IP (10.190.1.200):

00001010 10111110 00000001 11001000 (10.190.1.200)
00001010 10100000 00000001 00000000 (10.160.1.0)
^^^^^^^^ ^^^      ^^^^^^^^          (0.31.0.255)

插入符号代表通配符掩码,显示哪些位必须匹配。因为他们这样做,10.190.1.200 将匹配此 ACL 语句。