js获取客户端网卡的IP地址、MAC地址


Posted in Javascript onMarch 26, 2014
<html> 
<head> 
<title></title> 
</head> 
<body> 
<object classid="CLSID:76A64158-CB41-11D1-8B02-00600806D9B6" id="locator" style="display:none;visibility:hidden"></object> 
<object classid="CLSID:75718C9A-F029-11d1-A1AC-00C04FB6C223" id="foo" style="display:none;visibility:hidden"></object> 
<form name="myForm"> 
<br/>MAC地址:<input type="text" name="macAddress"> 
<br/>IP地址:<input type="text" name="ipAddress"> 
<br/>主机名:<input type="text" name="hostName"> 
</form> 
</body> 
</html> 
<script language="javascript"> 
var sMacAddr=""; 
var sIPAddr=""; 
var sDNSName=""; 
var service = locator.ConnectServer(); 
service.Security_.ImpersonationLevel=3; 
service.InstancesOfAsync(foo, 'Win32_NetworkAdapterConfiguration'); 
</script> 
<script FOR="foo" EVENT="OnObjectReady(objObject,objAsyncContext)" LANGUAGE="JScript"> 
if(objObject.IPEnabled != null && objObject.IPEnabled != "undefined" && objObject.IPEnabled == true){ 
if(objObject.IPEnabled && objObject.IPAddress(0) !=null && objObject.IPAddress(0) != "undefined" && objObject.DNSServerSearchOrder!=null) 
sIPAddr = objObject.IPAddress(0); 
if(objObject.MACAddress != null &&objObject.MACAddress != "undefined") 
sMacAddr = objObject.MACAddress; 
if(objObject.DNSHostName != null &&objObject.DNSHostName != "undefined") 
sDNSName = objObject.DNSHostName; 
} 
</script> <script FOR="foo" EVENT="OnCompleted(hResult,pErrorObject, pAsyncContext)" LANGUAGE="JScript"> 
myForm.macAddress.value=sMacAddr; 
myForm.ipAddress.value=sIPAddr; 
myForm.hostName.value=sDNSName; 
</script>

代码是网上找到,但是经过修改。

原因是比如你笔记本有多张网卡,会出现获取你未联网或者禁用网卡的信息,解决办法:加限制条件:

objObject.DNSServerSearchOrder!=null

加上这个限制条件后,就能取到联网客户端的网卡IP地址了。

不过还有个问题就是只能限制IE浏览器,而且Activex必须要全部启用。

Javascript 相关文章推荐
一个可以随意添加多个序列的tag函数
Jul 21 Javascript
js保留小数点后几位的写法
Jan 03 Javascript
D3.js实现文本的换行详解
Oct 14 Javascript
jquery checkbox的相关操作总结
Oct 17 Javascript
bootstrap实现动态进度条效果
Mar 08 Javascript
JavaScript 巧学巧用
May 23 Javascript
微信小程序之绑定点击事件实例详解
Jul 07 Javascript
vue使用element-ui的el-input监听不了回车事件的解决方法
Jan 12 Javascript
Vue用v-for给src属性赋值的方法
Mar 03 Javascript
vue forEach循环数组拿到自己想要的数据方法
Sep 21 Javascript
jQuery选择器选中最后一个元素,倒数第二个元素操作示例
Dec 10 jQuery
js中int和string数据类型互相转化实例
Jan 16 Javascript
javascript判断chrome浏览器的方法
Mar 26 #Javascript
Javascript 浮点运算精度问题分析与解决
Mar 26 #Javascript
javascript 3d 逐侦产品展示(核心精简)
Mar 26 #Javascript
Node.js模拟浏览器文件上传示例
Mar 26 #Javascript
JavaScript关闭当前页面(窗口)不带任何提示
Mar 26 #Javascript
JavaScript数字和字符串转换示例
Mar 26 #Javascript
jquery实现瀑布流效果分享
Mar 26 #Javascript
You might like
PHP中使用imagick实现把PDF转成图片
2015/01/26 PHP
基于PHP实现商品成交时发送短信功能
2016/05/11 PHP
遍历echsop的region表形成缓存的程序实例代码
2016/11/01 PHP
jquery 事件冒泡的介绍以及如何阻止事件冒泡
2012/12/25 Javascript
关于JavaScript对象的动态选择及遍历对象
2014/03/10 Javascript
JavaScript中的eval()函数使用介绍
2014/12/31 Javascript
javascript操作select元素实例分析
2015/03/27 Javascript
javascript常用函数(2)
2015/11/05 Javascript
利用JS实现简单的日期选择插件
2017/01/23 Javascript
原生js开发的日历插件
2017/02/04 Javascript
jQuery实现弹窗居中效果类似alert()
2017/02/27 Javascript
vue2.0构建单页应用最佳实战
2017/04/01 Javascript
React学习笔记之条件渲染(一)
2017/07/02 Javascript
使用Node.js实现简易MVC框架的方法
2017/08/07 Javascript
React如何将组件渲染到指定DOM节点详解
2017/09/08 Javascript
AngularJS中controller控制器继承的使用方法
2017/11/03 Javascript
如何获取vue单文件自身源码路径
2019/05/06 Javascript
详解 微信小程序开发框架(MINA)
2019/05/17 Javascript
一文快速详解前端框架 Vue 最强大的功能
2019/05/21 Javascript
解决一个微信号同时支持多个环境网页授权问题
2019/08/07 Javascript
javascript的delete运算符知识点总结
2019/11/19 Javascript
python实现简单的socket server实例
2015/04/29 Python
python图像常规操作
2017/11/11 Python
Python使用graphviz画流程图过程解析
2020/03/31 Python
python tkiner实现 一个小小的图片翻页功能的示例代码
2020/06/24 Python
css3背景_动力节点Java学院整理
2017/07/11 HTML / CSS
HTML5语音识别标签写法附图
2013/11/18 HTML / CSS
HTML5中图片之间的缝隙完美解决方法
2017/07/07 HTML / CSS
创业计划书——互联网商机
2014/01/12 职场文书
工程造价专业大学生职业生涯规划书
2014/01/18 职场文书
试用期自我鉴定范文
2014/03/20 职场文书
咖啡店创业计划书
2014/08/15 职场文书
养成教育工作总结
2015/08/13 职场文书
2016年清明节红领巾广播稿
2015/12/17 职场文书
解决redis sentinel 频繁主备切换的问题
2021/04/12 Redis
Python基础之进程详解
2021/05/21 Python