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] LocalDateTimeクラスで日時を生成する

Java8.0から導入された、 java.time.LocalDateTimeクラスで日時を生成する ...

[Java共通部品] 文字列のバイト数を取得する

文字列のバイト数を取得するサンプル共通関数です。 サンプルソース 例)引数に指定した文字列のバイト数 ...

[Java] 使用可能なプロセッサ数を取得する

使用可能なプロセッサ数を取得するには、 Runtime#availableProcessors() ...

[Java] メモリ容量を取得する

Javaで使用できるメモリ容量を取得するには java.lang.Runtimeクラスを使用します。 ...

[Java] Listオブジェクトから指定した要素以外を削除する(.retainAll)

Listオブジェクトから指定した要素以外を削除するには、.retainAllを使用します。 サンプル ...