Google Cloud VM의 외부 IP를 찾는 방법은 무엇입니까?

GCP 서버 환경에서 외부 IP 주소를 확인하는 방법을 알아보고 계신가요?

특정 VM 인스턴스의 외부 (인터넷/공개) IP 주소가 필요한 프로젝트를 진행 중이신가요?

다행히도, 이 정보를 빠르게 얻을 수 있습니다.

ifconfig 명령어를 실행해 보셨을 수도 있지만, 결과에는 내부 IP 주소만 표시되는 것을 확인하셨을 겁니다.

GCP와 AWS는 모두 웹 인터페이스를 통해 공개 IP 주소를 쉽게 확인할 수 있도록 제공하지만, 서버에서 직접 IP 주소를 가져와야 하는 상황에서는 다음 명령어들이 유용하게 사용될 수 있습니다.

GCP VM에서 외부 IP 주소 획득하기

제가 알고 있는 두 가지 방법이 있습니다. 첫 번째 방법은 gcloud 명령어를 사용하는 것입니다.

gcloud compute addresses list

위 명령어를 실행하면 프로젝트 내의 모든 IP 주소 목록이 출력됩니다. 이 정보는 문제 해결에 유용하거나 VM에 로그인한 상태에서 빠르게 확인할 때 편리합니다.

예시:

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

두 번째 방법은 메타데이터 서버에 curl 명령어를 사용하는 것입니다.

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

주의: 여러 개의 네트워크 인터페이스를 사용하는 경우, 0 대신 해당 인터페이스 번호(1 또는 2 등)로 변경해야 합니다.

메타데이터는 매우 강력한 기능이며, 다양한 메트릭 정보를 검색하는 데 활용할 수 있습니다.

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

무슨 뜻일까요?

이러한 정보는 보고서 생성이나 자동화 작업에 유용하게 활용될 수 있습니다.

만약 내부 IP 주소도 함께 가져와야 하는 경우에는 아래 명령어를 사용하시면 됩니다.

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

GCP 관리에 대해 더 배우고 싶으신가요? 이 멋진 온라인 강좌를 확인해 보세요.

이 글이 흥미로우셨나요? 다른 사람들과도 공유해 보세요!