В облаке Google найдите кратковременный IP-адрес виртуальной машины, находящийся в терминале виртуальной машины (ssh или telnet). - PullRequest
0 голосов
/ 12 декабря 2018

После входа в виртуальную машину GCP с использованием ssh или telnet я хочу найти внешний эфемерный IP-адрес виртуальной машины.(ifconfig -a не показывает это)

1 Ответ

0 голосов
/ 12 декабря 2018

Внешний публичный IP-адрес не привязан к сетевому интерфейсу виртуальной машины.Вместо этого сетевой интерфейс получил частный IP-адрес.

Внутри VPC есть NAT-to-One.Публичный IP-адрес привязан к публичной стороне NAT.Вот почему вы не можете видеть публичный IP-адрес с ifconfig.

. Google сохраняет публичный IP-адрес в экземпляре metadata.

. Выполните эту команду, чтобы получить публичный IP-адрес:

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

У IP-адреса нет новой строки, поэтому ваша командная строка будет добавлена ​​к строке IP-адреса.

Вы также можете сохранить публичный IP-адрес в переменной среды изатем распечатайте его на консоли.

export PUBLIC_IP=$(curl -H "Metadata-Flavor: Google" http://metadata/computeMetadata/v1/instance/network-interfaces/0/access-configs/0/external-ip)
echo $PUBLIC_IP

Сохранение и получение метаданных экземпляра

...