Public NAT를 사용하여 네트워크 주소 변환 설정 및 관리
이 페이지에서는 Public NAT를 사용하여 네트워크 주소 변환(NAT)을 설정하고 관리하는 방법을 설명합니다. Public NAT를 설정하기 전에 Public NAT 개요를 참고하세요.
제한사항
Cloud NAT 게이트웨이에 자동으로 할당된 IP 주소의 네트워크 등급을 변경하면 이전에 할당된 IP 주소의 모든 연결이 즉시 해제됩니다.
수동 NAT IP 주소 할당을 사용하고, Cloud NAT에 사용되는 IP 주소를 변경하는 경우, 이전에 할당된 IP 주소의 모든 연결이 즉시 닫힙니다. 이를 방지하려면 NAT와 연결된 외부 IP 주소 드레이닝을 참고하세요.
정적 포트 할당을 사용하여 Cloud NAT 게이트웨이를 구성하고 가상 머신(VM) 인스턴스당 최소 포트를 줄이는 경우 설정된 NAT 연결이 끊어질 수 있습니다. 자세한 내용은 VM당 포트 줄이기를 참고하세요.
동적 포트 할당을 사용하여 Cloud NAT 게이트웨이를 구성하고 추가 구성을 변경하는 경우 설정된 NAT 연결이 끊어질 수 있습니다. 구성이 변경되면 각 VM에 할당된 포트 수가 일시적으로 구성된 최소 개수로 재설정될 수 있습니다. 자세한 내용은 VM당 포트 줄이기를 참고하세요.
동적 포트 할당을 사용하여 Cloud NAT 게이트웨이를 구성하고 동적 포트 할당을 사용 중지하는 경우 NAT 게이트웨이를 사용하는 모든 VM 연결이 닫힙니다. 자세한 내용은 포트 할당 전환 방법을 참고하세요.
엔드포인트 독립 매핑이 사용 설정되면 동적 포트 할당 또는 NAT 규칙을 구성할 수 없습니다.
Cloud NAT는 IP 조각을 지원하지 않습니다.
Cloud NAT 구성은 Virtual Private Cloud(VPC) 네트워크에 연결됩니다. 따라서 해당 네트워크의 서브넷에 속하는 모든 리소스에 구성이 적용됩니다. Cloud NAT 게이트웨이에서 제공할 특정 VM을 선택할 수 없습니다.
IPv6에서 IPv4로의 변환(프리뷰)은 다음 머신 시리즈의 Compute Engine VM 인스턴스에서만 사용할 수 있습니다.
- 모든 2세대 이하 시리즈
- M3 시리즈
자세한 내용은 Compute Engine 용어를 참고하세요.
Google Kubernetes Engine(GKE) 노드, 서버리스 엔드포인트, 리전별 인터넷 네트워크 엔드포인트 그룹(NEG)의 경우 Public NAT는 IPv4 주소만 변환합니다. Trusted Cloud 에서 IPv6 전용 지원이 포함된 서비스에 관한 자세한 내용은 Trusted Cloud의 IPv6 지원을 참고하세요.
시작하기 전에
Public NAT를 설정하기 전에 다음 태스크를 완료합니다.
IAM 권한 가져오기
Compute 네트워크 관리자 역할(roles/compute.networkAdmin
)에는 Public NAT를 구성하는 데 필요한 권한이 포함되어 있습니다.
개발 환경 준비
Trusted Cloud 콘솔을 사용할지 또는 gcloud CLI를 사용하여 Public NAT를 설정할지 여부에 따라 Trusted Cloud에서 다음 리소스를 구성합니다.
콘솔
-
In the Trusted Cloud console, on the project selector page, select or create a Trusted Cloud project.
-
Verify that billing is enabled for your Trusted Cloud project.
-
Enable the Compute Engine API.
-
In the Trusted Cloud console, on the project selector page, select or create a Trusted Cloud project.
-
Verify that billing is enabled for your Trusted Cloud project.
-
Enable the Compute Engine API.
-
Install the Google Cloud CLI.
-
gcloud CLI에서 제휴 ID를 사용하도록 구성합니다.
자세한 내용은 제휴 ID로 gcloud CLI에 로그인을 참고하세요.
-
gcloud CLI를 초기화하려면, 다음 명령어를 실행합니다.
gcloud init
gcloud
DNS64 구성
IPv6에서 IPv4로의 변환 또는 NAT64를 사용하려면 DNS64를 구성해야 합니다. Cloud DNS에서 DNS64를 구성하려면 DNS64 구성의 안내를 따르세요.
IPv4 트래픽에만 Cloud NAT를 사용하려면 이 단계를 건너뛰세요.
Public NAT 구성
소스 VPC 네트워크에서 Cloud NAT 게이트웨이를 만들어 Public NAT를 구성합니다. 각 게이트웨이는 단일 VPC 네트워크, 리전, Cloud Router와 연결됩니다. Cloud NAT는 NAT 구성 정보를 그룹화하는 데만 Cloud Router를 사용하며 Cloud Router가 경계 게이트웨이 프로토콜을 사용하거나 경로를 추가하도록 지시하지 않습니다. NAT 트래픽은 Cloud Router를 통과하지 않습니다.
Cloud NAT 게이트웨이를 만들 때 다음 설정을 구성할 수 있습니다.
설정 | 지원되는 옵션 | 설명 |
---|---|---|
소스 엔드포인트 유형 |
|
기본적으로 Public NAT는 VM 인스턴스, GKE 노드, 서버리스 엔드포인트에 NAT 서비스를 제공합니다. 이러한 리소스에 Cloud NAT 게이트웨이를 만들려면 다음 섹션의 단계를 완료하세요. 리전 인터넷 NEG에 Cloud NAT 게이트웨이를 만들려면 다음에 대한 'Cloud NAT 게이트웨이 설정'을 참고하세요. Cloud NAT에서 지원하는 Trusted Cloud 리소스의 전체 목록은 Cloud NAT 개요를 참고하세요. |
소스 IP 버전 |
|
Public NAT는 IPv4에서 IPv4로의 변환과 IPv6에서 IPv4로의 변환을 지원합니다. NAT64를 구성하려면(프리뷰) DNS64도 구성해야 합니다.
|
소스 서브넷 | IPv4 트래픽의 경우:
IPv6 트래픽의 경우:
|
Public NAT는 지정된 VPC 네트워크의 리전에서 다음 서브넷 범위를 지원합니다.
|
IP 주소 할당 |
|
기본적으로 Public NAT는 자동 NAT IP 주소 할당을 사용합니다. 이 구성은 NAT 서비스를 리전에 제공하는 데 필요한 외부 IP 주소를 자동으로 할당합니다. 리전의 서브넷에 있는 외부 IP 주소가 없는 VM 인스턴스는 NAT를 통해 인터넷에 액세스됩니다. 자동 NAT IP 주소 할당을 사용하면 Trusted Cloud 에서 프로젝트의 IP 주소를 예약합니다. 이러한 주소는 프로젝트의 사용 중인 리전별 외부 IPv4 주소 할당량에 반영됩니다. Cloud NAT 게이트웨이에 NAT IP 주소를 수동으로 할당할 수 있습니다. 이러한 주소는 다음 할당량에 반영됩니다. 수동 할당을 선택하는 경우 패킷이 삭제되지 않도록 충분한 IP 주소를 할당해야 합니다. 자세한 내용은 Public NAT IP 주소를 참고하세요. |
네트워크 계층 |
|
Public NAT를 사용하면 Cloud NAT 게이트웨이에서 외부 IP 주소를 할당할 네트워크 서비스 등급을 지정할 수 있습니다.
기본적으로 네트워크 등급은 현재 프로젝트 수준 등급으로 설정됩니다.
|
고급 구성 |
|
기본적으로 Public NAT는 정적 포트 할당을 사용합니다. 즉, 각 VM에 포트가 같은 수로 할당됩니다. 자동 또는 수동 NAT IP 주소 할당으로 동적 포트 할당을 구성할 수 있습니다. 동적 포트 할당을 사용하면 Cloud NAT 게이트웨이에서 사용량을 기준으로 각 VM에 포트를 다른 수로 할당할 수 있습니다. Cloud NAT 게이트웨이에서 NAT 규칙이나 동적 포트 할당을 사용하는 경우에는 엔드포인트 독립 매핑을 사용 설정할 수 없습니다. 로깅은 기본적으로 사용 중지되어 있습니다. NAT 제한 시간과 기본값에 대한 자세한 내용은 NAT 제한 시간을 참고하세요. |
Cloud NAT 게이트웨이 만들기
콘솔
Trusted Cloud 콘솔에서 Cloud NAT 페이지로 이동합니다.
첫 번째 Cloud NAT 게이트웨이의 경우 시작하기를 클릭하고 후속 게이트웨이의 경우 Cloud NAT 게이트웨이 만들기를 클릭합니다.
게이트웨이 이름 필드에 게이트웨이 이름을 입력합니다.
NAT 유형에서 Public 을 선택합니다.
Cloud Router 선택 섹션에서 다음을 구성합니다.
- 네트워크 필드에서 게이트웨이를 만들 VPC 네트워크를 선택합니다.
- 리전 필드에서 게이트웨이의 리전을 설정합니다.
- Cloud Router 필드에서 Cloud Router를 선택하거나 리전에 만듭니다.
Cloud NAT 매핑 섹션의 소스 엔드포인트 유형에서 VM 인스턴스, GKE 노드, 서버리스 옵션이 선택되어 있는지 확인합니다.
소스 IP 버전 필드에서 소스 IP 버전을 선택한 다음 Cloud NAT를 사용할 소스 서브넷 범위를 구성합니다.
- IPv4 서브넷 범위의 경우 소스 서브넷 필드에서 다음 중 하나를 선택합니다.
- 리전의 모든 서브넷에 대한 기본 및 보조 IP 범위에 Cloud NAT를 사용하려면 모든 서브넷의 기본 및 보조 IP 범위를 선택합니다.
- 기본 IP 범위에만 Cloud NAT를 사용하려면 모든 서브넷의 기본 IP 범위를 선택합니다.
- Cloud NAT를 사용할 수 있는 서브넷 IP 범위를 제한하려면 커스텀을 선택하고 다음을 수행합니다.
- 서브넷 섹션에서 서브넷을 선택합니다.
- IP 범위 목록에서 포함할 서브넷 IP 범위를 선택하고 확인을 클릭합니다.
- (선택사항) 추가 범위를 지정하려면 서브넷 및 IP 범위 추가를 클릭하고 다른 서브넷을 추가합니다.
- IPv6 서브넷 범위의 경우 소스 서브넷 필드에서 다음 중 하나를 선택합니다.
- 리전의 모든 서브넷에 대한 내부 및 외부 IP 범위에 Cloud NAT를 사용하려면 모든 서브넷을 선택합니다.
- Cloud NAT를 사용할 수 있는 서브넷을 제한하려면 커스텀을 선택하고 다음을 수행합니다.
- 서브넷 섹션에서 서브넷을 선택합니다.
- (선택사항) 서브넷을 추가로 지정하려면 서브넷 추가를 클릭하고 다른 서브넷을 추가합니다.
- IPv4 서브넷 범위의 경우 소스 서브넷 필드에서 다음 중 하나를 선택합니다.
다음 중 하나를 선택하여 NAT IP 주소 할당 유형과 네트워크 등급을 구성합니다.
- 자동 NAT IP 주소 할당을 사용하려면 다음을 수행합니다.
- Cloud NAT IP 주소 목록에서 자동(권장)을 선택합니다.
- 네트워크 서비스 등급에서 Premium 또는 표준을 선택합니다.
- 수동 NAT IP 주소 할당을 사용하려면 다음을 수행합니다.
- Cloud NAT IP 주소 목록에서 수동을 선택합니다.
- 네트워크 서비스 등급에서 Premium 또는 표준을 선택합니다.
- NAT에 사용할 고정 예약 외부 IP 주소를 선택하거나 만듭니다.
- (선택사항) 추가 IP 주소를 지정하려면 IP 주소 추가를 클릭한 후 추가 고정 예약 외부 IP 주소를 선택하거나 만듭니다.
- (선택사항) 커스텀 NAT 규칙을 만들려면 Cloud NAT 규칙 섹션을 구성합니다. 자세한 내용은 NAT 규칙 만들기를 참고하세요.
- 자동 NAT IP 주소 할당을 사용하려면 다음을 수행합니다.
(선택사항) 고급 구성 섹션에서 다음 설정을 조정합니다.
- 로깅을 구성할지 여부입니다. 기본적으로 로깅 없음이 선택되어 있습니다.
- Cloud NAT에서 포트를 할당하는 방식을 변경할지 여부입니다. 기본적으로 동적 포트 할당 사용 설정이 선택 해제되어 있습니다.
정적 포트 할당의 경우 VM 인스턴스당 최소 포트 수 필드는
64
로 설정됩니다.- 정적 포트 할당에 대한 VM 인스턴스당 최소 포트 수를 업데이트하려면 VM 인스턴스당 최소 포트 수 필드에 값을 지정합니다. 이 값은
2
~57344
로 설정할 수 있습니다. - 동적 포트 할당을 구성하려면 동적 포트 할당 사용 설정을 선택하고 VM 인스턴스당 최소 포트 수 필드(기본값:
32
) 및 VM 인스턴스당 최대 포트 수 필드(기본값:65536
)의 값을 선택합니다.
- 정적 포트 할당에 대한 VM 인스턴스당 최소 포트 수를 업데이트하려면 VM 인스턴스당 최소 포트 수 필드에 값을 지정합니다. 이 값은
- 프로토콜 연결의 NAT 제한 시간을 업데이트할지 여부입니다. 이러한 제한 시간 및 기본값에 관한 자세한 내용은 NAT 제한 시간을 참고하세요.
만들기를 클릭합니다.
gcloud
Cloud NAT 게이트웨이를 만들려면 gcloud compute routers nats create
명령어를 사용하세요.
모든 구성 옵션이 기본값으로 설정된 Cloud NAT 게이트웨이를 만들거나 게이트웨이 구성을 맞춤설정할 수 있습니다.
기본 설정으로 Cloud NAT 게이트웨이 만들기
Cloud NAT 게이트웨이를 사용하려는 리전에 Cloud Router를 만듭니다. Cloud NAT 게이트웨이를 만들려면 이 Cloud Router가 필요합니다.
NAT를 구성할 소스 서브넷 범위의 IP 버전에 따라 다음 명령어 중 하나를 실행하여 Cloud NAT 게이트웨이를 만듭니다.
IPv4 서브넷 범위에 대해 Cloud NAT를 구성합니다.
gcloud compute routers nats create NAT_CONFIG \ --router=NAT_ROUTER \ --region=REGION \ --nat-all-subnet-ip-ranges \ --auto-allocate-nat-external-ips
이 구성은 리전의 IPv4 전용 및 이중 스택 서브넷의 모든 IPv4 서브넷 범위에 대해 NAT를 사용 설정합니다.
IPv6 서브넷 범위에 대해 Cloud NAT를 구성합니다(프리뷰).
gcloud compute routers nats create NAT_CONFIG \ --router=NAT_ROUTER \ --region=REGION \ --nat64-all-v6-subnet-ip-ranges \ --auto-allocate-nat-external-ips
이 구성은 리전의 IPv6 전용 및 이중 스택 서브넷의 모든 IPv6 서브넷 범위에 대해 NAT를 사용 설정합니다.
IPv4 및 IPv6 서브넷 범위 모두에 대해 Cloud NAT를 구성합니다 (프리뷰).
gcloud compute routers nats create NAT_CONFIG \ --router=NAT_ROUTER \ --region=REGION \ --nat-all-subnet-ip-ranges \ --nat64-all-v6-subnet-ip-ranges \ --auto-allocate-nat-external-ips
이 구성은 리전의 IPv4 전용, 이중 스택, IPv6 전용 서브넷에 있는 모든 IPv4 및 IPv6 서브넷 범위에 대해 NAT를 사용 설정합니다.
다음을 바꿉니다.
NAT_CONFIG
: NAT 구성의 이름NAT_ROUTER
: 이전 단계에서 만든 Cloud Router의 이름REGION
: Cloud NAT 게이트웨이를 사용할 리전
Cloud NAT 게이트웨이의 구성 설정 맞춤설정하기
Cloud NAT 게이트웨이를 만들 때 기본 구성을 맞춤설정할 수 있습니다. 사용할 수 있는 플래그의 전체 목록은 gcloud compute routers nats create
명령어를 참고하세요.
Compute Engine VM 인스턴스에 NAT64를 구성하는 경우에만 IPv6 서브넷 범위에 대한 Cloud NAT 게이트웨이를 만듭니다. GKE 노드, 서버리스 엔드포인트, 리전별 인터넷 NEG의 경우 Public NAT는 IPv4 주소만 변환합니다.
Cloud NAT 게이트웨이를 만듭니다.
Cloud NAT 게이트웨이를 사용하려는 리전에 Cloud Router를 만듭니다. Cloud NAT 게이트웨이를 만들려면 이 Cloud Router가 필요합니다.
맞춤설정할 각 매개변수를 지정하여 Cloud NAT 게이트웨이를 만듭니다.
다음 예에서는 소스 서브넷, NAT IP 주소 할당 유형, 네트워크 등급 및 포트 할당 유형을 맞춤설정하는 방법을 보여줍니다.
이러한 각 예시에서 실행하는 명령어는 NAT를 구성하는 소스 서브넷 범위의 IP 버전에 따라 달라집니다.
NAT를 사용할 수 있는 소스 서브넷 제한. NAT를 사용할 수 있는 서브넷 및 서브넷 범위를 제한하는 Cloud NAT 게이트웨이를 만들려면 다음 명령어 중 하나를 실행합니다.
NAT를 사용할 수 있는 IPv4 서브넷 범위를 제한합니다.
gcloud compute routers nats create NAT_CONFIG \ --router=NAT_ROUTER \ --region=REGION \ --nat-custom-subnet-ip-ranges=IPV4_SUBNET_RANGES \ --auto-allocate-nat-external-ips
NAT를 사용할 수 있는 IPv6 서브넷 범위를 제한합니다(프리뷰).
gcloud compute routers nats create NAT_CONFIG \ --router=NAT_ROUTER \ --region=REGION \ --nat64-custom-v6-subnet-ip-ranges=IPV6_SUBNET_RANGES \ --auto-allocate-nat-external-ips
IPv4 및 IPv6 서브넷 범위를 둘 다 제한합니다(프리뷰).
gcloud compute routers nats create NAT_CONFIG \ --router=NAT_ROUTER \ --region=REGION \ --nat-custom-subnet-ip-ranges=IPV4_SUBNET_RANGES \ --nat64-custom-v6-subnet-ip-ranges=IPV6_SUBNET_RANGES \ --auto-allocate-nat-external-ips
다음을 바꿉니다.
NAT_CONFIG
: NAT 구성의 이름NAT_ROUTER
: 이전 단계에서 만든 Cloud Router의 이름REGION
: Cloud NAT 게이트웨이를 사용할 리전IPV4_SUBNET_RANGES
: 서브넷 이름의 쉼표로 구분된 목록. 예를 들면 다음과 같습니다.SUBNET_NAME_1:ALL,SUBNET_NAME_2:ALL
:SUBNET_NAME_1
및SUBNET_NAME_2
서브넷의 기본 및 모든 보조 범위를 모두 포함합니다.SUBNET_NAME_1,SUBNET_NAME_2
:SUBNET_NAME_1
및SUBNET_NAME_2
서브넷의 기본 범위만 포함합니다.SUBNET_NAME:SECONDARY_RANGE_NAME
:SUBNET_NAME
서브넷의 지정된 보조 범위를 포함하고 기본 범위는 포함하지 않습니다.SUBNET_NAME_1,SUBNET_NAME_2:SECONDARY_RANGE_NAME
:SUBNET_NAME_1
서브넷의 기본 범위와SUBNET_NAME_2
서브넷의 지정된 보조 범위를 포함합니다.
IPV6_SUBNET_RANGES
: 서브넷 이름의 쉼표로 구분된 목록(예:SUBNET_NAME_1,SUBNET_NAME_2
)
수동 NAT IP 주소 할당 구성 수동 NAT IP 주소 할당으로 Cloud NAT 게이트웨이를 만들려면 다음 명령어 중 하나를 실행합니다.
IPv4 서브넷 범위:
gcloud compute routers nats create NAT_CONFIG \ --router=NAT_ROUTER \ --region=REGION \ --nat-all-subnet-ip-ranges \ --nat-external-ip-pool=IP_ADDRESS_1,IP_ADDRESS_2
IPv6 서브넷 범위(프리뷰):
gcloud compute routers nats create NAT_CONFIG \ --router=NAT_ROUTER \ --region=REGION \ --nat64-all-v6-subnet-ip-ranges \ --nat-external-ip-pool=IP_ADDRESS_1,IP_ADDRESS_2
IPv4 및 IPv6 서브넷 범위의 게이트웨이를 만드는 경우 이 명령어에서
--nat-all-subnet-ip-ranges
및--nat64-all-v6-subnet-ip-ranges
플래그를 모두 지정합니다.
다음을 바꿉니다.
NAT_CONFIG
: NAT 구성의 이름NAT_ROUTER
: 이전 단계에서 만든 Cloud Router의 이름REGION
: Cloud NAT 게이트웨이를 사용할 리전IP_ADDRESS_1
및IP_ADDRESS_2
: NAT에 사용할 고정 예약 외부 IP 주소--nat-external-ip-pool
플래그를 사용할 경우 IP 주소를 하나 이상 지정할 수 있습니다.
네트워크 등급을 지정합니다. Cloud NAT 게이트웨이가 외부 IP 주소를 할당하는 네트워크 등급을 지정하려면 다음 명령어 중 하나를 실행합니다.
IPv4 서브넷 범위:
gcloud compute routers nats create NAT_CONFIG \ --router=NAT_ROUTER \ --region=REGION \ --nat-all-subnet-ip-ranges \ --auto-allocate-nat-external-ips \ --auto-network-tier=AUTO_NETWORK_TIER
IPv6 서브넷 범위(프리뷰):
gcloud compute routers nats create NAT_CONFIG \ --router=NAT_ROUTER \ --region=REGION \ --nat64-all-v6-subnet-ip-ranges \ --auto-allocate-nat-external-ips \ --auto-network-tier=AUTO_NETWORK_TIER
IPv4 및 IPv6 서브넷 범위의 게이트웨이를 만드는 경우 이 명령어에서
--nat-all-subnet-ip-ranges
및--nat64-all-v6-subnet-ip-ranges
플래그를 모두 지정합니다.
다음을 바꿉니다.
NAT_CONFIG
: NAT 구성의 이름NAT_ROUTER
: 이전 단계에서 만든 Cloud Router의 이름REGION
: Cloud NAT 게이트웨이를 사용할 리전AUTO_NETWORK_TIER
: Cloud NAT 게이트웨이에 IP 주소를 자동으로 할당할 때 사용할 네트워크 등급. 허용되는 값은PREMIUM
및STANDARD
입니다. 지정하지 않으면 현재 프로젝트 수준 기본값 등급이 Cloud NAT 게이트웨이와 연결됩니다.수동 NAT IP 주소 할당으로 네트워크 등급을 지정할 수도 있습니다. 게이트웨이에 IP 주소 여러 개를 할당하는 경우 할당하는 모든 IP 주소가 같은 네트워크 등급이어야 합니다.
동적 포트 할당 구성 동적 포트 할당으로 Cloud NAT 게이트웨이를 만들려면 다음 명령어 중 하나를 실행합니다.
IPv4 서브넷 범위:
gcloud compute routers nats create NAT_CONFIG \ --router=NAT_ROUTER \ --region=REGION \ --nat-all-subnet-ip-ranges \ --auto-allocate-nat-external-ips \ --enable-dynamic-port-allocation \ [--min-ports-per-vm=MIN_PORTS ] \ [--max-ports-per-vm=MAX_PORTS ]
IPv6 서브넷 범위(프리뷰):
gcloud compute routers nats create NAT_CONFIG \ --router=NAT_ROUTER \ --region=REGION \ --nat64-all-v6-subnet-ip-ranges \ --auto-allocate-nat-external-ips \ --enable-dynamic-port-allocation \ [--min-ports-per-vm=MIN_PORTS ] \ [--max-ports-per-vm=MAX_PORTS ]
IPv4 및 IPv6 서브넷 범위의 게이트웨이를 만드는 경우 이 명령어에서
--nat-all-subnet-ip-ranges
및--nat64-all-v6-subnet-ip-ranges
플래그를 모두 지정합니다.
다음을 바꿉니다.
NAT_CONFIG
: NAT 구성의 이름NAT_ROUTER
: 이전 단계에서 만든 Cloud Router의 이름REGION
: Cloud NAT 게이트웨이를 사용할 리전- (선택사항)
MIN_PORTS
: 각 VM에 할당할 최소 포트 수. 동적 포트 할당이 사용 설정된 경우MIN_PORTS
는2
의 거듭제곱이어야 하며32
와32768
사이여야 합니다. 기본값은32
입니다. - (선택사항)
MAX_PORTS
: 각 VM에 할당할 최대 포트 수.MAX_PORTS
는2
의 승수여야 하며64
~65536
사이입니다.MAX_PORTS
는MIN_PORTS
보다 커야 합니다. 기본값은65536
입니다.
Terraform
Terraform 모듈을 사용하여 IPv4 트래픽용 NAT 게이트웨이가 있는 Cloud Router를 만들 수 있습니다.
그렇게 해서 나온 NAT 게이트웨이는 다음 기본값을 사용합니다.
enable_endpoint_independent_mapping = true icmp_idle_timeout_sec = 30 min_ports_per_vm = 0 nat_ip_allocate_option = "AUTO_ONLY" source_subnetwork_ip_ranges_to_nat = "ALL_SUBNETWORKS_ALL_IP_RANGES" tcp_established_idle_timeout_sec = 1200 tcp_transitory_idle_timeout_sec = 30 udp_idle_timeout_sec = 30 log_config { enable = true filter = "ALL" }
Public NAT 구성 보기
콘솔
Trusted Cloud 콘솔에서 Cloud NAT 페이지로 이동합니다.
NAT 게이트웨이 세부정보, 매핑 정보, 구성 세부정보를 보려면 NAT 게이트웨이 이름을 클릭합니다.
NAT 상태를 보려면 NAT 게이트웨이의 상태 열을 확인합니다.
gcloud
다음 명령어를 실행하여 NAT 구성 세부정보를 볼 수 있습니다.
Public NAT 게이트웨이 구성을 확인합니다.
gcloud compute routers nats describe NAT_CONFIG \ --router=ROUTER_NAME \ --region=REGION
다음을 바꿉니다.
NAT_CONFIG
: NAT 구성 이름ROUTER_NAME
: Cloud Router의 이름REGION
: 설명할 NAT의 리전입니다. 지정하지 않으면 리전을 선택하라는 메시지가 표시될 수 있습니다(대화형 모드만 해당).
각 VM의 인터페이스에 할당된 IP:포트-범위의 매핑을 확인합니다.
gcloud compute routers get-nat-mapping-info ROUTER_NAME \ --region=REGION
Public NAT 게이트웨이의 상태를 봅니다.
gcloud compute routers get-status ROUTER_NAME \ --region=REGION
Cloud NAT 게이트웨이에 할당된 외부 IP 주소 보기
기본적으로 Public NAT용 Cloud NAT 게이트웨이는 자동 IP 주소 할당을 사용합니다. Cloud NAT 게이트웨이에 할당된 외부 IP 주소를 보려면 다음 단계를 따르세요.
콘솔
Trusted Cloud 콘솔에서 Cloud NAT 페이지로 이동합니다.
Cloud NAT 게이트웨이 이름을 클릭합니다.
Cloud NAT 게이트웨이 세부정보 페이지에서 할당된 외부 IP 주소를 확인합니다.
gcloud
모든 할당된 NAT IP 주소를 나열하려면 다음 명령어를 사용합니다.
gcloud compute routers get-nat-ip-info NAT_ROUTER \ --region=REGION
자세한 예는 gcloud compute routers get-nat-ip-info
명령어를 참고하세요.
Public NAT 구성 업데이트
Cloud NAT 게이트웨이를 설정한 후 요구사항에 따라 게이트웨이 구성을 업데이트할 수 있습니다. 다음 섹션에는 Cloud NAT 게이트웨이를 업데이트하기 위해 수행할 수 있는 태스크가 나와 있습니다.
NAT로 구성된 서브넷 업데이트
콘솔
Trusted Cloud 콘솔에서 Cloud NAT 페이지로 이동합니다.
Cloud NAT 게이트웨이를 클릭합니다.
수정을 클릭합니다.
NAT 매핑에서 소스 서브넷을 커스텀으로 설정합니다.
서브넷을 선택합니다.
IP 범위 목록에서 포함할 서브넷 IP 범위를 선택합니다.
(선택사항) 추가 범위를 지정하려면 서브넷 및 IP 범위 추가를 클릭합니다.
저장을 클릭합니다.
gcloud
gcloud compute routers nats update
명령어를 사용합니다.
기존 Cloud NAT 게이트웨이의 소스 서브넷 범위를 업데이트하려면 업데이트할 서브넷 범위의 IP 버전에 따라 다음 명령어 중 하나를 실행합니다.
IPv4 서브넷 범위 업데이트:
gcloud compute routers nats update NAT_CONFIG \ --router=NAT_ROUTER \ --region=REGION \ --nat-custom-subnet-ip-ranges=IPV4_SUBNET_RANGES
IPv6 서브넷 범위 업데이트(프리뷰):
gcloud compute routers nats update NAT_CONFIG \ --router=NAT_ROUTER \ --region=REGION \ --nat64-custom-v6-subnet-ip-ranges=IPV6_SUBNET_RANGES
IPv4 및 IPv6 서브넷 범위 모두 업데이트(프리뷰):
gcloud compute routers nats update NAT_CONFIG \ --router=NAT_ROUTER \ --region=REGION \ --nat-custom-subnet-ip-ranges=IPV4_SUBNET_RANGES \ --nat64-custom-v6-subnet-ip-ranges=IPV6_SUBNET_RANGES
다음을 바꿉니다.
NAT_CONFIG
: NAT 구성 이름NAT_ROUTER
: Cloud Router의 이름REGION
: NAT 게이트웨이의 리전IPV4_SUBNET_RANGES
: 서브넷 이름의 쉼표로 구분된 목록. 예를 들면 다음과 같습니다.SUBNET_NAME_1:ALL,SUBNET_NAME_2:ALL
:SUBNET_NAME_1
및SUBNET_NAME_2
서브넷의 기본 및 모든 보조 범위를 모두 포함합니다.SUBNET_NAME_1,SUBNET_NAME_2
:SUBNET_NAME_1
및SUBNET_NAME_2
서브넷의 기본 범위만 포함합니다.SUBNET_NAME:SECONDARY_RANGE_NAME
:SUBNET_NAME
서브넷의 지정된 보조 범위를 포함하고 기본 범위는 포함하지 않습니다.SUBNET_NAME_1,SUBNET_NAME_2:SECONDARY_RANGE_NAME
:SUBNET_NAME_1
서브넷의 기본 범위와SUBNET_NAME_2
서브넷의 지정된 보조 범위를 포함합니다.
IPV6_SUBNET_RANGES
: 서브넷 이름의 쉼표로 구분된 목록(예:SUBNET_NAME_1,SUBNET_NAME_2
)
NAT에서 서브넷 삭제
더 이상 사용하지 않는 서브넷을 Cloud NAT 게이트웨이에서 삭제할 수 있습니다.
콘솔
Trusted Cloud 콘솔에서 Cloud NAT 페이지로 이동합니다.
Cloud NAT 게이트웨이를 클릭합니다.
수정을 클릭합니다.
NAT 매핑에서 삭제하려는 서브넷을 삭제합니다.
저장을 클릭합니다.
gcloud
gcloud compute routers nats update
명령어를 사용합니다.
IPv4 서브넷 범위 또는 IPv6 서브넷 범위만 삭제할 수 있으며 둘 다 삭제할 수는 없습니다.
다음 예시에서는 IPv6 서브넷 범위의 NAT를 사용 중지합니다.
gcloud compute routers nats update NAT_CONFIG \ --router=NAT_ROUTER \ --region=REGION \ --clear-nat64-subnet-ip-ranges
다음을 바꿉니다.
NAT_CONFIG
: NAT 구성 이름NAT_ROUTER
: Cloud Router의 이름REGION
: NAT 게이트웨이의 리전
NAT에 할당된 외부 IP 주소 업데이트
특정 게이트웨이의 외부 IP 주소 목록을 변경하거나 수동 IP 할당에서 자동 IP 할당으로 전환할 수 있습니다. 이렇게 하면 Trusted Cloud 에서는 이전에 할당된 IP 주소를 삭제하고 새 주소를 추가합니다. 이전에 할당된 IP 주소의 기존 연결은 즉시 종료됩니다. 기존 IP 주소에서 새 연결을 차단하면서 기존 연결을 계속 허용하려면 이 문서의 NAT와 연결된 외부 IP 주소 드레이닝 섹션을 참고하세요.
콘솔
Trusted Cloud 콘솔에서 Cloud NAT 페이지로 이동합니다.
Cloud NAT 게이트웨이를 클릭합니다.
수정을 클릭합니다.
NAT IP 주소 목록을 클릭한 후 자동 또는 수동을 선택합니다.
수동을 선택하는 경우 외부 IP 주소를 지정합니다.
고가용성을 위해 IP 주소 추가를 클릭하고 두 번째 주소를 추가합니다.
저장을 클릭합니다.
gcloud
gcloud compute routers nats update
명령어를 사용합니다.
gcloud compute routers nats update NAT_CONFIG \ --router=NAT_ROUTER \ --region=REGION \ --nat-external-ip-pool=IP_ADDRESS_1,IP_ADDRESS_2
다음을 바꿉니다.
NAT_CONFIG
: NAT 구성 이름NAT_ROUTER
: Cloud Router의 이름REGION
: 업데이트할 NAT의 리전. 지정하지 않으면 리전을 선택하라는 메시지가 표시될 수 있습니다(대화형 모드만 해당).IP_ADDRESS_1
: 수동 외부 IP 주소IP_ADDRESS_2
: 다른 수동 외부 IP 주소
NAT에 할당된 외부 IP 주소 드레이닝
수동으로 구성된 IP 주소를 삭제하기 전에 기존 연결이 중단되지 않도록 드레이닝 할 수 있습니다. IP 주소를 드레이닝하면 모든 기존 연결은 자연적으로 만료될 때까지 계속됩니다. 기존 로그를 보고 기존 상태를 확인할 수 있습니다
드레이닝한 IP 주소에는 새 연결이 허용되지 않습니다. 그러나 IP 주소는 NAT 구성과 연결된 상태로 유지됩니다.
NAT 구성에는 활성 주소가 최소 하나 이상 있어야 합니다. 즉, 구성의 모든 IP 주소를 드레이닝할 수 없습니다.
NAT IP 주소의 상태를 확인하려면 Public NAT 구성을 확인하세요.
콘솔
Trusted Cloud 콘솔에서 Cloud NAT 페이지로 이동합니다.
Cloud NAT 게이트웨이를 클릭합니다.
수정을 클릭합니다.
NAT IP 주소에서 IP 주소 옆에 있는 IP 드레이닝 값을 켜기로 설정합니다.
저장을 클릭합니다.
gcloud
gcloud compute routers nats update
명령어를 사용합니다.
주소를 드레이닝하려면 동일한 명령어에서 주소를 활성 풀에서 드레이닝 풀로 이동해야 합니다. 단일 명령어의 드레이닝 풀에 추가하지 않고 활성 풀에서 삭제하면 IP 주소가 서비스에서 삭제되고 기존 연결이 즉시 종료됩니다.
IP 주소를 드레이닝 풀에서 활성 풀로 이동하면 IP 주소 드레이닝이 취소됩니다. NAT IP 주소를 두 풀에서 모두 제거하면 NAT 구성에서 연결 해제됩니다.
이 명령어는 NAT 구성의 다른 필드를 변경하지 않습니다.
gcloud compute routers nats update NAT_CONFIG \ --router=NAT_ROUTER \ --region=REGION \ --nat-external-ip-pool=IP_ADDRESS_2 \ --nat-external-drain-ip-pool=IP_ADDRESS_1
각 항목의 의미는 다음과 같습니다.
--nat-external-ip-pool=IP_ADDRESS_2
:IP_ADDRESS_1
를 생략하도록 활성 풀을 업데이트--nat-external-drain-ip-pool=IP_ADDRESS_1
: 드레이닝 풀에IP_ADDRESS_1
를 추가
다음을 바꿉니다.
NAT_CONFIG
: NAT 구성 이름NAT_ROUTER
: Cloud Router의 이름REGION
: 업데이트할 NAT의 리전. 지정하지 않으면 리전을 선택하라는 메시지가 표시될 수 있습니다(대화형 모드만 해당).IP_ADDRESS_2
: IP 주소입니다.IP_ADDRESS_1
: 다른 IP 주소입니다.
엔드포인트 매핑 업데이트
게이트웨이의 엔드포인트 독립 매핑을 사용 설정 또는 사용 중지할 수 있습니다. 기본적으로 이 옵션은 사용 중지되어 있습니다. 엔드포인트 독립 매핑을 사용 설정에서 중지로(또는 중지에서 사용 설정으로) 전환할 때는 기존 연결이 중단되지 않습니다.
Cloud NAT 게이트웨이에서 NAT 규칙이나 동적 포트 할당을 사용하는 경우에는 엔드포인트 독립 매핑을 사용 설정할 수 없습니다.
콘솔
Trusted Cloud 콘솔에서 Cloud NAT 페이지로 이동합니다.
Cloud NAT 게이트웨이를 클릭합니다.
수정을 클릭합니다.
고급 구성을 클릭합니다.
엔드포인트 종속 매핑을 사용 설정하려면 엔드포인트 독립 매핑 사용 설정 체크박스를 선택합니다. 엔드포인트 독립 매핑을 사용 중지하려면 체크박스를 선택 해제합니다.
저장을 클릭합니다.
gcloud
gcloud compute routers nats update
명령어를 사용합니다.
gcloud compute routers nats update NAT_CONFIG \ --router=NAT_ROUTER \ --region=REGION \ [--enable-endpoint-independent-mapping | --no-enable-endpoint-independent-mapping]
다음을 바꿉니다.
NAT_CONFIG
: NAT 구성 이름NAT_ROUTER
: Cloud Router의 이름REGION
: 업데이트할 NAT의 리전입니다. 지정하지 않으면 리전을 선택하라는 메시지가 표시될 수 있습니다(대화형 모드만 해당).
로깅 업데이트
기존 Cloud NAT 게이트웨이의 로깅을 추가, 수정 또는 삭제하려면 로깅 구성을 참고하세요.
Public NAT 구성 삭제
게이트웨이 구성을 삭제하면 Cloud Router에서 NAT 구성이 삭제됩니다. 게이트웨이 구성을 삭제해도 라우터 자체는 삭제되지 않습니다.
콘솔
Trusted Cloud 콘솔에서 Cloud NAT 페이지로 이동합니다.
삭제하려는 게이트웨이 구성 옆의 체크박스를 선택합니다.
메뉴에서 삭제를 클릭합니다.
gcloud
gcloud compute routers nats delete NAT_CONFIG \ --router=ROUTER_NAME \ --region=REGION
다음을 바꿉니다.
NAT_CONFIG
: NAT 구성 이름ROUTER_NAME
: Cloud Router의 이름REGION
: 삭제할 NAT의 리전. 지정하지 않으면 리전을 선택하라는 메시지가 표시될 수 있습니다(대화형 모드만 해당).
할당량 및 한도
할당량 및 한도 정보는 할당량 및 한도를 참고하세요.
설정 예시
다음 단계
- Cloud NAT에 로깅 및 모니터링 구성하기
- NAT 구성의 일반적인 문제 해결하기