我在 Mac 上并尝试通过我的 wifi 连接上的特定网关路由特定地址。
我正在使用:
route add -host 54.81.143.201 192.168.15.1
Run Code Online (Sandbox Code Playgroud)
有时这会起作用,有时则不会。我发现它每次选择的界面都不一样。它需要en0工作
netstat -nr 不工作时的输出:
54.81.143.201 192.168.15.1 UGHS 1 89 en5
Run Code Online (Sandbox Code Playgroud)
这是它起作用的时候:(注意 en0)
54.81.143.201 192.168.15.1 UGHS 0 1 en
Run Code Online (Sandbox Code Playgroud)
我为什么要这样做?因为我们公司有一个 HipChat 不工作的代理。所以我通过开放的 wifi 网络路由 hipchat 流量,同时仍然在我的工作以太网上。
编辑:
我还尝试仅使用界面添加条目
route add -host 54.81.143.201 -interface en0
54.81.143.201 78:31:c1:c7:52:74 UHS 0 2 en0
Run Code Online (Sandbox Code Playgroud)
HipChat 无法连接。
编辑 2:有人要我的整个路由表,今天就在这里。请注意,54.81.143.201 现在绑定到 en3 而不是 en0
Internet:
Destination Gateway Flags Refs Use Netif Expire
default 10.7.90.1 UGSc 31 6 en3
10.7.90/24 link#4 UCS 4 0 en3
10.7.90.1 0:23:ac:3d:db:c2 UHLWIir 16 0 en3 1200
10.7.90.44 40:6c:8f:19:4a:bb UHLWI 0 3 en3 946
10.7.90.63 127.0.0.1 UHS 0 0 lo0
54.81.143.201 192.168.15.1 UGHS 0 0 en3
127 127.0.0.1 UCS 0 0 lo0
127.0.0.1 127.0.0.1 UH 3 209 lo0
169.254 link#4 UCS 1 0 en3
169.254.255.255 0:23:ac:3d:db:c2 UHLSW 0 0 en3
Run Code Online (Sandbox Code Playgroud)
drk*_*log 48
尝试:
route add -host 54.81.143.201 -interface en0
Run Code Online (Sandbox Code Playgroud)
小智 5
正如其他人指出的,这实际上是 3 个问题。
您的无线接口似乎在 en0、en3 和 en5 之间变化。
在我的 MacBook Air 上,en0 始终是无线的;Thunderbolt 到以太网始终为 en3,USB 到以太网始终为 en5。但是,如果您将适配器插入 Mac 上的其他端口,则其 NIC 名称会发生变化。你需要先解决这个问题。确保您的无线设备始终具有相同的名称。否则,当您输入静态路由命令时,如果该位置没有插入网卡en0,则该命令(显然)将失败并显示“地址错误”(物理地址没有链接)。
同样,请确保适配器始终连接到相同的 SSID。网关地址显然必须对子网有效,并且不同的 WiFi 网络将具有不同的子网。这可能会导致另一种类型的错误。
您没有指定无线是否是您唯一的网络连接。鉴于上述情况,我想不是......?这以及 VMware 或 Parallels 带来的虚拟网络可能会导致额外的复杂性。(例如,如果两个连接的网络使用相同的 IP 空间...虚拟机通常会桥接并拥有自己的 IP/路由/链接...)发布网络拓扑会有所帮助。
完成后,尝试sudo route add -host 54.81.143.201 -iface en0或sudo ipfw。如果您不确定适配器的名称,您可以指定其 MAC 地址,如下所示:sudo route add -host 54.81.143.201 -link 14:10:9f:e7:fd:0a
相关: https://discussions.apple.com/thread/5049994 ?searchText=policy%20route
如果重新启动,这种情况可能不会持续存在。您需要单独处理它。
| 归档时间: |
|
| 查看次数: |
165664 次 |
| 最近记录: |