이 문서에서는 매우 안전하고 확장 가능하며 복원력 있는 아웃바운드 연결을 제공할 수 있는 NAT(네트워크 주소 변환) 게이트웨이 리소스의 주요 구성 요소에 대해 설명합니다. NAT 게이트웨이 리소스는 Azure NAT 게이트웨이 서비스의 일부입니다.
지원되는 클라이언트를 통해 구독에서 NAT 게이트웨이를 구성할 수 있습니다. 이러한 클라이언트에는 Azure 포털, Azure CLI, Azure PowerShell, Azure Resource Manager 템플릿 또는 적절한 대안이 포함됩니다.
Azure NAT 게이트웨이 SKU들
Azure NAT 게이트웨이 StandardV2 및 Standard의 두 SKU에서 사용할 수 있습니다.
StandardV2 SKU는 기본적으로 영역 중복입니다. 한 지역 내의 여러 가용성 영역을 자동으로 가로질러 이동하여 한 영역이 사용할 수 없는 경우에도 지속적인 외부 연결을 제공합니다.
표준 SKU는 영역 리소스입니다. 특정 가용성 영역에 배포되며 해당 영역 내에서 복원력이 있습니다.
StandardV2 NAT 게이트웨이는 IPv4 및 IPv6 공용 IP를 지원하는 반면 표준 NAT 게이트웨이는 IPv4 공용 IP만 지원합니다.
Azure NAT 게이트웨이 아키텍처
Azure NAT 게이트웨이는 소프트웨어 정의 네트워킹을 사용하여 완전 관리형 분산 서비스로 작동합니다. 기본적으로 NAT 게이트웨이는 여러 장애 도메인에 걸쳐 있으므로 서비스에 영향을 주지 않고 여러 오류를 견딜 수 있습니다.
Azure NAT 게이트웨이 Azure 가상 네트워크의 연결된 서브넷 내의 프라이빗 인스턴스에 대한 원본 SNAT(네트워크 주소 변환)를 제공합니다. 가상 머신의 개인 IP는 NAT 게이트웨이의 고정 공용 IP 주소에 SNAT를 사용하여 인터넷에 아웃바운드로 연결합니다. Azure NAT 게이트웨이은 오직 아웃바운드로 시작된 연결에 대한 응답 패킷에 대하여 DNAT(대상 네트워크 주소 변환)를 제공합니다.
NAT 게이트웨이가 가상 네트워크 내의 서브넷으로 구성된 경우 인터넷으로 전송되는 모든 아웃바운드 트래픽에 대한 서브넷의 기본 다음 홉 유형이 됩니다. 추가 라우팅 구성은 필요하지 않습니다. NAT 게이트웨이는 인터넷에서 원치 않는 인바운드 연결을 제공하지 않습니다. DNAT는 아웃바운드 패킷에 대한 응답으로 도착하는 패킷에 대해서만 수행됩니다.
서브넷
StandardV2 또는 Standard NAT 게이트웨이를 가상 네트워크 내의 여러 서브넷에 연결하여 인터넷에 아웃바운드 연결을 제공할 수 있습니다. NAT 게이트웨이가 서브넷에 연결되면 인터넷에 대한 기본 경로를 가정합니다. NAT 게이트웨이는 인터넷으로 향하는 모든 아웃바운드 트래픽에 대한 다음 홉 유형으로 사용됩니다.
NAT 게이트웨이에는 서브넷 구성에 대해 다음과 같은 제한 사항이 있습니다.
각 서브넷에는 둘 이상의 NAT 게이트웨이를 연결할 수 없습니다.
NAT 게이트웨이를 다른 가상 네트워크의 서브넷에 연결할 수 없습니다.
게이트웨이 서브넷에는 NAT 게이트웨이를 사용할 수 없습니다. 게이트웨이 서브넷은 Azure 가상 네트워크와 온-프레미스 위치 간에 암호화된 트래픽을 보내기 위해 VPN 게이트웨이에 대해 지정된 서브넷입니다.
고정 공용 IP 주소
NAT 게이트웨이는 고정 공용 IP 주소 또는 공용 IP 접두사와 연결할 수 있습니다. 공용 IP 접두사를 할당하면 전체 공용 IP 접두사가 사용됩니다. 공용 IP 접두사를 직접 사용하거나 접두사 공용 IP 주소를 여러 NAT 게이트웨이 리소스에 분산할 수 있습니다. NAT 게이트웨이는 모든 트래픽을 접두사 IP 주소 범위로 보냅니다.
이러한 조건은 다음과 같습니다.
StandardV2 NAT 게이트웨이는 최대 16개의 IPv4 및 16개의 IPv6 공용 IP 주소를 지원합니다.
IPv6 공용 IP 주소 또는 접두사에서는 표준 NAT 게이트웨이를 사용할 수 없습니다. 표준 NAT 게이트웨이는 최대 16개의 IPv4 공용 IP 주소를 지원합니다.
기본 SKU에 대한 공용 IP 주소가 있는 NAT 게이트웨이는 사용할 수 없습니다.
| Azure NAT 게이트웨이 SKU | IPv4 | IPv6 |
|---|---|---|
| StandardV2 | 예, IPv4 공용 IP 주소 및 접두사를 지원합니다. | 예, IPv6 공용 IP 주소 및 접두사를 지원합니다. |
| 스탠다드 | 예, IPv4 공용 IP 주소 및 접두사를 지원합니다. | 아니요, IPv6 공용 IP 주소 및 접두사를 지원하지 않습니다. |
SNAT 포트
SNAT 포트 인벤토리는 공용 IP 주소, 공용 IP 접두사 또는 NAT 게이트웨이에 연결된 둘 다에서 제공됩니다. SNAT 포트 인벤토리는 NAT 게이트웨이에 연결된 서브넷 내의 모든 인스턴스에 요청 시 사용할 수 있습니다. 인스턴스당 SNAT 포트의 사전 할당은 필요하지 않습니다.
SNAT 포트 및 Azure NAT 게이트웨이에 대한 자세한 내용은 Azure NAT 게이트웨이를 사용한 SNAT(원본 네트워크 주소 변환)를 참조하세요.
가상 네트워크 내의 여러 서브넷이 동일한 NAT 게이트웨이 리소스에 연결된 경우 NAT 게이트웨이에서 제공하는 SNAT 포트 인벤토리는 모든 서브넷에서 공유됩니다.
SNAT 포트는 연결 흐름을 서로 구분하는 고유 식별자 역할을 합니다. 동일한 SNAT 포트를 사용하여 동시에 서로 다른 대상 엔드포인트에 연결할 수 있습니다.
서로 다른 SNAT 포트 는 서로 연결 흐름을 구분하기 위해 동일한 대상 엔드포인트 에 연결하기 위해 사용됩니다. 동일한 대상에 연결하기 위해 다시 사용되는 SNAT 포트는 재사용하기 전에 재사용 쿨다운 타이머 에 배치됩니다.
단일 NAT 게이트웨이는 연결된 공용 IP 주소 수만큼 확장할 수 있습니다. NAT 게이트웨이의 각 공용 IP 주소는 아웃바운드 연결을 위해 64,512개의 SNAT 포트를 제공합니다. NAT 게이트웨이는 1백만 개 이상의 SNAT 포트까지 확장할 수 있습니다. TCP 및 UDP는 별도의 SNAT 포트 인벤토리이며 NAT 게이트웨이와 관련이 없습니다.
가용성 영역
Azure NAT 게이트웨이 두 개의 SKU인 Standard 및 StandardV2가 있습니다. 아키텍처가 영역 오류에 강한 내구성을 갖추도록 하기 위해, 영역 중복 리소스인 StandardV2 NAT 게이트웨이를 배포하세요. 지역의 가용성 영역 이 중단되면 나머지 정상 영역에서 새 연결이 흐릅니다.
표준 NAT 게이트웨이는 영역 리소스이므로 개별 가용성 영역에서 배포하고 작동할 수 있습니다. 표준 NAT 게이트웨이와 연결된 영역이 중단되면 NAT 게이트웨이와 연결된 서브넷에 대한 아웃바운드 연결에 영향을 줍니다.
가용성 영역 및 Azure NAT 게이트웨이 대한 자세한 내용은
NAT 게이트웨이를 배포한 후에는 영역 선택을 변경할 수 없습니다.
프로토콜
NAT 게이트웨이는 UDP 및 TCP 흐름의 IP 및 IP 전송 헤더와 상호 작용합니다. NAT 게이트웨이는 애플리케이션 계층 페이로드에 독립적입니다. ICMP와 같은 다른 IP 프로토콜은 지원되지 않습니다.
TCP 재설정
NAT 게이트웨이가 존재하지 않는 연결 흐름에서 트래픽을 감지하면 TCP 재설정 패킷이 전송됩니다. TCP 재설정 패킷은 수신 엔드포인트에 연결 흐름이 해제되었으며 이 동일한 TCP 연결에 대한 향후 통신이 실패했음을 나타냅니다. TCP 재설정은 NAT 게이트웨이에 대해 단방향입니다.
다음과 같은 경우 연결 흐름이 존재하지 않을 수 있습니다.
연결 흐름에서 비활성 기간이 지난 후 연결이 유휴 시간 제한에 도달하고 연결이 자동으로 삭제됩니다.
Azure 네트워크 쪽 또는 공용 인터넷 쪽에서 보낸 발신자가 연결이 끊어진 후 트래픽을 보냈습니다.
시스템은 삭제된 연결 흐름에서 트래픽을 감지하는 경우에만 TCP 재설정 패킷을 보냅니다. 이 작업은 연결 흐름이 삭제된 후 TCP 재설정 패킷이 바로 전송되지 않을 수 있음을 의미합니다.
시스템은 트래픽이 Azure 네트워크 쪽 또는 공용 인터넷 쪽에서 발생하는지 여부에 관계없이 존재하지 않는 연결 흐름에서 트래픽을 감지하는 응답으로 TCP 재설정 패킷을 보냅니다.
TCP 유휴 시간 제한
NAT 게이트웨이는 TCP 프로토콜에 대해 4분에서 120분의 구성 가능한 유휴 시간 제한 범위를 제공합니다. UDP 프로토콜의 구성 불가능한 유휴 시간 제한은 4분입니다.
연결이 유휴 상태가 되면 NAT 게이트웨이는 연결 유휴 시간이 초과될 때까지 SNAT 포트를 유지합니다. 유휴 시간 제한 시간이 길면 SNAT 포트 소모 가능성이 불필요하게 증가할 수 있으므로 TCP 유휴 시간 제한 기간을 기본 시간인 4분보다 길게 늘리는 것은 권장되지 않습니다. 유휴 타이머는 유휴 상태가 되지 않는 흐름에 영향을 주지 않습니다.
TCP keepalives를 사용하여 오랫동안 유휴 상태인 연결을 새로고침하고 엔드포인트의 생존 여부를 감지하는 패턴을 제공할 수 있습니다. 자세한 내용은 .NET 예제 참조하세요. TCP keepalives는 엔드포인트에 대한 ACK(중복 승인)로 표시되고, 오버헤드가 낮으며, 애플리케이션 계층에 보이지 않습니다.
UDP 유휴 시간 제한 타이머는 구성할 수 없습니다. UDP keepalives를 사용하여 연결이 유휴 시간 제한 값에 도달하지 않도록 하고 연결을 유지 관리해야 합니다. TCP 연결과 달리 연결의 한쪽에서 사용하도록 설정된 UDP 유지는 한 방향의 트래픽 흐름에만 적용됩니다. 트래픽 흐름을 활성 상태로 유지하려면 트래픽 흐름의 양쪽에서 UDP keepalives를 사용하도록 설정해야 합니다.
타이머
포트 재사용 타이머
포트 재사용 타이머는 연결이 닫힌 후 원본 포트가 동일한 대상 엔드포인트로의 새 연결을 위해 NAT 게이트웨이에 의해 재사용될 수 있기 전까지 보류되는 시간을 결정합니다.
다음 표에서는 NAT 게이트웨이에서 TCP 포트를 동일한 대상 엔드포인트에 다시 사용할 수 있게 되는 경우에 대한 정보를 제공합니다.
| Timer | 설명 | 값 |
|---|---|---|
| TCP FIN | TCP FIN 패킷이 연결을 닫으면 65초 타이머가 SNAT 포트를 유지합니다. 타이머가 종료된 후 SNAT 포트를 다시 사용할 수 있습니다. | 65초 |
| TCP RST | TCP RST 패킷(재설정)이 연결을 닫으면 16초 타이머가 SNAT 포트를 유지합니다. 타이머가 종료되면 포트를 다시 사용할 수 있습니다. | 16초 |
| TCP 절반 열기 | 한 연결 엔드포인트가 다른 엔드포인트에서 승인을 기다리는 연결을 설정하면 30초 타이머가 시작됩니다. 트래픽이 감지되지 않으면 연결이 닫힙니다. 연결이 닫히면 원본 포트를 동일한 대상 엔드포인트에 다시 사용할 수 있습니다. | 30초 |
UDP 트래픽의 경우 연결이 닫히면 포트가 65초 동안 보류된 후 다시 사용할 수 있습니다.
유휴 시간 초과 타이머
| Timer | 설명 | 값 |
|---|---|---|
| TCP 유휴 시간 제한 | 두 엔드포인트가 장기간 데이터를 전송하지 않으면 TCP 연결이 유휴 상태가 될 수 있습니다. 타이머를 4분(기본값)에서 120분(2시간)으로 구성하여 유휴 연결 시간을 초과할 수 있습니다. 흐름의 트래픽은 유휴 시간 초과 타이머를 재설정합니다. | 구성; 4분(기본값)~120분 |
| UDP 유휴 시간 초과 | 엔드포인트가 장기간 데이터를 전송하지 않으면 UDP 연결이 유휴 상태가 될 수 있습니다. UDP 유휴 시간 초과 타이머는 4분이며 구성할 수 없습니다. 흐름의 트래픽은 유휴 시간 초과 타이머를 재설정합니다. | 구성할 수 없습니다. 4분 |
참고
이러한 타이머 설정은 변경될 수 있습니다. 제공된 값은 문제 해결에 도움이 될 수 있습니다. 현재 특정 타이머에 종속되지 않아야 합니다.
대역폭
Azure NAT 게이트웨이 각 SKU에는 대역폭 제한이 있습니다.
StandardV2 NAT 게이트웨이는 NAT 게이트웨이 리소스당 최대 100Gbps의 데이터 처리량을 지원합니다.
표준 NAT 게이트웨이는 아웃바운드 및 인바운드(응답) 데이터 간에 분할되는 50Gbps의 처리량을 제공합니다. 데이터 처리량은 아웃바운드의 경우 25Gbps, 표준 NAT 게이트웨이 리소스당 인바운드(응답) 데이터의 경우 25Gbps로 제한됩니다.
성능
표준 및 StandardV2 NAT 게이트웨이는 각각 TCP 및 UDP 트래픽을 위해 인터넷을 통해 동일한 대상 엔드포인트에 대한 공용 IP 주소당 최대 50,000개의 동시 연결을 지원합니다.
각각은 최대 2백만 개의 활성 연결을 동시에 지원할 수 있습니다. NAT 게이트웨이의 연결 수는 5개 튜플(원본 IP 주소, 원본 포트, 대상 IP 주소, 대상 포트 및 프로토콜)을 기반으로 계산됩니다. NAT 게이트웨이가 2백만 개의 연결을 초과하면 데이터 경로의 가용성이 감소하고 새 연결이 실패합니다.
StandardV2 NAT 게이트웨이는 초당 최대 1,000만 개의 패킷을 처리할 수 있습니다. 표준 NAT 게이트웨이는 초당 최대 5백만 개의 패킷을 처리할 수 있습니다.
제한 사항
표준 및 기본 공용 IP는 StandardV2 NAT 게이트웨이와 호환되지 않습니다. 대신 StandardV2 공용 IP를 사용합니다.
StandardV2 공용 IP를 만들려면 Azure 공용 IP 만들기 참조하세요.
기본 부하 분산 장치는 NAT 게이트웨이와 호환되지 않습니다. 표준 및 StandardV2 NAT 게이트웨이 모두에 표준 부하 분산 장치를 사용합니다.
부하 분산 장치를 기본에서 표준으로 업그레이드하려면 Azure 공용 부하 분산 장치 업그레이드 참조하세요.
기본 공용 IP는 표준 NAT 게이트웨이와 호환되지 않습니다. 대신 표준 공용 IP를 사용합니다.
공용 IP 주소를 기본에서 표준으로 업그레이드하려면 기본 공용 IP 주소를 표준으로 업그레이드를 참조하세요.
Azure NAT 게이트웨이 ICMP를 지원하지 않습니다.
Azure NAT 게이트웨이에서는 IP 분할을 사용할 수 없습니다.
Azure NAT 게이트웨이 라우팅 구성 유형이 Internet인 공용 IP 주소를 지원하지 않습니다. 공용 IP에서 Internet 라우팅 구성을 지원하는 Azure 서비스 목록을 보려면 공용 인터넷을 통한 라우팅을 지원하는 서비스 목록을 참조하세요.
Azure NAT 게이트웨이 DDoS 보호가 설정된 공용 IP를 지원하지 않습니다. 자세한 내용은 DDoS 제한 사항을 참조하세요.
Azure NAT 게이트웨이는 vWAN(보안 가상 허브 네트워크) 아키텍처에서 지원되지 않습니다.
표준 NAT 게이트웨이를 StandardV2 NAT 게이트웨이로 업그레이드할 수 없습니다. 영역 NAT 게이트웨이를 사용하는 아키텍처에 대한 영역 복원력을 달성하려면 Standard SKU NAT 게이트웨이를 대체할 StandardV2 NAT 게이트웨이를 배포해야 합니다.
StandardV2 NAT 게이트웨이에서는 표준 공용 IP를 사용할 수 없습니다. StandardV2 NAT 게이트웨이를 사용하려면 새 StandardV2 공용 IP로 재설정해야 합니다.
StandardV2 NAT 게이트웨이의 더 알려진 제한 사항은 Azure NAT 게이트웨이 SKU 참조하세요.
관련 콘텐츠
- Azure NAT 게이트웨이 개요 검토합니다.
- Azure NAT 게이트웨이의 메트릭 및 경고에 대해 알아봅니다.
- Azure NAT 게이트웨이 문제를 해결하는 방법을 알아봅니다.