Найти в Дзене
BASH DAYS | Linux Factory

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

Порой из консоли необходимо быстро узнать свой внешний айпишник. Например, накрутил какой-нибудь VPN, а графической оболочки нет, чтобы зайти на сайт и визуально глянуть где сегодня находится моя жопа.
Да и в bash скриптах иногда хочется без длинных команд и тонны кода обойтись. Короче как говорит, все уже придумано за нас. А если еще и алиасы накрутить, вай вай, пэрсик.
Я пользуюсь двумя сервисами:
curl ifconfig.me
curl geofind.me
Первый выдаст чисто айпишник, который ты сможешь загнать в переменную и потом его использовать.
Второй помимо айпишника, вычислит местоположение.
94.227.165.240
Aeza International Ltd
Ulitsa Pushkina, Dom Kolotushkina, Austria ➕ Подпишись на BashDays в телеграм Второй вариант использую намного реже. Так как привык всё усложнять, сначала получаю ip через ifconfig.me, а потом уже через whois <ip>.
Подобных сервисов полно, я показал чем пользуюсь сам.
Альтернативы:
curl ipinfo.io/ip
curl ipecho.net/plain
curl icanhazip.com
curl ident.me
curl api64.ip
Оглавление

Порой из консоли необходимо быстро узнать свой внешний айпишник. Например, накрутил какой-нибудь VPN, а графической оболочки нет, чтобы зайти на сайт и визуально глянуть где сегодня находится моя жопа.

Да и в bash скриптах иногда хочется без длинных команд и тонны кода обойтись. Короче как говорит, все уже придумано за нас. А если еще и алиасы накрутить, вай вай, пэрсик.

Я пользуюсь двумя сервисами:

curl ifconfig.me
curl geofind.me


Первый выдаст чисто айпишник, который ты сможешь загнать в переменную и потом его использовать.

Второй помимо айпишника, вычислит местоположение.

94.227.165.240
Aeza International Ltd
Ulitsa Pushkina, Dom Kolotushkina, Austria

Подпишись на BashDays в телеграм

Второй вариант использую намного реже. Так как привык всё усложнять, сначала получаю ip через ifconfig.me, а потом уже через whois <ip>.

Подобных сервисов полно, я показал чем пользуюсь сам.

Альтернативы:

curl ipinfo.io/ip
curl ipecho.net/plain
curl icanhazip.com
curl ident.me
curl api64.ipify.org
curl api.ip.sb/ip
curl ipv4.wtfismyip.com/text
curl ip2location.io/ip
curl checkip.amazonaws.com


С дополнительной инфой:

curl ip-api.com/line
curl ipinfo.io
curl api.myip.com
curl 'api.ipregistry.co/?key=tryout'


В списке с «дополнительной инфой» есть сервисы которые прям богатый JSON выплёвывают, потыкай.

Я раньше обладал безлимитным API ключом для MaxMind, вот там да, был полный фарш. Можно было по IP узнавать вплоть до названия организации. Даже софтину в бородатые 2000е писал, которая пользовалась популярностью у пентестеров.

Но если у тебя есть ключик, узнать свой айпишник можешь через команду:

curl -H "Authorization: KEY" https://geoip.maxmind.com/geoip/v2.1/city/me

Ааа, еще вариант с дигом есть, но оно длинное:

dig +short myip.opendns.com @resolver1.opendns.com

Есть и минусы. Результат зависит от доступности сервисов. Если сервис выплюнет соплю > 200, увы все поломается.

Поэтому если используешь это в bash скриптах, советую добавлять сервисы в массив пачкой и делать ротацию. Если один выдал соплю, брать информацию с другого. В принципе это бест-практики в любых алгоритмах для отказоустойчивых систем.

Рекомендую почитать