stu*_*eek 22 networking ifconfig netstat macos
举一个具体的例子,OSX 如何选择这些默认条目中的哪一个netstat -nr路由到?
Destination Gateway Flags Refs Use Netif Expire
0/1 10.10.99.100 UGSc 0 0 ppp0
default 192.168.1.1 UGSc 5 0 en0
default 192.168.1.1 UGScI 1 0 en1
default 192.0.2.1 UGScI 157 2 ppp0
Run Code Online (Sandbox Code Playgroud)
据我所知,OSX 在其接口而不是路由表条目上使用指标。但是默认情况下所有这些接口指标都是 0 那么它如何选择呢?上次创建的界面?
我已经看到有些人建议它在网络首选项中的顺序,但在我的情况下,ppp0 接口(来自 SonicWall NetExtender)没有在那里列出。
这个帖子中有一些讨论,但我没有看到答案。
Sam*_*gay 16
任何具有多个相同度量的默认路由的路由表都会进行负载平衡。mac 的情况是它会选择接口列表中的第一个接口。如果要查看和更改列表,请转到“打开网络首选项”,在这里您将看到以太网、机场、通过移动设备或 3g 的 ppp 等网络接口列表。在列表下方,您将看到一个星号带有向下箭头的选项。单击此处并设置“设置服务顺序”。您可以在此处更改特定界面的首选项。
http://www.sustworks.com/site/prod_ipnrx_help/html/AlternateRouteHelp.html
kir*_*gin 13
大多数系统在选择要使用的路由时遵循以下规则:
在 Linux(以及我认为在 Windows 上)上,优先级由metric决定,但正如您正确指出的那样,在 macOS 上并非如此。macOS 不是为单个路由分配指标,而是为接口分配优先级。您可以使用networksetup -listnetworkserviceorder查看此顺序并networksetup -ordernetworkservices更改它。
现在,来自您输出的这条路线让我认为在您的情况下,特异性也发挥了作用:
Destination Gateway Flags Refs Use Netif Expire
0/1 10.10.99.100 UGSc 0 0 ppp0
Run Code Online (Sandbox Code Playgroud)
这条路线覆盖了地址空间的下半部分,因此我希望还能找到:
128.0/1 10.10.99.100 UGSc 0 0 ppp0
Run Code Online (Sandbox Code Playgroud)
在你的路由表中。这是 VPN 软件用来确定其路由优先级的标准技巧default:它添加了两条路由,共同覆盖所有 IP 地址,但每条路由都比默认值更具体,因此它们获胜。
| 归档时间: |
|
| 查看次数: |
28455 次 |
| 最近记录: |