public class getIP
    {
        [DllImport("Iphlpapi.dll")] //操作系统自带
        private static extern int SendARP(Int32 dest, Int32 host, ref Int64 mac, ref Int32 length);
        [DllImport("Ws2_32.dll")]
        private static extern Int32 inet_addr(string ip);

//获取本机的IP
        public string getLocalIP()
        {
            string strHostName = Dns.GetHostName();  //得到本机的主机名
            IPHostEntry ipEntry = Dns.GetHostByName(strHostName); //取得本机IP
            string strAddr = ipEntry.AddressList[0].ToString();
            return (strAddr);
        }
        //获取本机的MAC
        public string getLocalMac()
        {
            string mac = null;
            ManagementObjectSearcher query = new ManagementObjectSearcher("SELECT * FROM Win32_NetworkAdapterConfiguration");
            ManagementObjectCollection queryCollection = query.Get();
            foreach (ManagementObject mo in queryCollection)
            {
                if (mo["IPEnabled"].ToString() == "True")
                    mac = mo["MacAddress"].ToString();
            }
            return (mac);
        }

//获取远程主机IP
        public string[] getRemoteIP(string RemoteHostName)
        {
            IPHostEntry ipEntry = Dns.GetHostByName(RemoteHostName);
            IPAddress[] IpAddr = ipEntry.AddressList;
            string[] strAddr = new string[IpAddr.Length];
            for (int i = 0; i < IpAddr.Length; i++)
            {
                strAddr[i] = IpAddr[i].ToString();
            }
            return (strAddr);
        }
        //获取远程主机MAC
        public string getRemoteMac(string localIP, string remoteIP)
        {
            Int32 ldest = inet_addr(remoteIP); //目的ip
            Int32 lhost = inet_addr(localIP); //本地ip

try
            {
                Int64 macinfo = new Int64();
                Int32 len = 6;
                int res = SendARP(ldest, 0, ref macinfo, ref len);
                return Convert.ToString(macinfo, 16);
            }
            catch (Exception err)
            {
                Console.WriteLine("Error:{0}", err.Message);
            }
            return 0.ToString();
        }
    }
}

转载于:https://www.cnblogs.com/81/archive/2013/04/14/3021103.html

【网上收藏】取得网卡mac相关推荐

  1. android 获取网卡mac_防亚马逊账号关联黑科技--如何修改我们的网卡MAC到底重要不?...

    大家好,我是跨境卫士的刘同学,各位搞跨境电商的大佬们估计都经常为亚马逊账号关联这种问题而苦恼吧,今天给大家带来一片技术分享. 如何修改我们的网卡MAC还有这个东东到底重要不? 啥是网卡mac呢? 网卡 ...

  2. ASP.NET(C#)获取客户端的网卡MAC代码

    ASP.NET(C#)获取客户端的网卡MAC代码 这两天在网上找关于获取客户端网卡的资料,网上差不多都是千篇一律的-试了好多代码,都不行-,昨天整理了一下,把代码发上来,希望对大家有所帮助吧- 1,首 ...

  3. 计算机网卡更改mac地址,Mac电脑网卡MAC地址修改的具体步骤

    现在,很多人开始使用Mac电脑,但是在使用过程中,不少朋友都需要修改网卡MAC地址,但网上大部分教程都是修改windows的MAC地址,而Mac却比较少.今天,小编就为大家带来苹果电脑网卡MAC地址修 ...

  4. 如何查看主机的网卡MAC地址及含义

    1. 为了查看本机的网卡MAC地址,你可以直接在命令行中输入ipconfig /all ,然后回车(Enter)即可 , 但是要记住是英文输入法才可以. 2.了解MAC地址的具体含义: 大家应该都知道 ...

  5. linux内核设置mac地址,Linux下如何修改网卡MAC地址

    Red Hat Linux下如何修改网卡MAC地址 OS版本:Red Hat Enterprise Linux AS4 核心:Kernel 2.6.9-42 网上有很多关于linux下修改MAC地址的 ...

  6. 怎样更改Windows10的网卡MAC地址

    前段时间在进行网络排错的时候,需要修改Windows10系统的网卡MAC地址.在网上搜索了很久,所有的方法都是针对Windows7/8/8.1版本的操作系统,很不幸的,这些方法全都对Windows10 ...

  7. xp怎样修改计算机mac地址,xp操作系统网卡mac地址的修改方法

    xp操作系统网卡mac地址的修改方法 可以在桌面上的"网上邻居"图标上单击右键,选择"属性",在弹出的"网络连接"的对话框中,在" ...

  8. linux 不小心删掉网卡配置文件的mac地址 如何恢复,linux/Centos下查看和修改网卡Mac地址(ifconfig命令)...

    本文转载自http://www.169it.com/article/14360294838474691537.html eth0 Link encap:Ethernet HWaddr 00:e4:56 ...

  9. 多种方法修改网卡MAC物理地址(转载)

    多种方法修改网卡MAC物理地址 作者:李红 如今大家都是ADSL上网,当你查网费时就会发现,每次上网电信都会记录下你的网卡MAC地址,这是因为IP地址是动态的(每次上网都不同),而MAC地址却是不变的 ...

  10. 获取远程网卡MAC地址

    出自: http://blog.joycode.com/liuhuimiao/ 朋友mingal急问我有关获取远程网卡MAC地址的ASP.net实现.我一开始以为是获取本机MAC地址,说了几种方法给他 ...

最新文章

  1. request获取int类型的值_获取通话记录或通讯录的数量为负值
  2. ES6 for...of循环
  3. 推荐:常见算法的python实现(github上25000多star)
  4. win 7 系统ie浏览器升级11版本后,f12功能不可用的问题
  5. Xamarin截取/删除emoji表情bug解决方案
  6. 阿里云 ecs mysql搭建_使用ECS和mysql搭建mysql服务器-阿里云开发者社区
  7. nginx日志打印header_小水敲黑板--Nginx+Keepalived实现负载均衡和高可用
  8. 双点双向路由引入/路由重发布
  9. Python爬虫教程-01-爬虫介绍
  10. FPGA入门之一位全加器的实现
  11. 自学编程,看书还是视频?
  12. operator重载运算符
  13. OpenCV Shi-Tomasi角点检测以及goodFeatureToTrack()源码分析
  14. Matlab--函数与子函数
  15. 使用paypal-php-sdk开发php国际支付
  16. 微软又发布了一款命令行神器,功能非常强大!
  17. ROS12机器人操作系统免安装在线自主学习平台简介和官方第三方教程列表
  18. Application received signal SIGSEGV
  19. 记前端状态管理库Akita中的一个坑
  20. Windows系统-安装RabbitMQ过程详解(附带软件安装包)

热门文章

  1. 一线大厂为什么对免费的开源项目这么热衷?
  2. Hbase数据倾斜问题处理手段汇总(持续更新中)
  3. sql对查询的一列结果进行去重
  4. quinlan的C4.5编译
  5. 机器学习入门-文本数据-使用聚类增加文本的标签属性
  6. rsync的安装使用01
  7. 如何让其他机器访问你的oracle数据库
  8. 单机搭建Android开发环境(五)
  9. HelloCnblogs
  10. 不要逼孩子考100分