Java で TCP/IP を使用してチャットするためのアプリケーションを開発しました。これまでのところ、サーバーとクライアントを同じマシンで実行しているときに機能しますが、LAN経由で機能させたいと考えています。
クライアントとサーバーで使用しているのと同じポートに対して、ルーターでポート転送を使用し、それをマシンのIP(サーバー)に転送することがわかりました。また、ファイアウォールに注意する必要があることもわかりました。
未使用のメディア ハブ ルーターでは、(4444) を使用してポートを転送し、TCP プロトコルを使用してマシンのローカル IP (192.168.0.21) に転送しました。また、ポートがブロックされていないことも確認しました。
ファイアウォールについては、Windows ファイアウォールが有効になっていないことを確認し、カスペルスキー ウイルス対策ファイアウォールをオフにしました。
これまでのところ、VMware マシンと LAN 経由で通信することはできませんでした。
ソケットとサーバーソケットのコードは次のとおりです。
クライアント:
int portNumber = 4444;
InetAddress host = InetAddress.getLocalHost(); // I also did try changing the host to a String and making host = InetAddress.getLocalHost().getHostAddress();
Socket link = new Socket(host, portNumber);
サーバ:
int portNumber = 4444;
ServerSocket serverSocket = new ServerSocket(portNumber);
link = serverSocket.accept();
私が間違っていること、または何かが欠けていることは何か分かりますか?