如何删除特定接口上的路由?

mgr*_*zko 18 route mac-osx

当我启动 VPN 连接时,在 utun0 接口上添加了一个新的默认路由:

Destination        Gateway            Flags        Refs      Use   Netif Expire
default            utun0              UCS            21        0   utun0
default            192.168.43.1       UGScI          14        0     en1
Run Code Online (Sandbox Code Playgroud)

我想摆脱 default/utun0 路由。使用带有 -ifscope 修饰符的路由时,出现以下错误:

$ sudo route delete -ifscope utun0 -net 0.0.0.0
route: writing to routing socket: not in table
delete net 0.0.0.0: not in table
Run Code Online (Sandbox Code Playgroud)

我究竟做错了什么?为了删除默认路由,route 命令的正确语法是什么?

小智 7

我知道为时已晚,但我想知道您使用的是哪种 VPN。

我在使用 Cisco Anyconnect VPN 时遇到过这个问题。

没有看到与您相同的错误,但该命令似乎可以执行,但路由表看起来仍然相同。

我相信 Cisco AnyConnect 会以某种方式锁定路由表,使其无法修改。

如果这不是 Cisco AnyConnect,它可能会做类似的事情。我没有找到任何关于它的文档,但这是我从测试中得出的结论。

我发现这似乎也适用于 Windows。

干杯,亚伦


sig*_*ice 6

$ sudo route delete -net 0.0.0.0 -ifp ppp0
delete net 0.0.0.0
Run Code Online (Sandbox Code Playgroud)

这在route(8) 中有记录


jwb*_*ley 1

现在不在Mac前,我想尝试一下;

sudo route del default dev utun0
Run Code Online (Sandbox Code Playgroud)