1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > java如何获得wlan mac_如何获取客户端MAC地址(三个方法)

java如何获得wlan mac_如何获取客户端MAC地址(三个方法)

时间:2019-11-29 08:57:00

相关推荐

java如何获得wlan mac_如何获取客户端MAC地址(三个方法)

方法一:

调用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地址.

WMI Scripting HTML

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

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

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

//document.formbar.submit();

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;

\}

平心而论,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查询,获取它的返回值就可以获取到它所有的网卡地址

.Net 技术探讨群 4151320

欢迎大家加入!!!

/happyday56/category/93641.html

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。