如何获得内部IP地址?

时间:2012-09-03 01:49:28

标签: java sockets ip internal

首先,我的编程语言是Java。我使用套接字创建了一个简单的聊天程序。它工作得很好。

我在两台终端实例之间的计算机(localhost)上试过它。

我想在笔记本电脑或其他电脑上试用。为此,我需要客户端的内部IP地址。

如何使用Java找出客户端的内部IP地址?

我特别想用Java来解决它,而不是使用CMD,或类似的东西。我的意思是 - 这不仅仅是一个常数字符串。

2 个答案:

答案 0 :(得分:5)

在Java中,有一个 InetAddress 类代表IP地址(及其相应的主机名,在某些情况下)。

例如,让我们获取我的IP地址和主机名:

import java.net.InetAddress;

public class Main {

    public static void main(String[] args) {
        try {
            InetAddress i = InetAddress.getLocalHost();
            System.out.println(i);                  // host name and IP address
            System.out.println(i.getHostName());    // name
            System.out.println(i.getHostAddress()); // IP address only
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

}


输出(在我的情况下):

  

LLEITE / 192.168.1.100
  LLEITE
  192.168.1.100

答案 1 :(得分:0)

使用以下代码:

InetAddress ownIP=InetAddress.getLocalHost();
System.out.println("IP of my system is := "+ownIP.getHostAddress());`