Можно ли получить ваш публичный IP-адрес через cmd, не используя такие сайты, как http://whatismyipaddress.com/? Я за роутером.
Пожалуйста, не стесняйтесь идти как можно более подробно. Я учусь на экзамен Net+
Можно ли получить ваш публичный IP-адрес через cmd, не используя такие сайты, как http://whatismyipaddress.com/? Я за роутером.
Пожалуйста, не стесняйтесь идти как можно более подробно. Я учусь на экзамен Net+
Вы можете использовать PowerShell Invoke-RestMethod:
PS > Invoke-RestMethod ipinfo.io/ip
99.109.97.210
Или псевдоним:
PS > irm ipinfo.io/ip
99.109.97.210
Ты не можешь Зачем? Там нет четкого определения «публичный IP-адрес». Я бы отметил, что ответ - это массивная абстракция, достаточно хорошая, чтобы объяснить мою точку зрения, но изобилующая незначительными пробелами. Не стесняйтесь комментировать большие (так что я могу подключить их).
По сути, все общедоступные IP-адреса - это адреса в подсети, которые не зарезервированы для частного использования. В отношении сетевого стека нет различий между публичным и частным IP-адресами. Это просто маршрутизация между подсетями. Теоретически, в закрытой сети, хотя это ужасная практика, вы можете использовать диапазон общедоступных IP-адресов, а обратное действие - использование адреса RFC 1918 в общедоступном Интернете может привести к поломке.
Если я запускаю pathping (и хотя я не желаю выкладывать свой IP-адрес в интернете, но это не cgn, а начинается с 101)
Мой IP-адрес не указан ни на одном маршруте (поэтому ... ваш компьютер может не знать о своем публичном IP-адресе).
Понятие публичного IP-адреса также туманно. Что бы это было за двойным nat (eww!) Или даже тройным nat (возможно, с перекрывающимися диапазонами IP-адресов!). Что это будет за CGN или даже закрытой сетью?
По сути, каждому маршрутизатору или системе просто необходимо знать следующий переход, и у вашего компьютера нет необходимости или способа узнать, какой у него публичный IP-адрес.
Причина, по которой внешняя служба может найти ваш «общедоступный» IP-адрес, заключается в том, что сообщение было доставлено на сервер. Ему также не нужно знать, является ли это компьютер конечного пользователя, прокси-сервер, за которым у вас есть компьютер конечного пользователя, маршрутизатор / коммутатор или даже тостер.
Там нет ничего автоматически встроенного в Windows, что сделает это. Как и другие пользователи в прошлом, вы можете попробовать что-то вроде:
C:\> nslookup myip.opendns.com resolver1.opendns.com
и используйте DNS-запрос для возврата вашего публичного IP-адреса. Ответ изначально был найден здесь.
Попробуй это. Вы можете использовать% MyIP% в качестве переменной или просто для отображения.
@echo off
nslookup myip.opendns.com resolver1.opendns.com | find "Address" >"%temp%\test1.txt"
more +1 "%temp%\test1.txt" >"%temp%\test2.txt"
del %temp%\test1.txt
set /p MyIP=<%temp%\test2.txt
del %temp%\test2.txt
set MyIP=%MyIP:~10%
cls
echo .
echo %MyIP%
echo .
На ваш вопрос невозможно ответить так, как он есть, потому что вы задаете не тот вопрос.
Вы должны были спросить:
Как получить WAN- адрес моего интернет-соединения из командной строки?
Адрес WAN может быть общедоступным или частным IP-адресом:
Все зависит от того, как интернет-провайдер настроил свою сеть для подключения к вашей, чтобы предоставить вам интернет-услугу.
Вот решение с использованием Powershell:
@powershell -NoProfile -Command "(new-object net.webclient).DownloadString('http://www.trackip.net/ip')"