在历史上,我主要使用0.0.0.0/0
来“匹配每个IP地址”。最近,我看到了一个0.0.0.0/1
子网过滤器。
0.0.0.0/0
和0.0.0.0/1
有什么区别,0.0.0.0/1
的实际用途是什么?
发布于 2022-05-05 16:06:39
0.0.0.0/0
匹配每个IP地址,而0.0.0.0/1
只匹配其中的一半(0.0.0.0-127.255.255.255
),并要求128.0.0.0/1
作为其对匹配其余的(128.0.0.0-255.255.255.255
)。
在基本路由中,包含IP地址的最小可用子网优先。这个规则来自RFC 4632,5.1。这是典型的重叠网络,例如,192.168.1.0/24
是192.168.0.0/16
的一部分,它和任何IP地址一样是0.0.0.0/0
的一部分。
因此,通过将0.0.0.0/0
分割成较小的块,可以约束接口优先于具有默认路由0.0.0.0/0
的任何其他接口,而无需使用度量值。对于不希望数据绕过隧道的VPN,这是一种常见的技术。同样的逻辑也是当虚拟专用网启动时仍然可以使用本地子网(例如/24
)的原因--如果没有使用其他方法来执行所有的操作,就会进行隧道化。
同样,整个IPv4地址空间可以被划分成更小的子网,例如四个块:
0.0.0.0/2
(0.0.0.0-63.255.255.255
)64.0.0.0/2
(64.0.0.0-127.255.255.255
)128.0.0.0/2
(128.0.0.0-191.255.255.255
)192.0.0.0/2
(192.0.0.0-255.255.255.255
)或0.0.0.0/3
、32.0.0.0/3
、64.0.0.0/3
、96.0.0.0/3
、128.0.0.0/3
、160.0.0.0/3
、192.0.0.0/3
和224.0.0.0/3
等八种。
发布于 2022-05-06 18:13:32
0.0.0.0/0和0.0.0.0/1之间的差别是什么?
0.0.0.0/0匹配所有IPv4地址。
0.0.0.0/1匹配IP范围为0.0.0.0至127.255.255.255
IP路由使用“最长前缀匹配”规则,因此,如果路由表中有0.0.0.0/0和0.0.0.0/1的路由,并且两者都匹配目的地,那么0.0.0/1的路由将是首选的。
0.0.0.0/1的实际用途是什么?
Openvpn使用它作为一个技巧,在不修改或删除现有路由的情况下覆盖默认路由。如果其他VPN软件也这么做,我也不会感到惊讶,但我还没有看到它。
删除VPN连接时退出的默认路由,并在VPN断开时重新添加该路由,以便与其他网络控制或管理软件进行竞争。如果VPN客户端崩溃,也可能使系统无法进行网络访问。
通过使用较低的度量来覆盖路由是可能的,但是如果现有路由已经具有最低的可能度量,则这是无效的。
因此openvpn的“重定向网关”功能有一个名为"def1“的选项。启用此选项后,它将为0.0.0.0/1和128.0.0.0/1创建路由,而不是为0.0.0.0/0创建单个路由。由于“最长前缀匹配”规则,这些路由将优于现有路由0.0.0.0/0,因此不需要删除现有的默认路由。
发布于 2022-05-05 15:59:22
字面意思是:这只是两个不同的网络,用CIDR表示法表示.。
0.0.0.0/1
的实际使用:将IPv4空间拆分为第一个比特并不会产生特别有意义的子网,即历史教益之外的子网。
只是碰巧是最小的分裂。因此,拼写两半是表示"all of IPv4“的最短方法,其中0/0
不是有效的输入。脚本不允许我配置未为其设计的网络拓扑,因此我使用0/1
作为解决方案(在路由上下文中,前缀长度决定首选项)。
除了打字之外,这是我唯一遇到过的情况。
https://serverfault.com/questions/1100250
复制相似问题