2012-08-02 159 views
1

使用java中的TCP/IP套接字嘗試創建客戶端服務器應用程序。該程序在本地運行並且通過局域網運行良好,但是當我使用互聯網IP地址時,客戶端連接被拒絕。Java TCP/IP套接字互聯網連接問題

我使用this網站來獲取我的IP地址,並添加了一個防火牆條目以使用(端口4445)來解除阻塞端口im。

我幾乎可以肯定問題在於某種阻止端口的安全措施。我在同一臺PC上運行客戶端和服務器,但使用前面提到的網站的IP地址有什麼關係?

如果我能得到一個測試端口的方法列表實際上是打開的,或者是爲了讓我的程序運行而嘗試的列表,那將非常棒!

+0

_「請問我在同一臺PC上運行客戶端和服務器,但使用前面提到的網站的IP地址?」幾乎可以肯定。 – 2012-08-02 02:04:45

+0

所以這意味着爲了正確地測試我的軟件,我需要在單獨的網絡上運行客戶端? – 2012-08-02 02:37:26

回答

2

該網站很可能會給你的電腦連接到互聯網的網關的IP地址,如果網關超出了你的控制範圍(據我所知大多數情況下)沒有辦法使用該IP地址來測試您的程序。下面是一些建議:

  1. 嘗試http://aws.amazon.com,一旦註冊,您有一年的免費訪問微服務器(可公開通過DNS訪問/彈性IP)
  2. 如果你的電腦有一個公共IP地址,你不需要該網站找出它是什麼。只需檢查您的網絡適配器控制面板。
0

服務器在哪裏?如果您的服務器位於某些商業主機中,則可能是您使用的端口被阻止。此外,如果您在本地網絡中使用路由器或路由器的調制解調器,則應檢查nat表。

+0

服務器正在使用我正在使用的當前PC上運行,因爲客戶端程序 – 2012-08-02 03:37:14

+0

我還使用了在線服務,該服務檢查是否可以看到通過端口運行的服務。它返回正面,所以它必須是客戶端從套接字讀取的問題,或者服務器寫入套接字 – 2012-08-02 03:39:50

+0

無論如何嘗試檢查路由器中的NAT表 – 2012-08-02 08:36:48