Я разрабатываю приложение для Android, которому нужно получить IP-адрес в Интернете. Можно ли получить IP-адрес в Интернете без вызова внешнего сервера?
Если возможно, как я могу получить IP-адрес в Интернете без дополнительного сетевого запроса?
Я думаю, вы можете найти ответ по этому URL-адресу ниже stackoverflow.com/questions/3097589/…
Я думаю, вы можете найти ответ по этому URL-адресу ниже stackoverflow.com/questions/3097589/…
Вероятно, вы не сможете получить свой общедоступный IP-адрес без запроса к внешнему серверу, поскольку ваше устройство находится внутри локальной сети, его не волнует общедоступный IP-адрес маршрутизатора, подключенного к Интернету, потому что ему не нужно Это !
Я бы посоветовал вам использовать веб-сервисы, такие как http://checkip.amazonaws.com/, для удовлетворения ваших потребностей.
URL getIP = new URL("http://checkip.amazonaws.com/");
BufferedReader getIPReader = new BufferedReader(new InputStreamReader(getIP.openStream()));
System.out.println(getIPReader.readLine()); // prints the IP
Если вы хотите использовать более гибкий API, посмотрите ipify. Прямо на странице есть даже пример использования Java. ;)
Вы можете проверить эту ссылку и найти свой ответ stackoverflow.com/questions/3097589/…