Jak najít externí IP adresy Google Cloud VM?

Potřebujete zjistit externí IP adresy na serveru Google Cloud Platform (GCP)?

Pracujete na projektu, kde je klíčové získat veřejnou IP adresu konkrétní instance virtuálního počítače pro vaši aplikaci?

Mám pro vás skvělou zprávu – tento úkol lze vyřešit velice rychle.

Zřejmě jste se pokusili o použití příkazu ifconfig, ale jak jste si mohli všimnout, výsledky zobrazují pouze interní IP adresy.

GCP, stejně jako AWS, nabízí uživatelsky přívětivé webové rozhraní, kde lze veřejnou IP adresu snadno dohledat. Nicméně, pokud potřebujete získat tuto IP přímo na serveru, následující příkazy vám poskytnou rychlé řešení.

Zjištění externí IP na virtuálním stroji GCP

Znám dva způsoby, jak tohoto dosáhnout. První z nich využívá příkaz gcloud.

gcloud compute addresses list

Tento příkaz vám zobrazí seznam všech IP adres v rámci vašeho projektu. Je to užitečné pro odstraňování problémů nebo pro rychlý přehled, pokud jste již přihlášeni k virtuálnímu počítači.

Zde je příklad výstupu:

[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
etechblog.cz-nexus  xx.xx.xx.xx      INTERNAL  GCE_ENDPOINT           us-west1  default  IN_USE
etechblog.cz               xx.xx.xx.xx                                     us-west1           IN_USE
etechblog.cz-tools          xx.xx.xx.xx                                   us-west1           IN_USE
[email protected]:~#

Druhým způsobem je využití příkazu curl pro přístup k metadatům instance.

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

Důležité upozornění: Pokud používáte více síťových rozhraní, je nutné změnit číslo 0 v network-interfaces/0 na 1, 2, atd., podle konkrétní konfigurace.

Metadata nabízejí širokou škálu informací, a to nejen IP adresu.

[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]:~#

Vidíte, co mám na mysli? Tato data se dají skvěle využít pro automatizaci a generování reportů.

Pokud potřebujete zjistit interní IP adresu, můžete použít následující příkaz:

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

Zajímá vás správa GCP? Podívejte se na tento skvělý online kurz.

Líbil se vám tento článek? Sdílejte ho s ostatními!