我一直想知道通配符面具的用途是什么。当我在大学里了解它们时,我想知道它的用途是什么,我们看到您可以通过例如均匀IP和不均匀IP来分隔子网。通配符掩码和普通子网掩码的实际用途是什么?

评论

因此,基本上,通配符掩码会绕过子网掩码的使用,因为由于反向二进制,它更易于二进制计算。

那里有些mist漏。但是用二进制来说,使用它比使用标准子网掩码要容易得多?

#1 楼

据我了解,问题是两种不同面罩的原因是什么,而不是面罩之间的区别是什么。这两个问题有些重叠,但是归结为二进制数学(随着YLearn的出现)。

首先,一个网络掩码:

IP:   1100 0000 . 1010 1000 . 1111 1000 . 0110 0100 = 192.168.248.100
Mask: 1111 1111 . 1111 1111 . 1111 1111 . 1111 1000 = 255.255.255.248
AND:  1100 0000 . 1010 1000 . 1111 1000 . 0110 0000 = 192.168.248.96


使用网络掩码对IP地址进行AND操作将导致网络192.168.248.96/29

接下来,通配符:

NET:  1100 0000 . 1010 1000 . 1111 1000 . 0110 0000 = 192.168.248.96
WC:   0000 0000 . 0000 0000 . 0000 0000 . 0000 0111 = 0.0.0.7
OR:   1100 0000 . 1010 1000 . 1111 1000 . 0110 0111 = 192.168.248.103


执行OR操作在网络上生成的IP范围(192.168.248.96-103)可能在ACL或OSPF网络语句中被允许或阻止(请记住OSPF仅查找属于指定范围内的接口-即它不会匹配IP和网络掩码,仅匹配IP)。检查IP是否在以下范围内非常容易:


IP OR WC == NET OR WC


路由器,因为网络掩码无法轻松地为您提供此信息(无需其他操作)。

#2 楼

对于通配符掩码,您可能会遇到一些奇特的情况,而子网掩码很难做到这一点-例如,您可以在通配符掩码中轻松完成1.2。*。4,而在子网掩码中很难做到。

基本上,通配符掩码将每一位拆分为“匹配”或“无关”设置。如果您有255.255.255.33。例如,这将转换为“ 11111111.11111111.11111111.00100001”。如果原始IP为1.1.1.200,则转换为00000001.00000001.00000001.10001000。使用给出的示例,这开始使我的大脑因进行二进制数学运算而受伤,只有最后一个八位位组的第3位和第8位才必须与原始IP匹配才能通过(以及其他3个八位位组)。

评论


的确,这就是我想知道的实际用途是什么

–卢卡斯·考夫曼(Lucas Kauffman)
13年5月21日在21:19

255.255.0.255-如果您问我,这很简单

–奥利普
13年5月21日在22:26

这不是有效的子网掩码。

–约翰·詹森(John Jensen)
13年5月21日在22:30

这是完全有效的,只是出于在基于CIDR的环境中配置地址的目的而无效。在不关心它是最长前缀兼容掩码的防火墙或其他系统上,它是完全有效的。 iptables或访问列表就是一个很好的例子。计算机不是万能的,在位掩码方面,1.2.x.4与255.255.0.255相同,这是正则表达式和逻辑与之间的区别。

–奥利普
13年5月22日在0:45



不要尝试与我玩语义,“子网掩码”和“通配符掩码”同样是错误的名词。我在声明中没有在任何地方使用“子网掩码”一词。面具是面具,重要的是它的目的。

–奥利普
13年5月22日在1:34

#3 楼

通配符掩码还用于在访问控制列表中指定源/目标子网(或特定地址)。它们还用于指定OSPF将在更多“传统”版本的IOS(尽管有NX-OS和IOS-XR)中使用的协议接口。

编辑:子网掩码的工作是分离网络位中的主机位。子网掩码中的1的数量必须是连续的。

11111111.11111111.00000000.00000000 <-- valid subnet mask (/16)
11111111.11111111.11111000.00000000 <-- valid subnet mask (/21)
11111111.11111111.00111000.00000000 <-- whoops, invalid subnet mask


通配符掩码不受此规则约束(因此,术语“通配符”),因此可以做像亚伦提到的事情,即:

access-list 1 permit 192.168.200.0 0.6.0.8


这将允许:

192.168.200.0
192.172.200.0
192.168.200.8
192.172.200.8


评论


好的,但是为什么常规子网不能解决这个问题?

–卢卡斯·考夫曼(Lucas Kauffman)
13年5月21日在21:53

子网掩码只不过是将主机位与网络位分开而已。它必须是连续的。通配符掩码没有此限制-因此,术语“通配符”。这使它们更适合于更任意的主机或网络规范。

–约翰·詹森(John Jensen)
13年5月21日在21:56

@JohnJensen对“通配符”的漂亮描述。让我更好地记住它:)您应该将其放在原始答案中!

–布尔基
13年5月21日在22:37

我修改了我的答案以包括此内容-不确定您是说我的还是亚伦的。

–约翰·詹森(John Jensen)
13年5月21日在22:44

@JohnJensen我的意思是你的:)(就像你编辑过的一样)

–布尔基
13年5月22日在5:22

#4 楼

从某种程度上来说,它们是一种支持,因为当位是宝贵的,并且以某些方式(二进制与或二进制或)处理数据的工作量减少时。

今天,它们在其他情况下仍然有用,因为亚伦已经提到。