Javaで「外部」IPアドレスを取得する

コントローラー内など,httpリクエストを拾える場所であれば

request.getRemoteAddr();

とかが使えるが,そうでない場合は外部ツールから,自分自身のIPを問い合わせる形で対応

import java.net.*;
import java.io.*;

URL ip = new URL("http://checkip.amazonaws.com");
BufferedReader in = new BufferedReader( new InputStreamReader( ip.openStream() ));

String ipadd = in.readLine();
System.out.println(ipadd);