在Linux中,我可以使用“ ip route”命令确定活动的Eth适配器:
vasyl@retail-z3-1:~$ ip route get 8.8.8.8
8.8.8.8 via 10.186.0.1 dev ens4 src 1.1.1.1
是否有任何方法可以确定PS中用于Internet连接的适配器名称(及其MAC)?也许是get-netadapter或类似的东西。
PS现在,我正在使用以下代码从已知适配器中提取MAC地址:
$CurrMac = get-netadapter | Where {$_.name -Match "Ethernet 2"}
$CurrMacaddr = $CurrMac.MacAddress.Replace("-", "")
并且需要自动确定Internet适配器。
UPD1假设我有一台带有2个或更多Eth适配器的主机。一种用于Internet,其余-用于内部网络或不活动。
答案 0 :(得分:0)
类似?
$adapters = Get-NetAdapter
foreach ($adapter in $adapters){
if($adapter.Status -eq "Up" -and $adapter.Name.Contains("Ethernet")){
Write-Host $adapter.MacAddress
}
}
但是您仍然可以获得更多的MAC地址..
或使用Get-NetRoute -DestinationPrefix '0.0.0.0/0' | Get-NetAdapter
然后
$activeMAC= Get-NetRoute -DestinationPrefix '0.0.0.0/0' | Get-NetAdapter
Write-Host $activeMAC.MacAddress
那应该只返回1个MAC