- 浏览: 18300 次
最新评论
java中获取mac 地址
2011年06月01日
通过IP地址获取远程MAC地址:
public static String getMacAddressIP(String remotePcIP) { String str = ""; String macAddress = ""; try { Process pp = Runtime.getRuntime().exec("nbtstat -A " + remotePcIP); InputStreamReader ir = new InputStreamReader(pp.getInputStream()); LineNumberReader input = new LineNumberReader(ir); for (int i = 1; i 1) { macAddress = str.substring( str.indexOf("MAC Address") + 14, str.length()); break; } } } } catch (IOException ex) { } return macAddress; }
在windows中获取MAC地址:
public class Test { public static void main(String[] args) { try { Process process = Runtime.getRuntime().exec("ipconfig /all"); InputStreamReader ir = new InputStreamReader(process .getInputStream()); LineNumberReader input = new LineNumberReader(ir); String line; while ((line = input.readLine()) != null) if (line.indexOf("Physical Address") > 0) { String MACAddr = line.substring(line.indexOf("-") - 2); System.out.println("MAC address = [" + MACAddr + "]"); } } catch (java.io.IOException e) { System.err.println("IOException " + e.getMessage()); } } }
linux下获取ip地址:
public static byte[] getIp() throws UnknownHostException { byte[] b = InetAddress.getLocalHost().getAddress(); Enumeration allNetInterfaces = null; try { allNetInterfaces = NetworkInterface.getNetworkInterfaces(); } catch (SocketException e) { e.printStackTrace(); } InetAddress ip = null; NetworkInterface netInterface = null; while (allNetInterfaces.hasMoreElements()) { netInterface = (NetworkInterface) allNetInterfaces.nextElement(); if (netInterface.getName().trim().equals("eth0")){ Enumeration addresses = netInterface.getInetAddresses(); while (addresses.hasMoreElements()) { ip = (InetAddress) addresses.nextElement(); } break; } } if (ip != null && ip instanceof Inet4Address) { return b = ip.getAddress(); } return b; }
NETBIOS,据说可以远程获取,且仅限于Windows主机,但我没有成功过,一跨网段就没戏。Linux下有工具nbtscan。
Process p = Runtime.getRuntime().exec("nbtscan -r " + ip); InputStreamReader ir = new InputStreamReader(p.getInputStream()); LineNumberReader input = new LineNumberReader(ir); for (int i = 1; i = 0) {// 找到了 mac = line.substring(index +"hwaddr".length()+ 1).trim();// 取出mac地址并去除2边空格 break; } } } catch (IOException e) { e.printStackTrace(); } finally { try { if (bufferedReader != null) { bufferedReader.close(); } } catch (IOException e1) { e1.printStackTrace(); } bufferedReader = null; process = null; } return mac; }
这是在JDK1.6以后的好方法
public String getMacAddress(String host) { String mac = ""; StringBuffer sb = new StringBuffer(); try { NetworkInterface ni = NetworkInterface.getByInetAddress(InetAddress.getB yName(host)); byte[] macs = ni.getHardwareAddress(); for(int i=0; i
发表评论
-
Windows Phone开发(一)-- 开发环境和结构
2012-01-20 01:01 964Windows Phone开发(一)-- 开 ... -
windows mobile activex and atl create (from csdn)
2012-01-20 01:01 825windows mobile activex and atl ... -
Android SDK的初步研究
2012-01-20 01:01 729Android SDK的初步研究 2010年09月27日 ... -
Windows下离线安装Android SDK的简单方法
2012-01-20 01:01 1249Windows下离线安装Android SDK的简单方法 2 ... -
ASP.net/C#编码规范
2012-01-20 01:01 805ASP.net/C#编码规范 2010年06月03日 以 ... -
“嗲妹妹”与”假小子“
2012-01-19 08:50 611“嗲妹妹”与”假小子 ... -
全国各地的美女特点一览
2012-01-19 08:50 1122全国各地的美女特点一览 2011年05月07日 ... -
全国各地的美女特点一览
2012-01-19 08:50 917全国各地的美女特点一 ... -
上海女人之前世今生
2012-01-19 08:50 1033上海女人之前世今生 20 ... -
西湖教育给予我的思考
2012-01-19 08:50 678西湖教育给予我的思考 ... -
Windows系统的Regsvr32
2012-01-17 01:18 687Windows系统的Regsvr32 2011 ... -
as3面试题
2012-01-17 01:18 730as3面试题 2011年09月13日 ... -
电脑高手应用技巧荟萃(电脑知识二十六)
2012-01-17 01:18 496电脑高手应用技巧荟萃(电脑知识二十六) 2010年12月07 ... -
regsvr32用法集合
2012-01-17 01:17 845regsvr32用法集合 2011年12月02日 R&a ... -
web-rpg游戏设计简要分析(转)
2012-01-15 20:01 620web-rpg游戏设计简要分析 ... -
as学习使用!!!
2012-01-15 20:00 856as学习使用!!! 2010年05月 ... -
Flash&Flex大全
2012-01-15 20:00 733Flash&Flex大全 2011年02月24日 ... -
2011-12-12
2012-01-15 20:00 4882011-12-12 2011年12月12日 乱码体: -
乡土菜
2012-01-15 20:00 526乡土菜 2011年12月18日 涓 -
Qt初印象
2012-01-11 12:11 577Qt初印象 2011年06月01日 断断续续已经读 ...
相关推荐
java获取mac,通过命令获取裁剪后得到想要的内容
执行main方法获取mac地址,最权威的demo自己测试已经正常使用。网上基本都是假的获取不到,只有我这个才是最方便的
在实际开发中,获取客户端的IP地址是常见的需求,而获取MAC地址则较为罕见且可能存在一定的法律风险和技术难题。开发者应当根据具体的应用场景和需求来选择合适的方法。此外,在处理敏感信息时,还应遵循相关的法律...
在对网内主机进行监控时需要通过java获取远程机器的mac地址
获取用户请求IP地址 根据IP地址获取mac地址
总结来说,Java中获取服务器IP地址和MAC地址主要依赖于`java.net`包中的`InetAddress`和`NetworkInterface`类。通过枚举网络接口和其对应的IP地址,我们可以获取到服务器的网络信息。对于多网卡环境,需要遍历所有...
在Java中获取MAC地址通常涉及网络接口的查询。以下是一个简单的示例: - 引入所需库: ```java import java.net.NetworkInterface; import java.net.SocketException; import java.util.Enumeration; ``` - ...
以下将详细介绍如何使用Java代码在Android中获取Mac地址。 1. **获取Mac地址的基础概念** - **Mac地址**:Media Access Control (MAC) 地址是一个48位的二进制数字,通常表示为12个16进制数,例如`00:11:22:33:44:...
java中通过ip获取远程客户端的mac地址,支持跨平台
### Java 获取客户端 IP 地址 在 Web 开发中,获取客户端 IP 地址是一项非常重要的功能,尤其是在需要记录用户活动、实现地理位置定位...以上就是关于如何在 Java 中获取客户端 IP 地址及 MAC 地址的相关知识点介绍。
java获取不同操作系统的名称以及mac地址工具类,例如:windows,Linux,Unix等
在Java中,可以通过调用`Runtime.getRuntime().exec()`方法执行操作系统级别的命令来获取MAC地址。此方法适用于Windows和Unix/Linux系统。具体来说,对于Windows系统,我们通常使用`ipconfig /all`命令;而对于Unix/...
通过上述代码,我们实现了使用Java获取远程主机MAC地址的功能。需要注意的是,这种方法受限于操作系统的限制,并且可能存在一定的安全风险。在生产环境中部署此类功能前,建议进行充分的测试并采取适当的安全措施。
在Java中,没有内置的API可以直接获取MAC地址。通常,开发者需要使用`java.net.NetworkInterface`类和相关的`InetAddress`类来实现这个功能。以下是可能的实现步骤: 1. **获取所有网络接口**:使用`Network...
在Java中,获取MAC地址的方法相对复杂,因为Java标准库并没有提供直接的API。以下提供了两种常见的实现方式: 1. **本地MAC地址获取**(对应于LocalMacAddr.java): 你可以使用`java.net.NetworkInterface`类和`...
在Java中,可以使用`java.net.NetworkInterface`类来获取这些信息。 首先,我们来看`MacAddressHelper.java`这个文件,它应该是一个用于获取MAC地址的辅助类。这个类可能包含了一个或多个方法,其中核心方法可能是`...
本文将介绍两种在Java中获取MAC地址的方法。 首先,第一种方法是通过`InetAddress`和`NetworkInterface`类来获取本机的MAC地址。这种方法的步骤如下: 1. 使用`InetAddress.getLocalHost()`获取本地主机的IP地址。...
在Java编程中,获取MAC(Media ...总之,Java获取MAC地址的过程涉及到操作系统交互和IO操作,需要根据目标系统的特性选择合适的方法。在实际应用中,应考虑兼容性、效率和错误处理等问题,确保代码的稳定性和可靠性。
可以通过java获取客户端IPMAC主机名等信息。下载就能用,欢迎下载!