在 Mac OS X 上禁用所选子网的 CISCO VPN 客户端路由

在 Mac OS X 上禁用所选子网的 CISCO VPN 客户端路由

我使用的是 Mac 笔记本电脑,当我连接到 CISCO VPN 时,所有流量都通过隧道路由。但是,我需要运行虚拟机(VirtualBox,Ubuntu 作为客户机)来提供某些服务。虚拟机通过仅主机网络 (192.168.56.0/24) 连接到主机。当 VPN 连接时,即使到此地址范围的流量也会发送到 VPN,因此我无法再连接到虚拟机。

我尝试过使用 route 命令。当我尝试

route change -net 192.168.56.0/24 192.168.56.1

设置路线,sendto: Permission denied当我尝试pingVM 地址时我得到了该信息。

什么是正确的路由设置,以便我可以连接到虚拟机(通过vboxnet1接口)同时让所有其他流量通过 VPN?

答案1

最后我找到了“sendto:权限被拒绝”错误的原因。

路由表已正确添加。问题出在 Cisco AnyConnect VPN 客户端会通过修改主机上的防火墙 (ipfw) 规则来自动阻止任何其他流量,添加一行如下

01200  667 136583 deny ip from any to any

删除此规则

sudo ipfw delete 01200

会做。

解决方案得益于http://www.petefreitag.com/item/753.cfm

答案2

尝试使用 sudo 重新运行该命令。由于您正在系统级别修改路由表,因此您需要使用管理员/root 权限来执行该操作。

此外,Cisco VPN 客户端会创建一个虚拟网络设备,所有流量都会通过该设备路由,因此您需要在该接口网络和 VM 之间添加路由。抱歉,我不知道完整的命令。

答案3

尝试这个

sudo /sbin/route add -net 192.168.56 -interface 你的接口名称

您可以通过 ifconfig 获得 Interface_name,然后选择行中第一个出现的名称(例如 en1)。您可以使用虚拟框接口。

高血压

相关内容