これを使用してリモートIPを取得しようとしています:
String remoteAddress = ((ServletRequestAttributes) RequestContextHolder
.currentRequestAttributes()).getRequest().getRemoteAddr();
コントローラーで呼び出しますが、返されます0:0:0:0:0:0:0:1
。どうしたの?
0:0:0:0:0:0:0:1
IPv6 のループバック アドレスです。127.0.0.1
これは IPv4に相当します。
マシンを 1 台しか使用していない場合、これはごく普通のことのように思えます。それ以外の場合は、詳細を教えてください。
編集
外部 (パブリック) IP を取得しようとしている場合は、次の SO 投稿を参照してください。
Java を使用して現在のマシンの IP アドレスを取得する
要するに、使えますrequest.getRemoteAddr()
。ただし、同じネットワーク上にいる場合、パブリック IP アドレスは返されません。