获取本机ip地址,并自动区分Windows还是linux操作系统
来源:互联网 发布:数据库主键的关键字 编辑:程序博客网 时间:2024/05/16 14:37
声明:本文纯属个人随手笔记,如果对您有参考价值我十分开心,如果有存在错误,或者有更好的解决办法也麻烦您留言告诉我,大家共同成长,切勿恶言相。 欢迎加入资源共享QQ群:275343679,一起发现知识、了解知识、学习知识、分享知识。个人网站: www.blueskyui.cn
================================================================================
/**
* 获取本机ip地址,并自动区分Windows还是linux操作系统
* @return String*/
public static String getLocalIP(String cip){
String sIP = "";
InetAddress ip = null;
try {
//如果是Windows操作系统
if(isWindowsOS()){
ip = InetAddress.getLocalHost();
} else{
//如果是Linux操作系统
boolean bFindIP = false;
Enumeration<NetworkInterface> netInterfaces = (Enumeration<NetworkInterface>) NetworkInterface.getNetworkInterfaces();
while (netInterfaces.hasMoreElements()) {
if(bFindIP){
break;
}
NetworkInterface ni = (NetworkInterface) netInterfaces.nextElement();
//----------特定情况,可以考虑用ni.getName判断
//遍历所有ip
Enumeration<InetAddress> ips = ni.getInetAddresses();
while (ips.hasMoreElements()) {
ip = (InetAddress) ips.nextElement();
if( ip.isSiteLocalAddress() && !ip.isLoopbackAddress() //127.开头的都是lookback地址
&& ip.getHostAddress().indexOf(":")==-1){
bFindIP = true;
break;
}
}
}
}
}catch (Exception e) {
logger.error("get ip error.",e);
}
if(null != ip){
sIP = ip.getHostAddress();
}
logger.info(String.format("config IP:%s === server IP:%s ",cip,sIP));
return sIP;
}
* 判断系统
*
* @return String
*/
public static boolean isWindowsOS(){
boolean isWindowsOS = false;
String osName = System.getProperty("os.name");
if(osName.toLowerCase().indexOf("windows")>-1){
isWindowsOS = true;
}
return isWindowsOS;
}
阅读全文
0 0
- 获取本机ip地址,并自动区分Windows还是linux操作系统
- 获取本机ip地址,并自动区分Windows还是linux操作系统
- Java获取主机IP地址,自动区分Windows和Linux
- 获取本机ip地址(适用于linux、windows)
- windows平台获取本机IP地址
- Windows phone8 获取本机ip地址
- Windows phone8 获取本机 IP 地址
- linux下获取本机IP地址
- linux获取本机网卡ip地址
- linux编程获取本机IP地址
- LINUX下获取本机IP地址
- python 获取linux 本机IP地址
- linux编程获取本机IP地址
- linux编程获取本机IP地址
- Linux 获取本机IP地址
- linux shell获取本机ip地址
- Linux编程获取本机IP地址
- Linux下获取本机IP地址
- windows 定时清理指定目录文件bat
- Dora RPC 虚拟机下实测性能
- 2017校招常考算法题归纳&典型题目汇总
- PHP如何拼接 bit
- Dora-RPC未来规划及架构
- 获取本机ip地址,并自动区分Windows还是linux操作系统
- vagrant的镜像备份和恢复
- 龙格库塔的计算写法
- BDB0126 mmap: Invalid&…
- linux下获取时间us,ms
- c++ 11 获取当前天0点的timestamp
- Java 常用排序算法/程序员必须掌握的 8大排序算法
- c 系列中 localtime多线程下的大坑
- Linux常用命令(一)——安装和登录命令(未拓展)