2012-09-03 171 views
1

首先我的編程語言是Java。我使用套接字創建了一個簡單的聊天程序。它工作得很好。如何獲取內部IP地址?

我在兩臺終端實例之間的計算機(本地主機)上試過它。

我想在我的筆記本電腦或其他電腦上試用它。爲此,我需要客戶端的內部IP地址。

如何找出使用Java的客戶端的內部IP地址?

我特別想用Java解決它,而不是使用CMD或類似的東西。我的意思是 - 這不僅僅是一個常量字符串。

謝謝。

回答

1

使用下面的代碼:

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

有人告訴我我需要「Op在我的調制解調器端口「(我不知道我用英文寫的是否正確)..你知道他說的是嗎? – iLoveC

+0

@iLoveC我認爲這個鏈接可能對你有幫助.http://forums.afterdawn.com/thread_view.cfm/223583 –

+0

非常感謝你,但我使用的是linux fedora ..本教程對我仍然有效嗎? – iLoveC

4

在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

+0

有人告訴我我需要「在我的調制解調器上打開一個端口」(我不確定我用英語寫的是否正確)..你知道他說的是嗎? – iLoveC