查找实例的 IP 地址

了解如何查找实例的外部和内部 IP 地址

准备工作

执行此任务所需的权限

您必须拥有以下权限才能执行此任务:

  • 针对实例的 compute.instances.get 权限

查看 IP 地址

您可以通过使用 Google Cloud Consolegcloud 命令行工具Compute Engine API 来查看实例的内部和外部 IP 地址。

控制台

在 Google Cloud Console 中,转到虚拟机实例页面。如果虚拟机实例具有外部 IP 地址,则该地址会显示在外部 IP 列下方。如果虚拟机没有外部 IP 地址,您可以为其分配一个

转到“虚拟机实例”页面

显示内部和外部 IP 的虚拟机实例页面。

gcloud

如需使用 gcloud compute 查看实例的内部和外部 IP 地址,请使用 instances list 子命令。

gcloud compute instances list

您的输出应与以下内容类似:

NAME              ZONE            MACHINE_TYPE     PREEMPTIBLE  INTERNAL_IP  EXTERNAL_IP    STATUS
hulk              us-central1-c   m1-ultramem-160  true         192.0.2.1                   RUNNING
my-instance       us-central1-c   e2-standard-2                 192.51.100.1  203.224.0.113 RUNNING

如需使用 gcloud compute 查看特定实例的内部或外部 IP 地址,请使用带 --format 标志的 instances describe 子命令来过滤输出。例如:

  • 如需查看特定实例的内部 IP,请运行以下命令:

    gcloud compute instances describe instance-name \
      --format='get(networkInterfaces[0].networkIP)'
    
    192.51.100.1
    
  • 如需查看特定实例的外部 IP,请运行以下命令:

    gcloud compute instances describe instance-name \
      --format='get(networkInterfaces[0].accessConfigs[0].natIP)'
    
    203.224.0.113
    

instance-name 替换为您要查看其内部或外部 IP 的实例的名称。

API

instances.get 方法发出 GET 请求。

 GET https://compute.googleapis.com/compute/v1/projects/project-id/zones/zone/instances/instance-name
 

替换以下内容:

  • project-id:此查询的项目 ID。
  • zone:您要查询的实例所在的地区。
  • instance-name:要返回的实例资源的名称。

您的响应正文应与以下代码段类似:

{
  ...
  "networkInterfaces": [
    {
      ...
      "networkIP": "192.51.100.1",
      ...
      "accessConfigs": [
        {
          ...
          "name": "external-nat",
          "natIP": "203.224.0.113",
          ...
        }
      ],
      ...
    }
  ],
  ...
}

以下字段包含所需的信息:

  • networkIP 是已分配的内部 IP 地址。
  • natIP 是已分配的外部 IP 地址。