Иногда надо узнать внешний IP адрес сервера, для этого можно воспользоваться сайтом curlmyip.ru.
Зачастую сервер может стоять за NAT и из консоли можно получить только приватный адрес сервера.
Для того что бы узнать вешний IP поможет следующий скрипт:
1 2 3 | #!/bin/bash out=$(curl curlmyip.ru 2>&1 | egrep "([0-9]{1,3}\.){3}" ) echo "IP: $out" |
Скрипт вернет внешний IP в переменную out, после чего значение можно вывести в консоль (как в примере) или использовать далее по скрипту.
Сценарий выше, проверяет что полученный адрес является только IPv4.
Сценарий ниже более универсальный и исключает все проверки
1 2 3 | #!/bin/bash out=$(curl -s curlmyip.ru) echo "IP: $out" |
Примеры для других языков, доступны в GitHub https://github.com/Gnoztis/curlmyip