这是route print
输出:
IPv4 Route Table
===========================================================================
Active Routes:
Network Destination Netmask Gateway Interface Metric
0.0.0.0 0.0.0.0 192.168.1.1 192.168.1.50 55
0.0.0.0 128.0.0.0 192.168.10.252 192.168.10.96 257
128.0.0.0 128.0.0.0 192.168.10.252 192.168.10.96 257
1.1.1.1 255.255.255.0 192.168.1.1 192.168.1.50 56
185.1.1.1.1 255.255.255.255 192.168.1.1 192.168.1.50 311
192.168.10.0 255.255.255.0 On-link 192.168.10.96 257
192.168.10.96 255.255.255.255 On-link 192.168.10.96 257
192.168.10.255 255.255.255.255 On-link 192.168.10.96 257
===========================================================================
Persistent Routes:
Network Address Netmask Gateway Address Metric
1.1.1.1 255.255.255.0 192.168.1.1 1
===========================================================================
如您所见,1.1.1.1/24
被添加到路由表中。
我想从中删除一个子网(如 /32 或更大),但出现错误:
route delete -p 1.1.1.10/32 192.168.1.1
route delete -p 1.1.1.0/25 192.168.1.1
错误:
The route deletion failed: Element not found.
我知道我可以删除整个 /24 子网,然后使用 Python 脚本生成所需的子网,但我的问题是是否可以在路由表中删除较小的子网。
Windows 10,PowerShell 版本为 5.1 (18200)。
您可能希望为该子网创建一条新路由,而不是从现有路由中删除子网(您不能这样做;您只能删除存在的路由)。路由从根本上是分层的,这是有道理的,因为最低优先级路由通常用于 0.0.0.0/0(所有 IP 地址)并被描述为“默认”路由。
我相信更具体的(更少数量的 IP 地址)路由比更一般的路由更受欢迎,所以你可能只是这样做,从其他包含路由之一复制接口/网关为新路由。无论如何,该示例使用比任何其他路由更小的度量(更高的优先级),因此应该首选它。
一个例子: route add /p 1.1.1.0 mask 255.255.255.128 192.168.10.252 metric 54
不请自来的建议:不要创建小于 /30 的网络。
祝你好运。