`
thomas0988
  • 浏览: 484906 次
  • 性别: Icon_minigender_1
  • 来自: 南阳
社区版块
存档分类
最新评论

java 生成 ip地址

阅读更多
在TCP/IP 互联网时,经常会需要查询自己主机的IP地址和www服务器的IP地址。虽然,我们可以使用IPCONFIG 和PING 进行IP地址查询,但是如果在应用程序或APPLET中使用此命令回破坏我们应用程序界面。

  为此本人使用Java做了一个简单的程序可以直接查询自己主机的IP地址和www服务器的IP地址。

// 文件名为 NetTool.java (注意:在JAVA 语言中大小写敏感)
import java.net.*;
public class NetTool{
InetAddress myIPaddress=null;
InetAddress myServer=null;

public static void main( String args[]){

 NetTool mytool;
 mytool=new NetTool();

 System.out.println("Your host IP is: " + mytool.getMyIP());
 System.out.println("The Server IP is :" +mytool.getServerIP());

}

//取得LOCALHOST的IP地址
public InetAddress getMyIP() {
 try { myIPaddress=InetAddress.getLocalHost();}
 catch (UnknownHostException e) {}
  return (myIPaddress);
}
//取得 www.abc.com 的IP地址
public InetAddress getServerIP(){
 try {myServer=InetAddress.getByName("www.abc.com");}
 catch (UnknownHostException e) {}
 return (myServer);
}

}




可以用如下代码:

           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;
       }
   }





public void getip()
{
try
{
InetAddress addr = InetAddress.getLocalHost();
ip=addr.getHostAddress().toString;//获得本机IP
address=addr.getHostName()toString;//获得本机名称


//System.out.println("addr=:"+String.valueOf(addr));
}
catch(Exception e)
{
System.out.println("Bad IP Address!"+e);
}
}

public void showframe()
{
frame=new JFrame("my ip");
label1=new JLabel("this my ip");
label1.setText(ip);
label2=new JLabel("this my address");
label2.setText(address);
panel=new JPanel();
panel.add(label1);
panel.add(label2);
frame.getContentPane().add(panel);

frame.setSize(400,300);
frame.setVisible(true);
}

public static void main(String agrs[])
{
iplabel myip=new iplabel();
myip.getip();
myip.showframe();

}
}


分享到:
评论

相关推荐

    java IP地址网段计算的示例代码

    Java IP地址网段计算的示例代码 Java IP地址网段计算是网络编程中的一个重要概念,它可以帮助开发者计算出某个IP地址的网段信息,包括网段的起始IP、结束IP和子网掩码等。在Java语言中,可以使用各种算法和技巧来...

    java根据Ip地址获取归属地

    根据Ip地址获取归属地,需要用到ip库,我这里用到的是QQWry.dat

    JAVA_IP自动递增和加密

    在Java编程中,"JAVA_IP自动递增和加密"是一个重要的网络编程概念,涉及到网络通信中的IP地址管理和安全。IP自动递增常用于动态分配IP地址,而IP加密则关系到网络安全,保护IP数据免受非法访问和篡改。下面我们将...

    Java开发源代码获得特定网站的IP地址.rar

    在Java编程语言中,获取特定网站的IP地址是一项常见的任务,尤其在进行网络编程或数据分析时。本资源提供了一个Java开发源代码示例,用于演示如何实现这一功能。以下是关于这个主题的详细解释: 首先,我们需要理解...

    idea,java获取ip地址

    当我们构建一个基于Servlet的Web应用程序时,有时需要获取访问用户的真实IP地址,这在处理用户请求、日志记录或者实现地理位置相关的功能时尤为关键。 Servlet是Java服务器端的一种组件,它扩展了Web服务器的功能,...

    获取Ip地址的Java工具类

    通过该工具类可以获得请求的IP地址,适用于后台管理系统的信息统计。

    IP地址拆分小工具v1.1-用于批量计算、拆分IP地址、地址段,支持批量excel拆分转换

    可以实现: ...3、可以根据excel文件进行拆分,excel文件中IP地址,支持上述两种方式,Excel中只要包含起始IP列、终止IP列,或者包含IP地址段,就可以自动批量生成单个IP,并且还可以保留原来excel的字段;

    java语言生成唯一ID的方法

    3. **主机地址**:获取主机IP地址,用于区分不同主机生成的ID。 4. **线程ID**:获取当前线程的ID,进一步提高ID的唯一性。 ##### 示例代码分析 下面是一些关键代码片段的分析: ```java // 主机地址初始化 try {...

    ip地址掩码计算地址范围

    通过输入IP地址和掩码,这些工具能自动生成子网数量、地址范围、网络号等信息,对网络管理员和IT专业人员来说非常实用。 总之,理解IP地址、掩码、子网划分、网络号和广播地址的概念,以及如何进行相关的计算,是...

    java生成唯一id(uuid)(不依赖jdk5,自己实现的)

    2. **节点ID**:在不依赖硬件的情况下,可以使用IP地址或者其他设备唯一标识符的哈希值作为节点ID。如果只是临时使用,也可以使用随机数生成器生成一组随机的128位数。 3. **序列号**:对于同一毫秒内的多个UUID,...

    java得到机器的MAC,硬盘序列序列号和IP地址

    得到机器的MAC,硬盘序列序列号和IP地址 public static void main(String[] args) ...{ String osName = System.getProperty("os.name"); StringBuffer systemPathBuff = new StringBuffer(""); if (osName.index...

    javaID生成器javaID生成器

    - **使用 IP 地址**:虽然文中没有明确提到,但在实际应用中,可以将当前机器的 IP 地址加入到 ID 的生成过程中,这样即使在分布式环境中也能保证 ID 的全局唯一性。 - **其他信息的整合**:根据业务需求,还可以...

    Java实现复原IP地址的方法

    "Java实现复原IP地址的方法" ...Java实现复原IP地址的方法是通过回溯算法来生成所有可能的IP地址格式,并将其存储在res列表中。该方法可以用于解决实际中的问题,例如在网络编程中,需要将数字字符串恢复成IP地址格式。

    java jsp根据不同的IP生成不同的图片 背景为同一张图片 个性签名.rar

    4. **动态生成**:根据IP地址生成不同图片的过程是动态的。每当有新的请求到来时,服务器都会根据请求的IP地址生成新的图片。这可能涉及到缓存策略,以防止频繁生成相同的图片,提高性能。 5. **响应图像**:生成...

    IP地址计算起始地址和终止地址

    EXCEL表格IP,计算起始地址和终止地址!子网掩码的测算,起始地址和终止地址中间IP地址的填充公式!

    java web springboot License生成器 (JAVA源码+图形界面)

    保证java web ,spirngboot,tomcate web安全,可以现在IP,mac,自定义参数,License生成器 (JAVA源码+界面) 其中包括license授权机制的原理和制作license的具体步骤 增加了mac 地址验证

    java 大文件ip 统计

    "Java大文件IP统计"这个主题就涉及到如何使用Java有效地处理大文件,特别是那些包含大量IP地址的文件,进行统计分析。在这个场景下,我们可能需要计算不同IP地址的数量,找出最频繁出现的IP,或者按某种顺序排列IP等...

    Java多线程端口扫描程序(IP地址段)

    通过循环和位运算,我们可以生成范围内的所有IP地址。 端口扫描程序还需要一个线程池来管理并发的线程数量,避免过多的线程导致系统资源的浪费。Java的`ExecutorService`和`ThreadPoolExecutor`可以用于创建和控制...

    Java端口扫描IP程序

    Java的InetAddress类提供了获取主机IP地址和解析IP地址的方法,结合子网掩码,可以生成一个IP地址的范围。 七、性能优化 为了加快扫描速度,可以采用以下策略: 1. 设置合适的超时时间,避免在无响应的端口上浪费...

    Java获取IP归属地

    一、ip2region,一个离线IP地址定位库和IP定位数据管理框架,10微秒级别的查询效率,提供了众多主流编程语言的 xdb 数据生成和查询客户端实现。 二、mica-ip2region,如梦技术基于ip2region做了封装,效率更高,使用...

Global site tag (gtag.js) - Google Analytics