`
zhaoshijie
  • 浏览: 2261749 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

java 获取IP地址(MAC地址)

阅读更多
关键字:IP(MAC) 地址。


一、Java类直接获取IP、Mac地址:

import java.io.IOException;
import java.io.InputStreamReader;
import java.io.LineNumberReader;
import java.net.InetAddress;
import java.net.UnknownHostException;


public class Dos {

/**
* @param args
* @throws IOException
* @throws InterruptedException
*/
public static void main(String[] args) throws IOException, InterruptedException {



Dos test =new Dos();

System.out.println(test.getIP());
System.out.println(test.getHostName());


System.out.println("mak="+test.getMACAddressByIp("10.66.81.63"));

}


public String getIP(){
InetAddress inet;
try {
inet = InetAddress.getLocalHost();
InetAddress.getByName("");
return inet.getHostAddress();
} catch (UnknownHostException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
       

return "";
}


public String getHostName(){
InetAddress inet;
try {
inet = InetAddress.getLocalHost();
InetAddress.getByName("");
return inet.getHostName();
} catch (UnknownHostException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
       

return "";
}


//ip必须是真实的ip,如:10.66.204.44,而不能是127.0.0.1或localhsot,否则返回"".可以指定可ping通的所有计算机的IP。
   public String getMACAddressByIp(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;
                     }
                 }
             }
         } catch (IOException e) {
             e.printStackTrace(System.out);
         }
         return macAddress;
     }




}




/**
* 直接获取mac地址(何伟)
* @return
*/
private static String getMACAddress()
   {
     String address = "";
     String os = System.getProperty("os.name");
     if ((os != null) && (os.startsWith("Windows")))
       try
       {
         String line;
         String command = "cmd.exe /c ipconfig /all";
         Process p = Runtime.getRuntime().exec(command);
         BufferedReader br = new BufferedReader(new InputStreamReader(p.getInputStream()));

         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 localIOException) {
       }
     return address;
   }








二、web项目获取服务器端IP及客户端IP
String LocalAddr = request.getLocalAddr();//127.0.0.1
String LocalName = request.getLocalName();//localhsot
String test2 = "getRemoteHost="+request.getRemoteHost()+";getRemotePort="+request.getRemotePort()+";getRemoteUser="+request.getRemoteUser()+";getRemoteAddr="+request.getRemoteAddr();
System.out.println(test2);
String RemoteAddr = request.getRemoteAddr();

System.out.println(getRemoteAddress(request));

request.getSession().setAttribute("LocalAddr", LocalAddr);
request.getSession().setAttribute("LocalName", LocalName);
request.getSession().setAttribute("test2", test2);
request.getSession().setAttribute("RemoteAddr", RemoteAddr);
request.getRequestDispatcher("test.jsp").forward(request, response);
分享到:
评论

相关推荐

    java 获取客户端ip mac地址

    #### 三、在Linux环境下获取IP地址 在Linux环境中,可以通过`InetAddress`类来获取主机的IP地址。但是需要注意的是,对于多网卡的情况,需要遍历所有网络接口来找到正确的IP地址。 **示例代码**: ```java public...

    java获取客户端ip及mac地址

    ### Java 获取客户端 IP 地址 在 Web 开发中,获取客户端 IP 地址是一项非常重要的功能,尤其是在需要记录用户活动、实现地理位置定位...以上就是关于如何在 Java 中获取客户端 IP 地址及 MAC 地址的相关知识点介绍。

    java通过ip获取mac地址的工具

    java中通过ip获取远程客户端的mac地址,支持跨平台

    java中通过request获取IP以及MAC地址.java

    获取用户请求IP地址 根据IP地址获取mac地址

    java编程实现获取服务器IP地址及MAC地址的方法

    在Java编程中,获取服务器的IP地址和MAC地址是常见的需求,特别是在网络通信和系统管理中。本篇文章将详细介绍如何使用Java实现这一功能,包括针对单网卡和多网卡环境的情况。 首先,获取服务器的IP地址通常涉及到`...

    pb获取ip地址/mac地址

    标题中的"pb获取ip地址/mac地址"指的是在PowerBuilder(简称pb)环境下获取计算机的IP地址和MAC地址。PowerBuilder是一种流行的.NET和Java应用程序开发工具,尤其适合于创建数据库驱动的应用程序。在这个场景中,...

    java通过ip获取mac地址源代码.rar

    在Java编程语言中,获取一个特定IP地址对应的MAC(Media Access Control)地址是一项常见的网络编程任务。MAC地址是网络设备在网络层的物理地址,用于标识网络接口控制器(NIC)。在局域网(LAN)中,MAC地址是唯一...

    Java获取本机MAC地址IP地址主机名

    Java获取本机MAC地址IP地址主机名

    通过java获取远程机器mac地址

    在对网内主机进行监控时需要通过java获取远程机器的mac地址

    java中获取客户端IP MAC信息

    可以通过java获取客户端IPMAC主机名等信息。下载就能用,欢迎下载!

    get_mac_address_using_java.rar_获取IP地址_获取mac地址

    总的来说,获取MAC地址通常比获取IP地址更为复杂,因为IP地址可以通过标准的网络API直接获取,而MAC地址涉及到更底层的网络操作。在实际开发中,如果只需要识别网络上的设备,通常使用IP地址就足够了。只有在需要...

    Java获取客户端IP及Mac地址(同网段).rar

    在Controller类获取客户端的IP地址的方法是:request.getRemoteAddr(),这种方法在大部分情况下都是有效的。但是在通过了Apache,Squid等反向代理软件就不能获取到客户端的真实IP地址了。如果使用了反向代理软件,用...

    Java 自动获取本机IP、MAC地址

    2. **获取IP地址**:`InetAddress`对象提供了`getHostAddress()`方法,用于获取IP地址字符串。这个IP地址可能是IPv4或IPv6格式,具体取决于系统的配置。 3. **获取MAC地址**:在Java中,直接获取MAC(物理)地址...

    通过IP获取MAC地址代码

    LINUX编程,通过IP地址获取MAC地址代码。方

    java获取IP地址

    在Java编程中,获取IP地址和MAC地址是网络通信中常见的需求。IP地址标识了网络上的唯一设备,而MAC地址则是物理网络接口的唯一标识。以下是对标题和描述中涉及的知识点的详细解释: 1. **获取客户端IP地址**: - ...

    java获取linux服务器上的IP操作

    在本文中,我们将详细介绍Java获取Linux服务器上的IP操作,包括Linux服务器上的网络接口、回环接口、获取IP地址的方法等。 Linux服务器上的网络接口 在Linux服务器上,网络接口是用来发送和接受数据包的基本设备...

    获取IP地址和MAC地址

    java获取IP地址和MAC地址。 /** * 通过HttpServletRequest返回IP地址 * @param request HttpServletRequest * @return ip String * @throws Exception */ public String getIpAddr(HttpServletRequest ...

    Java中获取IP地址,主机名称,网卡地址

    Java 中获取 IP 地址、主机名称、网卡地址 Java 中获取 IP 地址、主机名称、网卡地址是 NETWORK 编程中的一个重要主题。在 Java 中,我们可以使用 InetAddress 类和 Runtime 类来获取这些信息。下面我们来详细介绍...

    跨平台 获取本机IP/MAC地址,检测是否内网IP,字符串IP转换成Number地址

    本文将深入探讨如何在不同的操作系统上获取本机的IP和MAC地址,以及如何判断一个IP地址是否为内网IP,并将字符串形式的IP地址转换为数值表示。我们将主要关注以下几个知识点: 1. **跨平台获取本机IP地址**: 跨...

    JAVA如何获取客户端IP地址和MAC地址

    JAVA获取客户端IP地址和MAC地址 在JAVA中获取客户端的IP地址和MAC地址是非常重要的,特别是在服务器端需要记录客户端的信息时。下面我们将详细介绍如何获取客户端的IP地址和MAC地址。 一、获取客户端IP地址 在...

Global site tag (gtag.js) - Google Analytics