문제해결

이 가이드는 Cloud NAT의 일반적인 문제 해결을 위한 도움을 제공합니다.

일반적인 문제

VM이 Cloud NAT 없이 예기치 않게 인터넷에 연결할 수 있습니다

가상 머신(VM) 인스턴스 또는 컨테이너 인스턴스가 Cloud NAT 없이 인터넷에 연결할 수 있지만 이를 원하지 않는 경우 다음 문제를 확인합니다.

  • VM의 네트워크 인터페이스에 외부 IP 주소가 있는지 확인합니다. 네트워크 인터페이스에 외부 IP 주소가 할당되어 있는 경우 Google Cloud는 해당 소스가 인터페이스의 기본 내부 IP 주소와 일치하는 패킷에 대해 일대일 NAT를 자동으로 수행합니다. 자세한 내용은 Cloud NAT 사양을 참조하세요.

    VM에 외부 IP 주소가 있는지 확인하려면 외부 IP 주소를 기존 인스턴스에 변경 또는 할당을 참조하세요.

  • Google Kubernetes Engine(GKE) 클러스터가 비공개 클러스터인지 확인합니다. 비공개가 아닌 클러스터의 각 노드 VM에는 외부 IP 주소가 있으므로 각 노드는 다음 홉이 Cloud NAT에 의존하지 않으며 기본 인터넷 게이트웨이인 Virtual Private Cloud(VPC) 네트워크의 경로를 사용할 수 있습니다. 비공개가 아닌 클러스터가 Cloud NAT 게이트웨이와 상호작용하는 방법을 포함한 자세한 내용은 GKE 상호작용을 참조하세요.

  • VPC 네트워크의 경로 나열에서 기본 인터넷 게이트웨이와 다른 다음 홉을 통해 인터넷 연결을 제공할 수 있는 경로를 찾습니다. 예를 들면 다음과 같습니다.

    • 다음 홉이 VM, 내부 TCP/UDP 부하 분산기 또는 Cloud VPN 터널인 커스텀 정적 경로는 인터넷 연결을 간접적으로 제공할 수 있습니다. 예를 들어 내부 TCP/UDP 부하 분산기의 다음 홉 VM 또는 백엔드 VM에 외부 IP 주소 자체가 포함될 수도 있고 Cloud VPN 터널이 인터넷 액세스를 제공하는 네트워크에 연결될 수도 있습니다.

    • VPC 네트워크의 Cloud Router에 의해 온프레미스 네트워크에서 학습한 커스텀 동적 경로가 인터넷 액세스를 제공하는 네트워크에 연결할 수 있습니다.

  • VPC 네트워크의 다른 커스텀 경로는 다음 홉이 기본 인터넷 게이트웨이인 경로보다 우선순위가 높을 수 있습니다. Google Cloud가 경로를 평가하는 방법에 대한 자세한 내용은 라우팅 적용 여부 및 순서를 참조하세요.

생성된 로그 없음

특정 로그가 제외됨

  • NAT 로깅이 사용 설정되어 있는지 확인하고 로그 필터가 보관할 로그를 제외하지 않는지 확인합니다. 어떤 항목도 제외되지 않도록 로그 필터를 삭제할 수 있습니다.

  • Cloud NAT는 모든 단일 이벤트를 로깅하지 않습니다. 이그레스 트래픽이 많은 기간 동안 NAT 로깅은 VM 머신 유형에 비례해서 제한됩니다. 변환 또는 오류 로그가 삭제될 수 있으며 제한 중 생략된 항목을 확인하는 것이 가능하지 않습니다.

더 많은 IP 주소 할당 필요

인스턴스가 인터넷에 연결할 수 없는 상태에서 IP 주소를 수동으로 할당하는 경우 IP 주소를 더 추가해야 할 수 있습니다.

Cloud Console에서 모든 인스턴스가 인터넷에 액세스하도록 허용하려면 IP 주소를 최소 'X'개 이상 할당해야 합니다라는 메시지가 표시되면 IP 주소 더 할당해야 합니다. 자세한 내용은 NAT IP 주소를 참조하세요.

nat_allocation_failed 메시지에서 알림 정책을 정의하여 이 문제를 모니터링할 수 있습니다.

자주 묻는 질문(FAQ)

클라우드 NAT에 대한 리전 제한 사항

두 개 이상의 리전에서 동일한 Cloud NAT 게이트웨이를 사용할 수 있나요?

아니요. Cloud NAT 게이트웨이는 단일 리전, VPC 네트워크, Cloud Router와 연결된 리전별 리소스입니다.

다른 리전이나 다른 VPC 네트워크에서 Cloud NAT 게이트웨이를 추가로 만들 수 있습니다. 지정된 리전 및 VPC 네트워크에서 게이트웨이를 두 개 이상 만들 수 있는지 확인하려면 서브넷 IP 주소 범위 적용 가능성을 참조하세요.

외부 NAT IP 주소가 Cloud NAT 게이트웨이에서 전역적으로 사용되나요? 아니면 리전별로 사용되나요?

Cloud NAT 게이트웨이는 리전별 외부 IP 주소를 NAT IP 주소로 사용합니다. 리전별이지만 공개적으로 라우팅할 수 있습니다. NAT IP 주소를 할당하거나 지정하는 방법에 대한 자세한 내용은 NAT IP 주소를 참조하세요.

Cloud NAT를 사용 가능 또는 불가능한 경우

외부 IP 주소가 있는 GKE 노드 VM을 포함하여 인스턴스에 Cloud NAT가 적용되나요?

일반적으로는 아닙니다. VM의 네트워크 인터페이스에 외부 IP 주소가 있는 경우 Google Cloud는 Cloud NAT를 사용하지 않고 네트워크 인터페이스의 기본 내부 IP 주소에서 전송된 패킷에 대해 항상 일대일 NAT를 수행합니다. 그러나 Cloud NAT는 여전히 동일한 네트워크 인터페이스의 별칭 IP 주소 범위에서 전송된 패킷에 NAT 서비스를 제공할 수 있습니다. 자세한 내용은 Cloud NAT 사양GKE 상호작용을 참조하세요.

VPC 네트워크에서 VM 간 통신에 Cloud NAT를 사용할 수 있나요?

아니요. Cloud NAT는 인터넷 연결만 제공하도록 설계되었습니다.

Cloud NAT를 사용하여 VPC 네트워크를 다른 네트워크에 연결하여 겹치는 IP 주소 문제를 해결할 수 있나요?

아니요. Cloud NAT는 다음 홉이 기본 인터넷 게이트웨이가 아닌 커스텀 경로에 적용할 수 없습니다. 예를 들어 대상이 공개적으로 라우팅 가능한 IP 주소인 경우에도 Cloud NAT는 다음 홉 Cloud VPN 터널로 전송된 트래픽에 적용할 수 없습니다.

Cloud NAT를 사용하면 네트워크 인터페이스에 외부 IP 주소가 없는 소스 VM이 소스와 대상이 동일한 VPC 네트워크에 있더라도 외부 IP 주소가 있는 대상 VM 또는 부하 분산기에 트래픽을 전송할 수 있나요?

예. 네트워크 경로에는 기본 인터넷 게이트웨이를 통해 VPC 네트워크에서 외부로 트래픽을 전송한 다음 동일한 네트워크에서 이를 수신하는 과정이 포함됩니다.

소스 VM이 패킷을 대상으로 전송하면 Cloud NAT는 패킷을 두 번째 인스턴스로 전달하기 전에 소스 NAT(SNAT)를 수행합니다. Cloud NAT는 두 번째 인스턴스에서 첫 번째 인스턴스로의 응답에 대해 대상 NAT(DNAT)를 수행합니다. 단계별 예시는 NAT 흐름을 참조하세요.

원치 않는 수신 연결 지원 안 됨

Cloud NAT는 외부 IP 주소가 없는 인스턴스에 대한 인바운드 연결(예: SSH)을 허용하나요?

아니요. Cloud NAT는 원치 않는 수신 연결을 지원하지 않습니다. 자세한 내용은 Cloud NAT 사양을 참조하세요.

외부 IP 주소가 없는 VM에 연결해야 하는 경우 외부 IP 주소가 없는 인스턴스에 연결을 참조하세요. 예를 들어 Cloud NAT 예시 Compute Engine 설정의 일부로 IAP(Identity-Aware Proxy)를 사용하여 외부 IP 주소 없이 VM에 연결합니다.

Cloud NAT 및 포트

VM에 포트 수가 고정(기본적으로 64)되어 있는 이유는 무엇인가요?

Cloud NAT 게이트웨이가 VM에 대해 NAT를 제공하는 경우 포트 예약 절차에 따라 소스 주소 및 소스 포트 튜플을 예약합니다.

자세한 내용은 포트 예약 예시를 참조하세요.

VM에 예약된 최소 포트 수를 변경할 수 있나요?

예. 새 Cloud NAT 게이트웨이를 만들거나 나중에 편집하여 VM 당 최소 포트 수를 늘리거나 줄일 수 있습니다. 각 Cloud NAT 게이트웨이는 포트 예약 절차에 따라 소스 주소와 소스 포트 튜플을 예약합니다.

최소 포트 수를 줄이는 방법에 대한 자세한 정보는 다음 질문을 참조하세요.

Cloud NAT 게이트웨이를 만든 후 VM당 최소 포트 수를 줄일 수 있나요?

예. 그러나 최소 포트 수를 줄이면 포트 예약 절차에서 VM당 더 적은 수의 포트를 예약하게 될 수 있습니다. 이 경우 기존 TCP 연결이 재설정될 수 있으며, 재설정되는 경우 연결을 다시 수립해야 합니다.

Cloud NAT 및 기타 Google 서비스

Cloud NAT를 사용하면 Google API 및 서비스에 액세스할 수 있나요?

Cloud NAT를 서브넷의 기본 IP 범위로 사용 설정하면 Google Cloud에서 자동으로 비공개 Google 액세스를 사용 설정합니다. 자세한 내용은 비공개 Google 액세스 상호작용을 참조하세요.

다음 단계