怎样根据IP地址获得MAC地址

怎样根据IP地址获得MAC地址,第1张

一般来说,IP地址和MAC地址是两个不同的概念,一个网卡有唯一的MAC地址,但一个网卡的IP地址则是可以无穷变化的,MAC地址和IP地址二者没有固定的关系!

但也有特殊情况,就是当把IP地址和MAC地址绑定时,一个网卡对应一个MAC地址,也只对应一个IP地址。

具体方法就是用相应的软件查看。

java如何不使用>

2、d出运行对话框中输入“cmd”。

3、DOS界面中输入:arp -a 回车。

4、获得局域网内所有与本机通信的电脑IP地址。

5、输入ipconfig /all 按回车。

6、看到本机IP地址,DNS信息,MAC地址信息,DHCP服务器信息等。

import javanetInetAddress;

import javanetNetworkInterface;

/

@author:

@version:

@description:

/

public class Ipconfig {

public static void main(String[] args) throws Exception {

try {

InetAddress ia=InetAddressgetLocalHost();

String localname=iagetHostName();

String localip=iagetHostAddress();

Systemoutprintln("本机名称是:"+ localname);

Systemoutprintln("本机的ip是 :"+localip);

Systemoutprintln("MAC "+getMACAddress(ia));

} catch (Exception e) {

eprintStackTrace();

}

}

//获取MAC地址的方法

private static String getMACAddress(InetAddress ia)throws Exception{

//获得网络接口对象(即网卡),并得到mac地址,mac地址存在于一个byte数组中。

byte[] mac = NetworkInterfacegetByInetAddress(ia)getHardwareAddress();

//下面代码是把mac地址拼装成String

StringBuffer sb = new StringBuffer();

for(int i=0;i<maclength;i++){

if(i!=0){

sbappend("-");

}

//mac[i] & 0xFF 是为了把byte转化为正整数

String s = IntegertoHexString(mac[i] & 0xFF);

sbappend(slength()==10+s:s);

}

//把字符串所有小写字母改为大写成为正规的mac地址并返回

return sbtoString()toUpperCase();

}

}

以上就是关于怎样根据IP地址获得MAC地址全部的内容,包括:怎样根据IP地址获得MAC地址、如何通过ip查看设备mac地址吗、java如何不使用HttpServletRequest获取电脑客户端ip地址与Mac地址。等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/9824907.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-02
下一篇2023-05-02

发表评论

登录后才能评论

评论列表(0条)

    保存