ServletでクライアントのIP取得時に明示的にIPv4を取得する方法です。
解説
サーブレット側でクライアントのIPアドレスを取得するには、以下のメソッドを使用します。
1 |
HttpServletRequest.getRemoteAddr() |
しかし、環境によってはIPv6のIPアドレスが取得されてしまうことがあります。
IPv6が取得されてしまう場合は、
JVMパラメータに以下を指定すればIPv4アドレスが取得できます。
1 |
-Djava.net.preferIPv4Stack=true |
Eclipse+Tomcatの環境の場合は、
①メニュー「ウィンドウ(W)」→「設定(P)」を選択し、設定画面で「Tomcat」→「JVM設定」を選択し、
「JVMパラメータへ追加」欄に上記パラメータを追加してTomcatを起動すればOKです。