Как узнать внешний IP адрес из командной строки

Предполагаю, что ваша Linux машина находится за NAT роутером. Тогда то, что вы можете посмотреть для вашей машины (например в свойствах сетевого подключения или в свойствах сетевых интерфейсов) это только локальный IP, назначенный интерфейсу локальной сети. Так как вы можете узнать внешний (или WAN) IP адрес, присвоенный NAT роутеру, предпочтительно из командной строки?

Здесь пойдёт речь о том, как выяснить внешний IP из командной строки.

Вначале вам нужно установить curl, т. к. придётся полагаться на внешний веб-сервер для получения внешнего IP адреса.

На Debian, Ubuntu или Linux Mint:

$ sudo apt-get install curl

На Fedora, CentOS или RHEL:

$ sudo yum install curl

Далее список команд, которые вы можете запускать для определения внешнего IP адреса. Вы можете задать псевдоним, для использования одной из этих команд? или использовать их в скриптах командной строки.

$ curl ifconfig.me
$ curl icanhazip.com
$ curl ident.me
$ curl ipecho.net/plain
$ curl whatismyip.akamai.com
$ curl tnx.nl/ip
$ curl myip.dnsomatic.com
$ curl ip.appspot.com
$ curl ip.telize.com
$ curl curlmyip.com
# curl ip-addr.es
$ curl -s checkip.dyndns.org | sed 's/.*IP Address: ([0-9.]*).*/1/g'

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

2 комментария

  1. curl -s
    curl http://myexternalip.com/raw

    последний слизан из anonsurf (parrotsec) и стало быть работает с TOR )) проще в ~/.bashrc прописать myip()
    {
    curl http://myexternalip.com/raw
    }

    и из терминала запускать с одноименной командой «myip» прав рута не требуется

Добавить комментарий для leohab Отменить ответ

Ваш адрес email не будет опубликован. Обязательные поля помечены *