2012-03-04 56 views
0

Possible Duplicate:
Java sockets - java.net.ConnectException: Connection refused: connectJavaはエラーソケット:java.net.ConnectException:接続が拒否されました:私はソケットを使用して通信し、簡単なチャットプログラムを作成しました

を接続します。私がlocalhost上で実行しているときは、すべてうまく動作します。しかし、私のIPを使用してクライアントプログラムとサーバープログラムをリンクしようとすると、問題が発生します。

http://www.canyouseeme.org/は、ポート9999で私のサーバーに接続することができます。これは、サーバーが正常で、ポートが開いていることがわかりますです。しかし、私のクライアントは接続できません。

エラーログ...

java.net.ConnectException: Connection refused: connect 
at java.net.PlainSocketImpl.socketConnect(Native Method) 
at java.net.PlainSocketImpl.doConnect(Unknown Source) 
at java.net.PlainSocketImpl.connectToAddress(Unknown Source) 
at java.net.PlainSocketImpl.connect(Unknown Source) 
at java.net.SocksSocketImpl.connect(Unknown Source) 
at java.net.Socket.connect(Unknown Source) 
at java.net.Socket.connect(Unknown Source) 
at java.net.Socket.<init>(Unknown Source) 
at java.net.Socket.<init>(Unknown Source) 
at Client.connect(Client.java:129) 
at Client.main(Client.java:47) 

誰がこれを引き起こしている可能性がありますどのような任意のアイデアを持っていますか?前もって感謝します。完全なソースコードへ

リンク:

http://pastebin.com/2XftHtn9

+0

同じサブネットにありますか?そのポートをファイアウォールしているネットワークアプライアンスはありますか?サーバー上のローカルファイアウォールはどうですか?またはTCP Wrappers?あなたのlocalhostからポートにtelnetで接続できますか、それとも単なるアプリケーションですか? – nsfyn55

+0

質問を再投稿しないでください。 –

答えて

2

あなたのLAN内からそのパブリックIPアドレスを使用して独自のサーバーに接続しようとしていますか?ほとんどのSoHoルータでは、ポート転送はLAN-to-LANではなくWAN-to-LANでのみ動作します。あなたが探しているものは「ヘアピンNAT」と呼ばれ、多くのSoHoルータはそれをしません。 LAN内部からサーバーにアクセスするには、パブリックIPアドレスではなく、内部のIPアドレスを使用します。

+0

ありがとう、私は友人にクライアントを送信し、彼らが接続できるかどうかを確認します。 – user1248420

+0

あなたは正しいです!そんなにありがとうございます:D – user1248420

+0

これは問題です。サーバは '0.0.0.0'にバインドされているので(サーバコードにIPアドレスが指定されていないため)、ローカルホスト上の' localhost'(またはローカルのプライベートネットワーク上のマシンのIPアドレス)に接続するだけです。ローカルマシン上のクライアント。 –

関連する問題