linux win 通用的获取Mac的方法
经测试下面方法获取Mac跨平台
protected override void OnLoad(EventArgs e) { Response.Write(string.Join("<br/>", GetMacString())); Response.Write("<br/>"); base.OnLoad(e); } public NetworkInterface[] NetCardInfo() { return NetworkInterface.GetAllNetworkInterfaces(); } public string[] GetMacString() { string strMac = ""; NetworkInterface[] interfaces = NetworkInterface.GetAllNetworkInterfaces(); foreach (NetworkInterface ni in interfaces) { if (ni.OperationalStatus == OperationalStatus.Up) { strMac += ni.GetPhysicalAddress().ToString() + "|"; } } return strMac.Split('|'); }
相关文章:
C# C/S程序获取MAC地址三种方法 http://www.cnblogs.com/yzb305070/archive/2011/04/03/2004364.html
附:
/// <summary> /// 获取当前请求的服务器IP,以及相应的MAC地址 /// </summary> /// <returns>[当前请求的服务器IP,MAC地址]</returns> public string[] GetRequestIPMAC() { string[] result = new string[2]; string serverName = Page.Request.ServerVariables["SERVER_NAME"]; string requestServerIP = Page.Request.ServerVariables["LOCAL_ADDR"]; if (serverName == "localhost") { result[0] = "localhost"; } else { result[0] = requestServerIP.ToLower(); ManagementClass mc = new ManagementClass("Win32_NetworkAdapterConfiguration"); ManagementObjectCollection moc = mc.GetInstances(); foreach (ManagementObject mo in moc) { try { if ((bool)mo["IPEnabled"] == true) { string[] IPAddresses = (string[])mo["IPAddress"]; if (IPAddresses.Length > 0) { for (int i = 0; i < IPAddresses.Length; i++) { if (IPAddresses[i] == requestServerIP) { result[1] = mo["MacAddress"].ToString().ToLower(); break; } } } if (!String.IsNullOrEmpty(result[1])) { break; } } } finally { mo.Dispose(); } } } return result; }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· .NET10 - 预览版1新功能体验(一)