JS获取IP、MAC和主机名的几种方法
方法一(只针对IE且客户端的IE允许AcitiveX运行,通过平台:XP,SERVER03,2000):
获取客户端IP。
- <HTML>
- <HEAD>
- <TITLE>GetLocalIP</TITLE>
- </HEAD>
- <BODY>
- 获取IP:
- <script language="JavaScript"> function GetLocalIPAddr(){ var oSetting = null; var ip = null; try{ oSetting = new ActiveXObject("rcbdyctl.Setting"); ip = oSetting.GetIPAddress; if (ip.length == 0){ return "没有连接到Internet"; } oSetting = null; }catch(e){ return ip; } return ip; } document.write(GetLocalIPAddr()+"<br/>") </script>
- </BODY>
- </HTML>
方法二(所有的平台及浏览器):
获取客户端处在网络中的IP,前提是客户得联网。
- <html>
- <head>
- <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
- <title>JavaScript获取客户端IP[利用新浪接口]</title>
- </head>
- <body>
- <script type="text/javascript" src="http://counter.sina.com.cn/ip/" charset="gb2312"></script> <!--获取接口数据,注意charset -->
- <script type="text/javascript">
- document.writeln("IP地址:"+ILData[0]+"<br />"); //输出接口数据中的IP地址
- document.writeln("地址类型:"+ILData[1]+"<br />"); //输出接口数据中的IP地址的类型
- document.writeln("地址类型:"+ILData[2]+"<br />"); //输出接口数据中的IP地址的省市
- document.writeln("地址类型:"+ILData[3]+"<br />"); //输出接口数据中的IP地址的
- document.writeln("地址类型:"+ILData[4]+"<br />"); //输出接口数据中的IP地址的运营商
- </script>
- </body>
- </html>
方法三(只针对IE且客户端的IE允许AcitiveX运行):
调用VBS脚本,获取计算机名(有些人不知道什么是计算机名,简单解释就是它是这台机器的物理名称而不是你在用的那个用户名)和登录的用户名。
- <HTML>
- <HEAD>
- <TITLE>WMI Scripting HTML</TITLE>
- </HEAD>
- <BODY>
- <script language=javascript>
- var WshShell =new ActiveXObject("WScript.Shell");
- document.write("计算机名 = "+ WshShell.ExpandEnvironmentStrings("%COMPUTERNAME%")+"<br/>");
- document.write("登录用户名 = "+ WshShell.ExpandEnvironmentStrings("%USERNAME%")+"<br/>");
- </script>
- </BODY>
- </HTML>
方法四(只针对IE且客户端的IE允许AcitiveX运行):
获取计算机名、登录的用户名和域名(如果你加入了域,显示你这台机器处在哪个域中)。
- <HTML>
- <HEAD>
- <TITLE>WMI Scripting HTML</TITLE>
- </HEAD>
- <BODY>
- <script language=javascript>
- var wshNetwork = new ActiveXObject("WScript.Network");
- document.write("域名 = "+ wshNetwork.UserDomain+"<br/>");
- document.write("计算机名 = "+ wshNetwork.ComputerName+"<br/>");
- document.write("登录用户名 = "+ wshNetwork.UserName+"<br/>");
- </script>
- </BODY>
- </HTML>
方法五(只针对IE且客户端的IE允许AcitiveX运行):
能够获取到局域网IP地址,本机的MAC,以及机器名(代码来源网络)。
- <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")
- 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>
JS获取IP、MAC和主机名的几种方法的更多相关文章
- JS获取IP、MAC和主机名的五种方法
javascript获取客户端IP的小程序,下面的代码是我在所有windowsNT5.0及以上的系统上都测试通过的,喜欢的朋友可以收藏下.今天在搞JS(javascript)获取客户端IP的小程序,上 ...
- Linux 中改变主机名的 4 种方法
今天,我们将向你展示使用不同的方法来修改主机名.你可以从中选取最适合你的方法. 使用 systemd 的系统自带一个名为 hostnamectl 的好用工具,它可以使我们能够轻易地管理系统的主机名. ...
- JS获取客户端IP地址、MAC和主机名的7个方法汇总
今天在搞JS(javascript)获取客户端IP的小程序,上网搜了下,好多在现在的系统和浏览器中的都无效,很无奈,在Chrome.FireFox中很少搞到直接利用ActiveX获取IP等的JS脚本. ...
- php -- php获取ip地址和主机名
客户端IP相关的变量1. $_SERVER['REMOTE_ADDR']; 客户端IP,有可能是用户的IP,也有可能是代理的IP. 2. $_SERVER['HTTP_CLIENT_IP']; 代理端 ...
- CentOS7修改主机名的三种方法
在CentOS7中,有三种定义的主机名: 静态的(Static hostname) “静态”主机名也称为内核主机名,是系统在启动时从/etc/hostname自动初始化的主机名. 瞬态的(Tansie ...
- 在cmd中获取ip地址和主机名
将下面的文件放到一个bat文件当中,以管理员身份运行. @echo off &setlocal enabledelayedexpansion Rem '/*========获取本机的IP地址( ...
- Linux下修改主机IP地址、DNS、主机名的三种方法
使用root用户登录进入linux,打开进去终端 在终端中输入:vi /etc/sysconfig/network-scripts/ifcfg-eth0 (最后的eth0是网卡名,我的是Auto_et ...
- JS获取客户端IP地址、MAC和主机名【转】
JS获取客户端IP地址.MAC和主机名 引用:JS获取客户端IP地址.MAC和主机名的7个方法汇总 利用搜狐接口 <html> <head> <meta http-equ ...
- JS获取客户端IP地址、MAC和主机名七种方法
一.使用JS获取客户端IP的几个方法方法一(只针对IE且客户端的IE允许AcitiveX运行,通过平台:XP,SERVER03,2000).获取客户端IP代码:<HTML><HEAD ...
随机推荐
- 《java JDK7 学习笔记》之键值对Map
一.常用的Map操作类 1.使用HashMap Map也支持泛型语法,泛型的Map实例: 建立Map操作对象时,可以使用泛型语法指定键与值的类型.上图键使用String,值也使用String类型.要建 ...
- 用DataSet方式更新数据库表
/* 用DataSet的方式更新数据库表 * 注意:用DataSet更新数据库表的时候,该表必须指定主键或者是唯一列 */ string connString = "Data Source= ...
- LINQ to Entities 不支持 LINQ 表达式节点类型“Invoke”
解决方法即 where后加 .Compile()
- Effective C++ 沉思录
1.视C++是一个联邦语言.由C,Object-Oriented C++,Templete C++,和STL组成.其中面对不同的语言,采用不同的规约这样编程效率会提高很多.例如C和STL 都是有C-S ...
- MyBatis拦截器:给参数对象属性赋值
该拦截器的作用:在进行增加.修改等操作时,给数据模型的一些通用操作属性(如:创建人.创建时间.修改人.修改时间等)自动赋值. 该实现是在DAO层拦截,即存入DB前最后一层.后经分析,不是很合理,改为在 ...
- Jsp页面里引入一个javascript文件,在jsp的onclick里怎么添加脚本文件里的方法
举个简单例子:首先新建use.js文件内容:function show(){ alert("aa");} 建html文件跟use.js放同目录下: <html>< ...
- 划分分区GPT11
umount /dev/sda1 /data1umount /dev/sdb1 /data2mount /dev/sdb1 /data1umount /dev/sdb2 /data3umount /d ...
- STL的简介
Standard Template Library,(标准模板库)<来自百度百科的整理> ————可复用性(reusability) STL是基于模板,内联函数的使用使得生成的代码短小高效 ...
- C++ IO 详细用法
http://www.cnblogs.com/keam37/ keam所有 转载请注明出处 本文将分别从<iostream>,<sstream>,<fstream> ...
- JS中undefined和null的区别
在写JS脚本的时候,经常会碰到“为空”的判断,其中主要有null和undefined的判断.这两个为空判断的主要区别是: 1) null是JS的关键字,是语法特性.undefined是全局对象的属性, ...