4

Я ищу способ получить свой IP-адрес с помощью командной строки в Linux. Я знаю, что когда вы набираете "ifconfig", вы можете получить свой локальный IP-адрес (то есть 192.168.0.103), но я ищу свой IP-адрес, полученный от моего провайдера. Как я могу получить это из Linux, не посещая какой-либо сайт?

3 ответа3

6

Если вашей машине назначен локальный IP-адрес, он может не знать ваш общедоступный адрес. Вы можете запросить сервер не в вашей локальной сети, чтобы узнать ваш общедоступный адрес.

$ curl whatismyip.org
1

Если ваш компьютер находится, например, в корпоративной локальной сети с брандмауэром для преобразования адресов, к сожалению, на вашем компьютере нет информации о внешне видимом адресе. Ваш компьютер знает, что у него есть локальный IP-адрес (например, 192.168.0.103), который можно использовать для подключения к любому хосту в Интернете. Брандмауэр для преобразования адресов полностью прозрачен с точки зрения вашего компьютера.

Единственный способ - использовать внешнего "наблюдателя", такого как whatismyip.org, чтобы помочь. Если вам не нравится доступ к нему через полноценный веб-браузер, это альтернатива, как отметил Самуэль К.

0

Добавьте это в файл ~/.bashrc в Linux или ~/.bash_profile на Mac.

alias myip='wget http://automation.whatismyip.com/n09230945.asp -O - -q ; echo'

Тогда беги

source ~/.bashrc

или же:

source ~/.bash_profile

Source активирует внесенные вами изменения в ваш bash-файл. Это требуется только один раз.

Теперь введите «myip» из командной строки, и вы получите публичный IP-адрес.

:# myip
23.23.133.111

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .