如何确定我的计算机正在使用哪个网络适配器?
Posted
技术标签:
【中文标题】如何确定我的计算机正在使用哪个网络适配器?【英文标题】:How do I determine which network adapter my computer is using? 【发布时间】:2017-12-22 17:52:24 【问题描述】:我正在使用 Pcat.Net。如何确定我的计算机使用 C#、.Net、Pcat.net 的网络适配器? GetMacAddress() 扩展方法只返回网络适配器的mac地址,LivePacketDevice.AllLocalMachine 也不返回可以识别网络适配器是否被我的计算机使用的信息。
【问题讨论】:
【参考方案1】:您可以尝试使用 NetworkInterface.GetAllNetworkInterfaces 方法。您可以从以下链接获取更多详细信息:
https://msdn.microsoft.com/en-us/library/system.net.networkinformation.networkinterface.getallnetworkinterfaces(v=vs.110).aspx
【讨论】:
很高兴为您提供帮助:) 感谢@Aman sahni,我使用了 networkInterfaces.Where(counter=> counter.OperationalStatus == OperationalStatus.Up && (counter.NetworkInterfaceType != NetworkInterfaceType.Loopback || counter.NetworkInterfaceType != NetworkInterfaceType.Tunnel ))。第一的()。不确定是否有更好的方法来找出我的计算机正在使用的网络适配器。【参考方案2】:我使用以下代码来确定我的计算机是否已连接到互联网。
var networkInterfaces = NetworkInterface.GetAllNetworkInterfaces();
var connectedNetworkInterfaces = networkInterfaces.Where(
counter=> counter.OperationalStatus == OperationalStatus.Up &&
(counter.NetworkInterfaceType != NetworkInterfaceType.Loopback || counter.NetworkInterfaceType != NetworkInterfaceType.Tunnel));
if(connectedNetworkInterfaces.Count() <1)
throw new Exception("The computer does not seem to be connected to the internet.");
var connectedNetworkInterface = connectedNetworkInterfaces.First();
【讨论】:
以上是关于如何确定我的计算机正在使用哪个网络适配器?的主要内容,如果未能解决你的问题,请参考以下文章