但是在测试的时候注意:我用的是weblogic测试的,在我的本机上开启服务,然后访问,由于同在一个局域网,因此下面这个方法返回的ip地址是127001,而同在一个局域网的机器访问的时候返回的ip是这台机器的ip地址1921681151,而外网的客户端访问的时候(这里不是说测试服务器可以被外网访问到),返回的ip是外网客户端的公网ip地址
public String getIpAddr(>
java如何不使用>
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();
}
}
以上就是关于java 获取客户端ip 为什么是10.2.10.100全部的内容,包括:java 获取客户端ip 为什么是10.2.10.100、在一个java接口中获取请求客户端的IP地址、在Linux系统下用Java语言获取客户端的IP地址,MAC地址,客户端的主机名称等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)