java如何查询本机ip地址和mac地址

java如何查询本机ip地址和mac地址,第1张

   Java中可以使用程序来获取本地ip地址和mac地址,使用InetAddress这个工具类,示例如下:

import javanet;

public class NetInfo {

 public static void main(String[] args) {

    new NetInfo()say();

    }

 public void say() {

   try {

   InetAddress i = InetAddressgetLocalHost();

   Systemoutprintln(i);                  //计算机名称和IP

   Systemoutprintln(igetHostName());    //名称

   Systemoutprintln(igetHostAddress()); //只获得IP

   }

   catch(Exception e){eprintStackTrace();}

 }

}

    也可以通过命令行窗口来查看本地ip和mac地址,输入命令:ipconfig。

其实就是在外网搞一个服务器,然后用java去访问这个服务器,然后服务器就能获取到你的外网ip,只需要对数据进行解析。服务器可以自己架设或者网上也有很多提供这样服务的网站,如各种的查ip的网站都有显示自己外网ip的功能。下边是个例子,可以直接运行

import javaioBufferedReader;

import javaioInputStreamReader;

import javanetURL;

public class ListIP {

/

@param args

/

public static void main(String[] args) {

// TODO Auto-generated method stub

Systemoutprintln("本机的外网IP是:"+ListIPgetWebIp(">

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

如果使用了反向代理软件,用requestgetRemoteAddr()方法获取的IP地址是:127001 或 1921681110,而并不是客户端的真实IP。

经过代理以后,由于在客户端和服务之间增加了中间层,因此服务器无法直接拿到客户端的IP,服务器端应用也无法直接通过转发请求的地址返回给客户端。但是在转发请求的>

package test5;

public interface A {

void setAll(int ID,String IP);

String getAll();

}

package test5;

public class B implements A{

String IP;

int ID;

public void setAll(int ID,String IP) {

thisID=ID;

thisIP=IP;

}

public String getAll() {

return "ID为: "+ID+"\t\t"+"IP为: "+IP;

}

public static void main(String[] args) {

B b=new B();

bsetAll(1, "19216811");

Systemoutprintln(bgetAll());

}

}

以上就是关于java如何查询本机ip地址和mac地址全部的内容,包括:java如何查询本机ip地址和mac地址、Java编程 怎样获得自己在外网的真实ip、怎样通过Java程序 获取本机IP地址..试了几种方法都不行 获取的都是192.168.*.*这种.想得到网络IP那种,求等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

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

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

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

发表评论

登录后才能评论

评论列表(0条)

    保存