Java 6 を実行している Windows 2003 マシンで過去 6 年間正常に実行されている Java で記述されたレガシー サーバー アプリケーションがあります。
最近、Java の最新バージョンを実行している新しい Windows 2008 マシンにアプリケーションを移行しました。
アプリケーションは正常に動作しているように見えますが、奇妙な問題が 1 つあります。
このコードString remoteip=socket.getInetAddress().getHostAddress()
は、リモート クライアントの IP を返すのではなく、サーバー マシンのインターネット IP を返すようです。
これは、過去 6 ~ 7 年間、Linux および Windows 2003 マシンの両方で適切に機能していました。
すべての設定を再確認するために、IIS に小さな PHP Web サイトをセットアップし、REMOTE_ADDr 変数の値を出力しました。クライアントの正しい IP アドレスが出力されました。
Javaアプリを混乱させる可能性のあるものについての手がかりはありますか?