方法一:
调用Windows的DOS命令,从输出结果中读取MAC地址:
public static String getMACAddress() {
String address = "";
String os = System.getProperty("os.name");
if ( os != null && os.startsWith("Windows")) {
try {
String command = "cmd.exe /c ipconfig /all";
Process p = Runtime.getRuntime().exec(command);
BufferedReader br =
new BufferedReader(
new InputStreamReader(p.getInputStream()));
String line;
while ((line = br.readLine()) != null) {
if (line.indexOf("Physical Address") > 0) {
int index = line.indexOf(":");
index += 2;
address = line.substring(index);
break;
}
}
br.close();
return address.trim();
}
catch (IOException e) { }
}
return address;
}
We can replace the "ipconfig" to "ping x.x.x.x" and "arp -a"...We can get the mac list...haha!!
缺点:只能取得服务器端MAC地址.如果要取得客户端的MAC地址,需用Applet.只针对MS-WIN系统.
方法二:
可以用JS或vbscript来调用WMI接口来获取Client端的MAC地址.
<html>
<head>
<title>WMI Scripting HTML</title>
<script FOR="foo" EVENT="OnCompleted(hResult,pErrorObject, pAsyncContext)" LANGUAGE="JScript">
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 FOR="foo" EVENT="OnObjectReady(objObject,objAsyncContext)" LANGUAGE="JScript">
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>
</head>
<body>
<object classid="CLSID:76A64158-CB41-11D1-8B02-00600806D9B6" id="locator" VIEWASTEXT>
</object>
<object classid="CLSID:75718C9A-F029-11d1-A1AC-00C04FB6C223" id="foo">
</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 method="POST" action="NICPost.asp" id="formfoo" name="formbar">
<input type=text name="txtMACAddr">
<input type=text name="txtIPAddr">
<input type=text name="txtDNSName">
</form>
</body>
</html>
关于WMI的详细信息可以参看MSDN:
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/wmisdk/wmi/wmi_tasks_for_scripts_and_applications.asp
平心而论,WMI的很强大的。原先需要动用重量级编程工具才能做到的事,现在用js/vbscript就可以做了。
获取多块网卡的MAC地址:
if(objObject.MACAddress != null && objObject.MACAddress != "undefined"){
MACAddr = objObject.MACAddress;
alert( MACAddr );
}
缺点:需要ActiveX支持.对MS-WIN系统有效.
方法三:
想137口发送UDP查询:
WINDOWS平台的客户端(当获取时它转换为服务端角色),NETBIOS协议在137口上,我们只要向它的137口发送UDP查询,获取它的返回值就可以获取到它所有的网卡地址
相关推荐
执行main方法获取mac地址,最权威的demo自己测试已经正常使用。网上基本都是假的获取不到,只有我这个才是最方便的
说明: 1表示报文组1, 选中报文组后, 在状态栏会显示报文组的索引, 2表示第三个报文, 即索引为3的报文. 版本记录: V1.0.1(基础版本) 1, 支持连接xcap并读取报文功能; 2, 支持刷新按钮自动更新报文功能; 3, 支持选择...
BeeFun,iOS的第三个Github客户端。它是用最新版本的Swift编写的。此外,这是一个开放项目。 您可以通过QR码或在App Store上获取该应用。 功能/功能 【趋势-世界惊艳】 及时找到趋势库和开发人员。 【管理您的...
在研究过程中,学生可能需要采用各种研究方法,如实验、调查、案例分析等,以获取必要的数据和信息。通过这些活动,学生能够培养扎实的专业技能,提升解决实际问题的实际能力。 第三,毕业设计的撰写是整个过程的...
另一种方法就是与实际认证系统相结合,认证系统首先对MAC地址进行第一次认证,只有MAC地址是合法的,才允许DHCP Sever分配IP地址给终端,这主要用到802.1x认证协议和radius认证服务器。 3 有时候为了需要,不希望...
第一章节讲解主流的Vsftp服务器如何通过服务端与客户端实现...第五章节介绍了去部署DHCP服务器对批量客户端实现自动获取IP,通过配置文件IP池获取到IP形式,及绑定客户端Mac地址及指定IP给予客户端,从而获得IP方法。
目前,它实质上是 ( 的本机Swift端口,这是第一个第三方Google Hangouts客户端。 从长远来看,Hangover打算成为Google忘记为Mac OS X制作的Google Hangouts客户端。 目前,宿醉是一个极其阿尔法的项目。 它正逐渐...
Appium Desktop是一款适用于Mac,Windows和Linux的开源应用程序,它以美观而灵活的用户界面为您提供Appium自动化服务器的强大功能。 ...Appium-desktop主界面包含三个菜单Simple,Advanced、Presets
最后笔者需要额外补充一点,那就是通过本文介绍的方法我们可以获取到隐藏SSID广播的无线网络真实SSID信息,不过破解的前提是该无线网络有客户端在连接并传输数据,如果该无线网络没有任何客户端连接的话我们也无法...
由穆罕默德·艾哈迈德(Muhammad Ahmad)撰写 介绍: ... 其中有三个选项: 还原:它还原以前的配置,从而减少了针对同一网络的时间。 手动:它为您提供了手动选项,用于输入AP的名称,mac和通道。
BeeFun,iOS的第三个Github客户端。它是用最新版本的Swift编写的。此外,这是一个开放项目。 您可以通过QR码或在App Store上获取该应用。 功能/功能 【发现】紧跟每天,每周,每月的最新流行项目,搜索开发者,...
lib 官方jar包以及底层支撑文件问题解答1、mac下eclipse中配置java.library.pathMac下,eclipse中的配置方法:项目右键->属性->java build path->选择Libraries中的sigar.jar->在展开的Native library location中...
支持IP 地址高速分配,PXE 引导时DHCP 请求过程零秒等待,IP 分配自动记忆,同一个网卡下一次请求IP 时仍可以获得上一次的地址,不重复分配;DHCP时支持子网掩网自定义,支持VLAN 以及跨网段分配; 4.灵活的界面操作...
第三个则是Oracle服务和代理服务的启动用户。这三种系统用户 的权限对终端用户来说是不可见的,这样设置能有效防止终端用户直接访问数据库。 除了对系统登录进行认证之外,还对关键数据所在模块,例如业务输入模块等,...
[增加] 改进获取网关MAC地址算法,在遭受攻击时仍然可以获取正确的网关MAC地址。 2. [修复] 解决Vista系统下可能出现误报对外攻击的问题 3. [修复] 解决追踪攻击者IP时可能出现误差的问题 4. [修复] 解决安装...
流浪者-bsdpy 这是一个基本的 Vagrant 实验室,用于在上进行测试和黑客攻击, 是由编写的 Python NetBoot 服务器。 它基于支持virtualbox和vmware_fusion... 客户端需要能够在启动时从其他地方获取 IP 地址。 该项
获取客户端版本百度网盘 | OneDrive支持的操作系统:Windows 7/8/8.1/10 (32位/64位),Mac OS X (32位/64位)不提供Linux平台的可执行版本,如有相关需求,可访问GitHub REPO获取源代码进行使用客户端版本支持自动...
pysnspython第三方认证登录包特性方便扩展(只需重写一个方法)支持常见网站(腾讯微博,新浪微博,人人,豆瓣)支持mac认证安装easy_install pysns或者pip install pysns或者git clone ...pysns.get_client_class('...
查看Wifi状态权限,用于获取mac地址,生成设备唯一标示。 获取用户地理位置信息,用于获取精准确的地理位置,变于统计用户分布情况。2.2. 初始化统计服务 应用启动时,需要调用统计SDK中的初始化方法,传入appID...