您的位置:首页 > 其它

获取客户端ip和mac地址的方法总结

2012-05-26 22:10 441 查看
经过各种百度,各种搜索,得出的结论是,php无法获取客户端mac地址,ip地址也只能获取外网ip,不能获得内网实际ip(192.168.1.***)

于是转向用js的方法,照搬网上搜来的程序,貌似大家都用的下面的方法:

存在的问题:

1、生成html文件可以直接运行获得mac和ip地址,但只能在ie浏览器下,并且需要获得用户许可运行activex控件,谷歌、firefox、safari根本就无法响应。

2、将里面的js代码嵌入php就不行了,本地localhost测试总是报错(无法识别,***为空等),各种调试都不行。

致命伤很多,很头疼。

<html>

<head>

<title>WMI Scripting HTML</title>

<meta http-equiv="Content-Type" content="text/html; charset=gb2312">

<script language="JScript" event="OnCompleted(hResult,pErrorObject, pAsyncContext)"

for="foo">

document.forms[0].txtMACAddr.value=unescape(MACAddr);

document.forms[0].txtIPAddr.value=unescape(IPAddr);

document.forms[0].txtDNSName.value=unescape(sDNSName);

//document.formbar.submit();

</script>

<script language="JScript" event="OnObjectReady(objObject,objAsyncContext)" for="foo">

if(objObject.IPEnabled != null && objObject.IPEnabled != "undefined" && objObject.IPEnabled == true)

{

if(objObject.MACAddress != null && objObject.MACAddress != "undefined")

MACAddr = objObject.MACAddress;

if(objObject.IPEnabled && objObject.IPAddress(0) != null && objObject.IPAddress(0) != "undefined")

IPAddr = objObject.IPAddress(0);

if(objObject.DNSHostName != null && objObject.DNSHostName != "undefined")

sDNSName = objObject.DNSHostName;

}

</script>

<meta content="MSHTML 6.00.2800.1106" name="GENERATOR">

</head>

<body>

<object id="locator" classid="CLSID:76A64158-CB41-11D1-8B02-00600806D9B6" viewastext>

</object>

<object id="foo" classid="CLSID:75718C9A-F029-11d1-A1AC-00C04FB6C223">

</object>

<script language="JScript">

var service = locator.ConnectServer();

var MACAddr ;

var IPAddr ;

var DomainAddr;

var sDNSName;

service.Security_.ImpersonationLevel=3;

service.InstancesOfAsync(foo, 'Win32_NetworkAdapterConfiguration');

</script>

<form id="formfoo" name="formbar" action="index.do" method="post">

<input value="00-11-11-B4-52-EF" name="txtMACAddr">

<input value="210.42.38.50" name="txtIPAddr">

<input value="zhupan" name="txtDNSName">

</form>

</body>

</html>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: