WedX - журнал о программировании и компьютерных науках

Получить общедоступный IP-адрес в текущем экземпляре EC2

Есть ли способ получить общедоступный IP-адрес текущего EC2 с помощью Amazon CLI? Я просто ищу одно строковое значение, поэтому не возвращаются ответы json-ответа.


Ответы:


1

Интерфейс командной строки (CLI) AWS можно использовать для возврата информации о любых / всех инстансах Amazon EC2. , например:

$ aws ec2 describe-instances --instance-ids i-0c9c9b44b --query 'Reservations[*].Instances[*].PublicIpAddress' --output text

54.232.200.77

Если вам нужна информация об экземпляре EC2, из которого вы выполняете команду, текущий IP-адрес можно получить через служба метаданных экземпляра:

$ curl https://169.254.169.254/latest/meta-data/

ami-id
ami-launch-index
ami-manifest-path
block-device-mapping/
hostname
iam/
instance-action
instance-id
instance-type
local-hostname
local-ipv4
mac
metrics/
network/
placement/
profile
public-hostname
public-ipv4
public-keys/
reservation-id
security-groups
services/

Итак, частный IP-адрес доступен через:

$ curl https://169.254.169.254/latest/meta-data/local-ipv4

172.31.10.221

общедоступный IP-адрес доступен через:

$ curl https://169.254.169.254/latest/meta-data/public-ipv4

54.232.200.77
31.07.2016
  • Я добавил два общедоступных IP-адреса и использовал curl 169.254.169.254/latest/meta- data / public-ipv4, но она показывает IP-адрес, который я недавно добавил. Есть ли способ перечислить все общедоступные IP-адреса в экземпляре? 27.11.2016
  • @Techiescorner, вы можете запустить что-то вроде curl http://169.254.169.254/latest/meta-data/network/interfaces/macs/09:34:54:0a:9b:4a/public-ipv4s, чтобы получить общедоступный IP-адрес для каждого интерфейса, используя их MAC-адрес (вы можете получить это из ifconfig-a) 26.02.2019
  • Приведенное ниже предложение Герцога поразить checkip.amazonaws.com проще и не требует доступа к профилю экземпляра или учетным данным IAM, которые могут быть ограничены в некоторых средах. (Например, работает с поставщиком CI) 14.08.2019
  • В Windows мне нужно использовать двойные кавычки, чтобы он работал в командной строке 06.01.2021

  • 2
    curl https://checkip.amazonaws.com
    

    это возвращает общедоступный IP-адрес.

    09.05.2019
  • Существовала ли официальная документация от AWS по этому веб-сервису? Или это какие-то из тех хакерских? Кстати, https также работает для этой веб-службы. Отличный ответ! 26.05.2019
  • Это действительно интересно. Https значительно медленнее, чем http, и, конечно, оба они намного медленнее, чем скручивание 169.254.169.254 (что не позволяет для https). 20.07.2019
  • Они задокументировали это в небольшой заметке здесь docs.aws.amazon.com/cli/latest/userguide/ 11.02.2021

  • 3

    Если ты внутри инстанса -

    $ curl icanhazip.com
    162.202.17.123
    

    вот еще один способ

    $ curl -s ifconfig.me
    162.202.17.123
    

    эти методы не ограничиваются только AWS.

    27.05.2019
  • Лично я стараюсь избегать этих веб-сайтов, поскольку я не могу контролировать, что они записывают и регистрируют по общедоступному адресу. Лучше использовать управляемую конечную точку в вашей собственной инфраструктуре, aws cli или curl на 169.254.169.254 в соответствии с другими ответами. 12.10.2020
  • Однажды им также надоест платить за доменное имя и хостинг, и ваша служба внезапно перестанет работать, потому что не может разрешить случайное доменное имя незнакомца и бесплатную услугу, на которой вы построили зависимость. 15.11.2020
  • действительно, они начали блокировать звонки из AWS. 16.04.2021
  • Я добавил еще один способ получения ip. 17.04.2021

  • 4

    Получите прикрепленный InstanceID с помощью PublicIP.

    aws ec2 describe-network-interfaces --query NetworkInterfaces[*].[Attachment.[InstanceId],Association.[PublicIp]] --output=json
    
    30.05.2019

    5

    Внутри instnace введите следующую команду:

      curl -s v4.ident.me
    
    23.08.2020

    6

    Эта команда также отобразит общедоступный IP-адрес вашего экземпляра:

    curl -s ifconfig.co
    
    09.09.2020
    Новые материалы

    Как проанализировать работу вашего классификатора?
    Не всегда просто знать, какие показатели использовать С развитием глубокого обучения все больше и больше людей учатся обучать свой первый классификатор. Но как только вы закончите..

    Работа с цепями Маркова, часть 4 (Машинное обучение)
    Нелинейные цепи Маркова с агрегатором и их приложения (arXiv) Автор : Бар Лайт Аннотация: Изучаются свойства подкласса случайных процессов, называемых дискретными нелинейными цепями Маркова..

    Crazy Laravel Livewire упростил мне создание электронной коммерции (панель администратора и API) [Часть 3]
    Как вы сегодня, ребята? В этой части мы создадим CRUD для данных о продукте. Думаю, в этой части я не буду слишком много делиться теорией, но чаще буду делиться своим кодом. Потому что..

    Использование машинного обучения и Python для классификации 1000 сезонов новичков MLB Hitter
    Чему может научиться машина, глядя на сезоны новичков 1000 игроков MLB? Это то, что исследует это приложение. В этом процессе мы будем использовать неконтролируемое обучение, чтобы..

    Учебные заметки: создание моего первого пакета Node.js
    Это мои обучающие заметки, когда я научился создавать свой самый первый пакет Node.js, распространяемый через npm. Оглавление Глоссарий I. Новый пакет 1.1 советы по инициализации..

    Забудьте о Matplotlib: улучшите визуализацию данных с помощью умопомрачительных функций Seaborn!
    Примечание. Эта запись в блоге предполагает базовое знакомство с Python и концепциями анализа данных. Привет, энтузиасты данных! Добро пожаловать в мой блог, где я расскажу о невероятных..

    ИИ в аэрокосмической отрасли
    Каждый полет – это шаг вперед к великой мечте. Чтобы это происходило в их собственном темпе, необходима команда астронавтов для погони за космосом и команда технического обслуживания..


    Для любых предложений по сайту: [email protected]