Kei*_*ill 12
如果您使用的是PowerShell v3,则可以使用Get-NetIPConfiguration例如:
Get-NetIPConfiguration | Foreach IPv4DefaultGateway
我认为这将是跨平台的:
 Get-NetRoute |
    where {$_.DestinationPrefix -eq '0.0.0.0/0'} |
    select { $_.NextHop }
您需要知道使用了多个网关中的哪一个?如果是这样.根据我的记忆,当多个网关可用时,使用具有最低度量的网关(基于链路速度的"成本").要获得此功能,请运行以下命令:
Get-WmiObject -Class Win32_IP4RouteTable |
  where { $_.destination -eq '0.0.0.0' -and $_.mask -eq '0.0.0.0'} |
  Sort-Object metric1 | select nexthop, metric1, interfaceindex
如果有多个默认网关具有相同的成本,我认为它决定使用网络适配器的绑定顺序.我知道的唯一方法就是使用GUI和注册表.要包含绑定顺序,您可以保存脚本的输出,从Win32_networkadapterconfiguration获取settingsid(使用interfaceindex标识),并读取注册表项HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Tcpip\Linkage\Bind.此键列出了它看起来的绑定顺序,您从win32_networkadapterconfiguration获取的settingsid是它们识别设备的GUID.然后使用Bind reg.key中的顺序对网关进行相同的度量排序,您就得到了答案.
我发现它如下列出了所有活动的网关,如果我错了,请纠正我
(Get-wmiObject Win32_networkAdapterConfiguration | ?{$_.IPEnabled}).DefaultIPGateway
| 归档时间: | 
 | 
| 查看次数: | 30104 次 | 
| 最近记录: |