//判断系统
public String checkSys(){
stmt = conn.createStatement();
String os =System.getProperty("os.name");
if(os.startsWith("win") || os.startsWith("Win")){
mac = getMacAdr(ip);
}else{
mac = getMacAdrLinux(ip);
}
return mac;
}
//根据ip获取mac地址<windows>
public static String getMacAdr(String ip){
String str = "";
String macAddress = "";
try{
Process p = Runtime.getRuntime().exec("nbtstat -A " + ip);
InputStreamReader ir = new InputStreamReader(p.getInputStream());
LineNumberReader input = new LineNumberReader(ir);
for (int i = 1; i < 100; i++){
str = input.readLine();
if (str != null){
// 英文环境下
if (str.indexOf("MAC Address") > 1){
macAddress=str.substring(str.indexOf("MAC Address")+14,str.length());
break;
}
// 中文环境下
if (str.indexOf("MAC 地址") > 1){
macAddress = str.substring(str.indexOf("MAC 地址") + 14, str.length());
break;
}
}
}
} catch (IOException e){
e.printStackTrace(System.out);
e.toString();
}
return macAddress;
}
//根据ip获取mac地址<linux>
public String getMacAdrLinux(String ip){
String macAddress ="";
Process p;
String str = "";
try {
p = Runtime.getRuntime().exec("arp -a " + ip);
InputStreamReader ir = new InputStreamReader(p.getInputStream());
LineNumberReader input = new LineNumberReader(ir);
for (int i = 1; i < 100; i++){
str = input.readLine();
if (str != null){
macAddress = str.substring(str.indexOf("at ")+3,str.indexOf("at ")+20);
System.out.println(macAddress);
}
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return macAddress;
}
分享到:
相关推荐
在JAVA中获取客户端的IP地址和MAC地址是非常重要的,特别是在服务器端需要记录客户端的信息时。下面我们将详细介绍如何获取客户端的IP地址和MAC地址。 一、获取客户端IP地址 在JAVA中,可以通过HttpServletRequest...
在ASP.NET中,获取客户端MAC(Media Access Control)地址是一项常见的需求,特别是在网络管理、设备认证或者特定的安全应用场景中。MAC地址是网络设备的物理地址,用于标识连接到网络的设备。然而,由于HTTP协议的...
### JavaScript 获取客户端IP与MAC地址方法详解 #### 一、背景介绍 在Web开发中,有时需要获取客户端的网络信息,比如IP地址和MAC地址。这些信息可用于多种用途,如定位用户位置、进行网络监控等。然而,由于隐私...
首先,获取客户端IP地址通常涉及到服务器端的编程。在Java中,可以通过`java.net`包中的`Socket`或`HttpServletRequest`类来获取。当客户端发起HTTP请求时,服务器可以接收到请求对象,从中提取出客户端的IP地址。...
其中,获取客户端的IP地址和MAC地址是两种常用的技术手段。本文将详细探讨如何在ASP.NET环境下利用特定技术来实现这一功能。 #### 技术原理概述 在网页上通过脚本的方式获取用户的IP地址相对简单,可以通过服务器端...
在实际使用中,Java客户端通常具有简洁的用户界面,用户只需输入服务端的IP地址和端口号,以及认证信息,就能实现远程连接。 在实际应用中,VNC常用于系统维护、技术支持、远程办公等场景。例如,IT管理员可以通过...
例如,可以创建一个表格显示IP和MAC地址的对应关系,使用Ajax异步请求Servlet获取数据,更新表格内容。此外,前端还可以提供搜索和过滤功能,方便用户查找特定主机的信息。 在实际项目设计中,需要注意安全性和性能...
在Java中,我们通过`java.net.Socket`类来创建客户端,通过`java.net.ServerSocket`类来创建服务器端。 1. **TCP客户端实现**: - 创建`Socket`对象,指定服务器的IP地址和端口号。例如:`Socket socket = new ...
在Java中,套接字API提供了一种简便的方式来创建客户端和服务器端的应用程序。通过使用套接字,开发人员可以轻松地建立连接、发送和接收数据。套接字支持多种通信协议,包括TCP(传输控制协议)和UDP(用户数据报...
Java的`java.net.InetAddress`类可以用来处理IP地址,而`java.net.NetworkInterface`类则可以帮助获取网络接口的MAC地址。 5. **事件驱动编程**:考虑到用户交互,飞鸽传书可能会使用事件驱动编程模型,例如Swing或...
ServerSocket则是服务器端用来监听客户端连接的类。 在TCP/IP模型中,Java网络编程主要涉及以下层次: 1. 应用层:Java的URLConnection和HttpURLConnection类处理HTTP请求,FTPClient类处理FTP协议。 2. 传输层:...
`java.net.NetworkInterface`类用于表示网络接口,可以获取网络接口的名称、MAC地址等信息。 #### 十二、使用`isReachable`方法探测主机是否可以连通 `InetAddress`的`isReachable`方法用于测试另一台主机是否可达...
1. 客户端应用程序:这部分代码实现了用户界面,可能使用了Java Swing或JavaFX进行图形化设计,同时包含了与服务器端交互的逻辑。 2. 服务器端程序:这部分代码处理客户端的请求,进行数据处理和存储,并可能包含...
1. Socket编程:Java聊天程序的核心就是Socket编程,通过TCP/IP协议建立客户端和服务器端的连接,实现数据的双向传输。Socket提供了低级别的、面向连接的、字节流的通信服务。 2. ServerSocket与Socket:...
接着,通过TCP/IP协议,系统将数据安全地传输到服务器端。Java的Socket编程模型可以有效地处理这些网络通信任务。 在服务器端,数据处理和存储是主要任务。Java的多线程机制允许同时处理多个客户端请求,提高系统的...
在Android中,可以通过`WifiManager`的`getDhcpInfo()`方法获取到热点的DHCP信息,其中包括服务器(即热点设备)的IP地址。以下是如何使用`WifiManager`获取IP的示例: ```java WifiManager wifiManager = ...
Java的`java.net`包提供了Socket和ServerSocket类,用于实现客户端和服务器端的连接与通信。 3. **多线程**:即时通讯软件通常需要同时处理多个并发连接,因此多线程编程是必不可少的。Java中的Thread类和Runnable...
服务器端可以发送指令给客户端,如获取系统状态、读取日志文件、执行命令等,客户端则将执行结果返回。 3. .bat文件:在Windows操作系统中,.bat文件是批处理文件,用于执行一系列命令。在Java远程监控软件中,可能...
505 实例137 获取本机的Mac地址 508 实例138 获取Java系统信息 509 实例139 控制Java与C++程序的通信 510 实例140 访问Windows注册表 514 第13章 Java配置与集成 523 实例141 J2SDK的安装配置 524...
1. **服务器端**:服务器端程序接收来自客户端的连接请求,并处理数据流,展示远程设备的屏幕画面。Java的ServerSocket类用于创建监听特定端口的服务器,而Socket类则用于建立客户端与服务器之间的连接。 2. **...