这比我想象的要难得多。 我想要删除的路线是“!” 被拒绝的路线,但我似乎无法制定正确的“路线删除”命令将其closures。
这是路由表…
Destination Gateway Genmask Flags Metric Ref Use Iface 67.40.227.206 * 255.255.255.255 UH 0 0 0 ppp0 192.168.46.79 * 255.255.255.255 UH 0 0 0 ipsec0 192.168.46.79 - 255.255.255.255 !H 2 - 0 - 192.168.1.0 * 255.255.255.0 U 0 0 0 eth0 10.1.0.0 * 255.255.0.0 U 0 0 0 ipsec0 10.1.0.0 - 255.255.0.0 ! 2 - 0 - default * 0.0.0.0 U 3 0 0 ppp0 default * 0.0.0.0 U 4 0 0 ppp0
我有两个条目192.168.46.79和10.1.0.0。 这些是由我使用的基于Linux的小型路由器自动生成的。 我可以从shell本身ping IPSEC隧道,但是来自局域网的stream量需要第二条路由(被拒绝的“!”或“!H”路由),原因我简直不明白。
用你得到的route -n
命令
Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 0.0.0.0 192.168.178.1 0.0.0.0 UG 0 0 0 eth0 0.0.0.0 160.98.123.1 0.0.0.0 UG 600 0 0 wlan0
sudo route del -net 0.0.0.0 gw 192.168.178.1 netmask 0.0.0.0 dev eth0
你会从上面分别得到所有的参数
与!
的路线的types!
国旗要么是无法达到要么禁止。 route
,作为networking工具的一个古老的工具,不区分这两者。 使用iproute2。
net-tools删除这些路由的方法是使用route del
。 但是,net-tools没有办法区分被拒绝的路由和另一个(因为dev参数是可选的,尽pipe不指定设备可能会删除不可达路由)。
iproute2可以让你这样做:
ip route del unreachable 10.1.0.0/24 ip route del unreachable 192.168.46.79/32
它可能不可达,但禁止。 使用没有参数的ip route
来确定哪个。
我认为是这样的: route del -net 10.1.0.0 netmask 255.255.0.0 metric 2
我不是100%确定的。 但是,我认为你有其他的愚蠢行为,因为你有2个默认路由。