私の仕事は、クライアントと Web サーバーの間に NAT があるかどうかを判断することです。私はこのアルゴリズムを使用しています:
- ユーザーリクエストのウェブページ
- JSP コードが実行され、要求されたサイトの IP が取得されます
- JSP コードはサーバーの内部 IP を取得します
- 2 つの IP を比較し、それらが同じ場合 - NAT がないことを意味します
私の質問は、JSP コードで要求されたサイトの IP アドレスを取得するにはどうすればよいですか? request.getRequestURL() を使用しようとしましたが、サイトの domen の名前が返されました。また、リクエストのヘッダーHostを取得しようとしましたが、どちらも機能しませんでした。さらに、DNS サービスのない特定のサーバーがあるため、DNS 名の IP を取得できません。
または、クライアントとサーバーの間にNATがあるかどうかをどのように判断できますか?