Jak znaleźć zewnętrzny adres IP maszyny wirtualnej Google Cloud?

Lokalizujesz zewnętrzne adresy IP na serwerze GCP.

Czy pracujesz nad projektem, w którym musisz pobrać zewnętrzny (internetowy/publiczny) adres IP odpowiedniej instancji maszyny wirtualnej dla aplikacji?

Dobra wiadomość – możesz je szybko zdobyć.

Jestem pewien, że spróbowałbyś uruchomić polecenie ifconfig. I można zauważyć, że wyniki zawierają tylko wewnętrzny adres IP.

GCP i AWS mają przyjazny interfejs sieciowy, w którym można zobaczyć publiczny adres IP, ale jeśli potrzebujesz pobrać je bezpośrednio na serwer, pomogą ci następujące polecenia.

Pobieranie zewnętrznego adresu IP na maszynie wirtualnej GCP

Jestem świadomy dwóch możliwych sposobów. Pierwszym z nich jest użycie polecenia gcloud.

gcloud compute addresses list

Powyższe polecenie pokaże ci wszystkie adresy IP twojego projektu. Przydatne do rozwiązywania problemów lub szybkiego przeglądu, gdy jesteś zalogowany na maszynie wirtualnej.

Były:

[email protected]:~# gcloud compute addresses list
NAME                  ADDRESS/RANGE   TYPE      PURPOSE       NETWORK  REGION    SUBNET   STATUS
instance-1           xx.xx.xx.xx                                   us-west1           IN_USE
newsblog.pl-nexus  xx.xx.xx.xx      INTERNAL  GCE_ENDPOINT           us-west1  default  IN_USE
newsblog.pl               xx.xx.xx.xx                                     us-west1           IN_USE
newsblog.pl-tools          xx.xx.xx.xx                                   us-west1           IN_USE
[email protected]:~#

a drugi to użycie polecenia curl do metadanych.

curl -H "Metadata-Flavor: Google" http://metadata/computeMetadata/v1/instance/network-interfaces/0/access-configs/0/external-ip

Uwaga: jeśli masz wiele interfejsów sieciowych, musisz odpowiednio zmienić 0 po interfejsach sieciowych na 1 lub 2.

Metadane są potężne; możesz pobrać wiele metryk.

[email protected]:~# curl -H "Metadata-Flavor: Google" http://metadata/computeMetadata/v1/instance/
attributes/
cpu-platform
description
disks/
guest-attributes/
hostname
id
image
licenses/
machine-type
maintenance-event
name
network-interfaces/
preempted
remaining-cpu-time
scheduling/
service-accounts/
tags
virtual-clock/
zone
[email protected]:~#

Widzisz co mam na myśli?

Może to być przydatne do raportowania i automatyzacji.

Jeśli potrzebujesz również uzyskać wewnętrzny adres IP, użyj poniższego polecenia.

curl -H "Metadata-Flavor: Google" http://metadata/computeMetadata/v1/instance/network-interfaces/0/ip

Uczysz się administracji GCP? Sprawdź to fantastyczne kurs online.

Podobał Ci się artykuł? Co powiesz na dzielenie się ze światem?