Javaちょこっとリファレンス ブログ

Java開発時にぜひご利用ください。

Java

[Java] getRemoteAddr とgetRemoteHostの違い

投稿日:

getRemoteAddr とgetRemoteHostの違いについてです

getRemoteAddr とgetRemoteHostの違い

結論から言うと、
getRemoteAddr はクライアントのIPアドレスを取得するメソッドで、
getRemoteHost はクライアントのホスト名を取得するメソッドです。


両方ともクライアントのIPアドレスが取得され、何が違うのかわからない時がありますが
getRemoteHostはIPからホスト名を逆引きしてホスト名を取得し、
逆引きできない時はIPアドレスを返すのでIPアドレスが取得されます。

そのため、getRemoteHostでもIPアドレスが返る場合があります。

【getRemoteAddr とgetRemoteHost】
request.getRemoteAddr()クライアントのIPアドレスを取得する
request.getRemoteHost()クライアントのホスト名を取得する
(ホスト名が取得できない場合はIPアドレスを返す)

一つ注意点があり、getRemoteHostでホスト名を取得したい場合はserver.xmlの
ConnectorにenableLookups="true"を指定しておく必要があります。

例)server.xmlにenableLookups="true"を指定した例

関連項目


スポンサーリンク

スポンサーリンク

-Java

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

[Java] 二重ループを抜ける

Javaで二重ループを抜けるは、ラベルbreakを使用します。 二重ループを抜ける 二重ループ内で単 ...

[Java] Date型日付の前後を比較する(.compareTo)

Date型日付の前後を比較するには、.compareToを使用します。 サンプルソース 例)日付オブ ...

[Java] オブジェクトからクラス名を取得する(.getCanonicalName)

オブジェクトからクラス名を取得するには、Classクラスの.getCanonicalName()を使 ...

[Java] 数値の符号を取得する(Math.signum)

数値の符号を取得するには、signumを使用します。 構文 (java.lang.Math) pub ...

[Java] 文字列の長さを取得する(length、codePointCount)

文字列の文字数を取得するにには、.length() または .codePointCount() を使 ...