获取本机所有IP地址的方法
    java.net包中的IP地址类InetAddress提供了可以获取本机IP地址的方法getLocalHost(),但是通过该方法只能获得第一个网络设备的IP地址。但是InetAddress提供了getAllByName(String host),可以通过主机名获取所有IP地址。下面就是获取本机所有IP地址的源码。

/*
 * NetTools.java
 * Created on 2004-9-29
 * Copyright:
 */
import java.net.InetAddress;

/**
 * @author yanpeng
 *
 * 
 */
public class NetTools {

public static String getLocalHostIP(){
  String ip;
  try{
   InetAddress addr = InetAddress.getLocalHost();
   ip = addr.getHostAddress();
  }
  catch(Exception ex){
   ip = "";
  }
  return ip;
 }
 
 public static String getLocalHostName(){
  String hostName;
  try{
   InetAddress addr = InetAddress.getLocalHost();
   hostName = addr.getHostName();
  }
  catch(Exception ex){
   hostName = "";
  }
  return hostName;
 }
 
 public static String[] getAllLocalHostIP(){
  String[] ret = null;
  try{
   String hostName = getLocalHostName();
   if(hostName.length()>0){
    InetAddress[] addrs = InetAddress.getAllByName(hostName);
    if(addrs.length>0){
     ret = new String[addrs.length];
     for(int i=0 ; i< addrs.length ; i++){
      ret[i] = addrs[i].getHostAddress();
     }
    }
   }
   
  }
  catch(Exception ex){
   ret = null;
  }
  return ret;
 }

public static String[] getAllHostIPByName(String hostName){
  String[] ret = null;
  try{
   if(hostName.length()>0){
    InetAddress[] addrs = InetAddress.getAllByName(hostName);
    if(addrs.length>0){
     ret = new String[addrs.length];
     for(int i=0 ; i< addrs.length ; i++){
      ret[i] = addrs[i].getHostAddress();
     }
    }
   }
   
  }
  catch(Exception ex){
   ret = null;
  }
  return ret;
 }
 
 
 public static void main(String[] args) {
  //System.out.println(getLocalHostIP());
  System.out.println("主机名:" + getLocalHostName());
  
  String[] localIP = getAllLocalHostIP();
  for(int i=0 ; i<localIP.length ; i++){
   System.out.println( localIP[i]);
  }
 }
}

获取本机所有IP地址的方法相关推荐

  1. python项目实战:获取本机所有IP地址的方法

    2019独角兽企业重金招聘Python工程师标准>>> 前言 今天为大家介绍一个利用python获取本机所有IP地址的具体代码,具有一定的参考价值,希望能够帮助到大家,代码如下: 导 ...

  2. linux ip获取mac,linux 获取本机MAC/IP地址的方法

    功能:查询本机IP/MAC地址,过滤掉127.0.0.1 loop-back 地址 适用:linux, ubuntu 16.04 调试通过 #include #include #include #in ...

  3. 【Win 10 应用开发】获取本机的IP地址

    按照老规矩,也是朋友的建议,老周今天在吹牛之前,先讲一个小故事. 有朋友问我,老周,你现在还发短信吗,你每个月用多少电话费?唉,实话说,现在真的发短信不多了,套餐送的130条短信,每月都发不了一条.至 ...

  4. Spring boot 获取本机的IP地址mac地址以及电脑名称!

    Spring boot 获取本机的IP地址mac地址以及电脑名称! package com.example.demo;import java.net.InetAddress;import java.n ...

  5. 如何在Node.js中获取本机本地IP地址

    最近在做Cloud related的项目时,遇到一个问题,就是如何在Node.js中获取本机的IP地址.Node.js提供的API中,只能获取本机的hostname. os = require('os ...

  6. C#如何获取本机网络ip地址

    C#如何获取本机网络ip 有几种方法获取本机局域网地址和网络地址. 1.  获取本机局域网地址: 使用IPHostEntry static string GetLocalIp()         { ...

  7. java 如何获取本机所有ip地址呢?

    转自: java 如何获取本机所有ip地址呢? ip地址简介: IP地址(Internet Protocol Address)是指互联网协议地址,又译为网际协议地址. IP地址是IP协议提供的一种统一 ...

  8. C++获取本机的ip地址程序

    C++获取本机的ip地址程序 #include <WinSock2.h> #pragma comment(lib,"ws2_32") //链接到ws2_32动态链接库c ...

  9. 使用Linux curl命令获取本机公网IP地址

    使用Linux curl命令获取本机公共IP地址 在本教程中,我们将学习如何使用Linux curl命令查找计算机的公共IP地址. 通常,如果我们想要找到我们使用的公共IP地址,我们会去谷歌并搜索&q ...

最新文章

  1. 可能是 nginx 限速最容易理解的说明
  2. Kafka深度解析(如何在producer中指定partition)(转)
  3. CSS3动画属性之Transition
  4. windbg 查看结构体_用WinDbg进行调试
  5. 使元素水平垂直居中的实现方法
  6. EF 保证线程内唯一 上下文的创建
  7. 从mysql随机抽取数据_mysql随机抽取一定数量的记录实例讲解
  8. 多小区下小区上行速率的计算(4)
  9. 一次贴近实战的CTF比赛(cookie欺骗、php函数、Tomcat漏洞、注入、逆向等)
  10. 360安全卫士 免杀
  11. js中new一个对象的过程
  12. C#实现简易计算器(Console程序)
  13. 点对点网络带宽测试软件,点对点带宽测试工具iperf
  14. 【计算机基础】计算机分类
  15. 阿里1688产品图片和视频资料下载
  16. 引力产生的原因是什么
  17. 2G是GSM 3G是CDMA 4G是LTE,5G制式?
  18. 洛谷 1462 通往奥格瑞玛的道路 题解
  19. com文件与exe文件
  20. 在传染病中,肠道微生物-免疫力-营养在优化治疗策略中的作用

热门文章

  1. 丛林大反攻java_娱乐新天地:丛林大反攻Open Season
  2. BTC合约手续费计算
  3. 东周列国 演绎版 mp3
  4. 使用Office2003 VBA制作有倒计时功能的PPT
  5. 支付宝商户订单被退款,如何追回?
  6. 主流webservice框架整理
  7. 在 Python 中使用蒙特卡罗方法预测股票价格,使用蒙特卡罗模拟确定明年 SPY 最有可能的价格
  8. 小程序加入阿拉丁统计
  9. 什么软件能抠图换背景?这些软件大家都在用
  10. matlab中如何判断能控能关性,线性系统能观性能控性判定详解.ppt