プライベートネットワーク上のサーバーには、同じネットワークのPCが接続するHttpServletがあります。この場合、getRemoteHostメソッドはホスト名の代わりにIPアドレスを返しますか?
サーバーに接続するクライアントのホスト名を知る必要があります。これを行うには、HttpServletRequestの getRemoteHostメソッドを呼び出します。
このメソッドはクライアントのPC名を返すことがあります(動作が望まれます)。また、他のメソッドはIPアドレスを返します。 (同じクライアント、同じサーバ、同じプライベートネットワーク)
はAPIは言う:
java.lang.StringでgetRemoteHostを()
は、クライアントまたは最後の完全修飾名を返します。リクエストを送信したプロキシエンジンがパフォーマンスを向上させるためにホスト名を解決できない、またはホスト名を解決しないことを選択した場合、このメソッドはIPアドレスのドット文字列形式を返します。 CGI変数の値 REMOTE_HOSTと同じHTTPサーブレットの場合、
戻り:
私はHTTPサーブレットのための値であることことがわかり、クライアントの完全修飾名を含むString CGI変数REMOTE_HOSTと同じです。どういう意味ですか?アドレスを解決するかどうかはサーバーに決まりますか?この動作を強制する方法はありますか?
サーバは、逆引き参照を行う必要があるホスト名を取得するために、IPアドレスのみを知っています。 FQDNを取得する場合は、いつでも手動で行うことができます –