Как я могу проверить системный IP-адрес / имя хоста в Java? - PullRequest
1 голос
/ 27 декабря 2010

есть ли способ узнать системный IP-адрес без использования внешнего процесса? Я хочу получить эту информацию для своего приложения, но, если возможно, в чистой Java.

Ответы [ 6 ]

3 голосов
/ 27 декабря 2010

Это соответствует вашим потребностям?

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

public class GetClientIP extends Applet {
  public void init() {
    try {
     InetAddress thisIp =
        InetAddress.getLocalHost();
     System.out.println("IP:"+thisIp.getHostAddress());
     }
    catch(Exception e) {
     e.printStackTrace();
     }
    }
}
1 голос
/ 07 сентября 2011

InetAddress.getLocalHost (). GetHostAddress () вызов не всегда работает; иногда возвращает 127.0.0.1.

См. java InetAddress.getLocalHost (); возвращает 127.0.0.1 ... как получить РЕАЛЬНЫЙ IP? для получения более подробной информации и других опций.

0 голосов
/ 27 декабря 2010

Рассмотрите возможность использования NetworkInterface класса.

0 голосов
/ 27 декабря 2010

Привет, да, это возможно с классом InetAddres. Проверьте эту ссылку JAVA API , и вам нужен метод getHostAddress ()

0 голосов
/ 27 декабря 2010
0 голосов
/ 27 декабря 2010

Если вы хотите найти IP-адрес в Java-приложении

 InetAddress localIP=InetAddress.getLocalHost();

и если вы используете веб-приложение

  request.getRemoteAddr();
...