Команда Windows «ipconfig» может показывать только параметры интерфейсов Ethernet с моего компьютера (даже с ipconfig /all
аргументом). Он может отображать подробную информацию об интерфейсе, но никогда не отображает мой внешний IP-адрес в сети NAT .
Однако есть несколько веб-сайтов, таких как «Какой у меня IP-адрес», которые могут получить и показать мой внешний IP-адрес. Вот мне и интересно, возможно ли получить это значение извне? Должен ли я ожидать, что есть какой-то способ получить эту информацию из командной строки на моем локальном компьютере ...
Мне нужно получить это значение для входа в приложение, которое я делаю с VBScript . Есть ли способ сделать это из cmd
Windows?
Ответы:
Теперь, используя предоставленный Оливер сайт, это можно сделать в VBScript.
Есть аналогичный метод для PowerShell.
источник
wscript
/cscript
.Проблема в том, что это не ваш IP-адрес. Это IP-адрес вашего роутера.
Таким образом, вы никогда не сможете получить его, не пройдя через маршрутизатор. И самый простой способ - просто заставить маршрутизатор получать сайт для вас (как вы уже заметили). Потому что маршрутизатор будет использовать свой IP-адрес для получения этого сайта.
При этом, вы можете сделать это легко с помощью ifconfig.me/ip . Теперь, если у вас есть
curl
, вы уже сделали, если нет: Wget / cURL альтернатива родной для Windows?источник
Создайте скрипт VB для запуска на досуге.
Введите это в текстовый файл:
Закройте текстовый файл и переименуйте его в ip.vbs (сохраните его в C: для этого примера)
В окнах откройте окно DOS (запустить CMD) ( ха! Я только что понял, если вы поменяете местами, что это становится запустить DMC !! )
Убедитесь, что вы находитесь в c: / (если нет, введите c: & нажмите enter, затем cd .. & введите несколько раз, пока не увидите C:>)
В командной строке DOS введите:
и вы сразу увидите свой внешний IP.
Если вы поместите файл vbs на USB-ключ или что-то еще (и не забудьте запустить cscript ip.vbs в командной строке dos, но убедитесь, что вы находитесь в том же каталоге, что и файл ip.vbs), вы можете взять это с собой. куда бы вы ни пошли и запустили файл .vbs на любом компьютере, чтобы увидеть их внешний IP.
Еще одно примечание: строка с адресом icanhazip.com может быть изменена на любое из следующего:
Отредактируйте, вы также можете запустить файл ip.vbs в окнах, не заходя в окно DOS, и он просто появится в небольшом всплывающем окне.
источник
Я наткнулся на этот сайт, когда искал эквивалент PowerShell, и подумал, что поделюсь этой командой, если кто-то еще будет искать:
Более подробная информация доступна здесь, если они вам нужны - http://jfrmilner.wordpress.com/2012/12/22/powershell-quick-tip-03-whats-my-external-ip-address-windows-command-line/
источник
Чтобы получить внешний IP-адрес, вам нужно спросить что-то за пределами сети и попросить его сообщить, какой ваш IP-адрес «выглядит» для него. Это можно сделать с помощью сценариев, выполнив запрос к странице, с которой легко проанализировать результат, и получая по ней IP-адрес, но в Windows нет встроенного инструмента, который бы мог просто сказать вам, каков ваш внешний IP-адрес. Вам нужно будет написать его самостоятельно или найти и загрузить.
источник
Используя что-то вроде DynDNS для назначения вашего IP-адреса DHCP доменному имени, вы можете затем выполнить
nslookup
или проверить связь (если ваш маршрутизатор настроен на ответ) вашего доменного имени и извлечь из него IP-адрес.Единственная другая утилита Windows
traceroute
, но она будет показывать только исходящий шлюз, к которому вы подключаетесь, а не IP-адрес вашего маршрутизатора, который подключается к этому шлюзу.Редактировать: Поскольку для извлечения строки IP-адреса требуется немного синтаксического анализа вышеизложенного, и он
ifconfig.me
имеет хороший разреженный ответ, вот несколько вариантов сценария Боба, функция может проверить отсутствие ответа и вернуть хороший чистый IP адрес для использования в скрипте, если сервер работает.источник
Если ваш маршрутизатор поддерживает Universal Plug & Play (UPnP), вы можете запросить его IP-адрес (а).
В Windows вы можете запросить такую информацию с помощью WMI и из командной строки с помощью инструмента WMIC.
источник
Как уже говорили другие, вам нужно полагаться на внешний сервис. Я бы порекомендовал http://www.externalip.net
Вы можете использовать http://api.externalip.net/ip, чтобы получить IP в текстовом формате. Он оказался быстрым и надежным, плюс его неограниченное использование.
источник