Звучит забавно, но как я могу получить внешний IP-адрес от клиента?
Я пробовал несколько вещей, но у меня не получилось.
во-первых, я пытался
request.getRemoteAddr()
и я получаю результат как: 0: 0: 0: 0: 0: 0: 0: 1
на втором месте, которое я пробовал
InetAddress ip = InetAddress.getLocalHost();
ip.getHostAddress());
и я получаю результат как: 127.0.0.1
на третьем месте я пытался
URL whatismyip = new URL("http://checkip.dyndns.org:8245/");
BufferedReader inIP = new BufferedReader(new InputStreamReader(whatismyip.openStream()));
String IPStrOld = inIP.readLine(); //IP as a String
String IPStrNewest = IPStrOld.replace("<html><head><title>Current IP Check</title></head><body>Current IP Address: ", "");
String IPStr = IPStrNewest.replace("</body></html>", "");
, но я получаю только внешний IP-адрес сервера
и дляпоследнее место
URL whatismyip = new URL("http://automation.whatismyip.com/n09230945.asp");
BufferedReader inIP = new BufferedReader(new InputStreamReader(whatismyip.openStream()));
String ip = inIP.readLine();
это то же самое, я получаю только внешний IP-адрес сервера
Итак, в чем же дело?