接続をリッスンしている ServerSocket インスタンスがあります。クライアントがそれに接続するとき、接続されたソケットの IP を取得したいのですが、それを行う正しい方法が見つからないようです。
public void start() {
listenSocket = new ServerSocket(port);
connectionSocket = listenSocket.accept();
}
運が悪かったので、次のように呼び出してみました。
connectionSocket.getLocalAddress();
connectionSocket.getInetAddress.getHostAddress();
listenSocket.getLocalSocketAddress();
上記のいずれも正しい IP を返しません。"/0:0:0:0:0:0:0:1%0" または "0.0.0.0" を返します。
私は何を間違っていますか?