惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Blog — PlanetScale
Blog — PlanetScale
J
Java Code Geeks
月光博客
月光博客
Engineering at Meta
Engineering at Meta
WordPress大学
WordPress大学
Jina AI
Jina AI
小众软件
小众软件
U
Unit 42
云风的 BLOG
云风的 BLOG
Stack Overflow Blog
Stack Overflow Blog
雷峰网
雷峰网
博客园 - Franky
Microsoft Security Blog
Microsoft Security Blog
罗磊的独立博客
宝玉的分享
宝玉的分享
B
Blog
C
Check Point Blog
爱范儿
爱范儿
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
量子位
阮一峰的网络日志
阮一峰的网络日志
Vercel News
Vercel News
酷 壳 – CoolShell
酷 壳 – CoolShell

博客园 - 晨月

思恋 Google打不开的解决方法和IP地址表 Reporting service 中文参数问题的解决办法 BI项目技术资料 文本框输入限制 [大全] - 晨月 - 博客园 应用HttpClient来对付各种顽固的WEB服务器 不得不看的几个经典网站 运行 bat(批处理) 文件 一个如何从某一天格式(2005-12-31)得到该天的下一天格式(2006-01-01)的函数 谈谈JAVA程序的反编译 Oracle SQL FAQ df zt() 男人25岁之前必须懂得21个道理 爱有多销魂就有多伤人 javascript 实现多级联动 众里寻他千百度,蓦然回首,那人却在,灯火阑珊处 学习的一个过程 google高手必经之路 正则表达式小技巧
java根据网卡取本机配置的IP - 晨月 - 博客园
晨月 · 2006-03-20 · via 博客园 - 晨月

可以用如下代码:

           InetAddress inet = InetAddress.getLocalHost();
            System.out.println("本机的ip=" + inet.getHostAddress());

在window下面可以工作。在linux下返回127.0.0.1。主要是在linux下返回的是/etc/hosts中配置的localhost的ip地址,而不是网卡的绑定地址。后来改用网卡的绑定地址,可以取到本机的ip地址:)

代码如下:

//根据网卡取本机配置的IP
      Enumeration netInterfaces=NetworkInterface.getNetworkInterfaces();
      InetAddress ip = null;
   while(netInterfaces.hasMoreElements())
   {
    NetworkInterface ni=(NetworkInterface)netInterfaces.nextElement();
    System.out.println(ni.getName());
    ip=(InetAddress) ni.getInetAddresses().nextElement();
    if( !ip.isSiteLocalAddress()
    && !ip.isLoopbackAddress()
    && ip.getHostAddress().indexOf(":")==-1)
    {
     System.out.println("本机的ip=" + ip.getHostAddress());
     break;
    }
    else
    {
                   ip=null;
       }
   }

posted on 2006-03-20 08:56  晨月  阅读(1046)  评论()    收藏  举报