이 문서를 검토하여 NAT 게이트웨이를 통해 가상 네트워크를 설계할 때 고려해야 하는 사항을 숙지합니다.
NAT 게이트웨이를 사용하여 인터넷에 연결
NAT Gateway는 인터넷을 통해 퍼블릭 엔드포인트에 연결해야 하는 모든 프로덕션 워크로드에 대한 아웃바운드 시나리오에 사용하는 것이 좋습니다. 아웃바운드 연결은 서브넷과 하나 이상의 공용 IP 주소를 사용하여 NAT 게이트웨이를 배포할 때 즉시 수행됩니다. NAT 게이트웨이와의 아웃바운드 연결을 시작하는 데는 라우팅 구성이 필요하지 않습니다. NAT 게이트웨이는 서브넷의 인터넷 기본 경로가 됩니다.
다른 아웃바운드 구성이 부하 분산 장치 또는 IL PIP(인스턴스 수준 공용 IP)와 같은 가상 네트워크 내에 있는 경우 NAT 게이트웨이가 아웃바운드 연결보다 우선적으로 적용됩니다. 새 아웃바운드 시작 트래픽 및 반환 트래픽은 NAT 게이트웨이를 사용합니다. NAT 게이트웨이를 기존 아웃바운드 구성이 있는 서브넷에 추가하면 아웃바운드 연결에 대한 가동 중지 시간이 없습니다.
동적 워크로드의 수요에 맞게 NAT 게이트웨이 크기 조정
NAT Gateway 크기 조정은 주로 사용 가능한 공유 SNAT 포트 인벤토리를 관리하는 기능입니다.
워크로드를 스케일링할 때 각 흐름에 새 SNAT 포트가 필요하다고 가정한 다음 아웃바운드 트래픽에 대해 사용 가능한 총 IP 주소 수를 스케일링합니다. 디자인할 규모를 신중하게 고려한 다음, 그에 따라 IP 주소 수량을 할당합니다. NAT Gateway에는 NAT 게이트웨이에 연결된 모든 서브넷에 대해 예상되는 최대 아웃바운드 흐름에 충분한 SNAT 포트 인벤토리가 필요합니다.
SNAT 포트 고갈이 다가오면 연결 흐름이 성공하지 못할 수 있습니다.
규모 조정 고려 사항
각 NAT Gateway 공용 IP 주소는 아웃바운드 연결을 위해 64,512개의 SNAT 포트를 제공합니다. NAT 게이트웨이는 100만 개가 넘는 SNAT 포트까지 스케일 업할 수 있습니다.
SNAT는 서브넷의 개인 주소를 NAT 게이트웨이에 연결된 하나 이상의 공용 IP 주소에 매핑하여 프로세스에서 원본 주소와 원본 포트를 다시 작성합니다. 동일한 대상 엔드포인트에 여러 연결이 이루어지면 새 SNAT 포트가 사용됩니다. 동일한 대상으로 이동하는 서로 다른 연결 흐름을 구분하려면 새 SNAT 포트를 사용해야 합니다.
다른 대상 엔드포인트로 이동하는 연결 흐름은 동일한 SNAT 포트를 동시에 다시 사용할 수 있습니다. 가능한 경우 다른 대상으로 전송된 SNAT 포트 연결이 다시 사용됩니다. SNAT 포트 소모 방법으로 인해 흐름이 성공하지 못할 수 있습니다.
SNAT 예제는 NAT Gateway용 SNAT 흐름 예제를 참조하세요.
Private Link에 Azure 서비스 연결
Azure 가상 네트워크에서 Azure PaaS 서비스로 연결하는 작업은 Azure 백본을 통해 직접 수행하고 인터넷을 무시할 수 있습니다. 인터넷을 무시하여 다른 Azure PaaS 서비스에 연결하면 SNAT 포트를 확보하고 SNAT 포트 소모 위험을 줄입니다. SNAT 포트 인벤토리를 확보하기 위해 Azure PaaS 서비스에 연결할 수 있는 경우 Private Link를 사용해야 합니다.
Private Link는 가상 머신의 개인 IP 주소 또는 Azure 네트워크의 다른 컴퓨팅 리소스를 사용하여 Azure 백본을 통해 비공개로 안전하게 Azure PaaS 서비스에 직접 연결합니다. Private Link에서 지원하는 사용 가능한 Azure 서비스 목록을 참조하세요.
참고 항목
Microsoft는 Azure에서 호스트되는 서비스에 대한 보안 및 프라이빗 액세스를 위해 Azure Private Link를 사용할 것을 권장합니다. 서비스 엔드포인트를 사용하여 Azure 백본을 통해 Azure PaaS 서비스에 직접 연결할 수도 있습니다.
Azure 가상 네트워크에 대한 아웃바운드 및 인바운드 연결 제공
NAT 게이트웨이, 부하 분산 장치 및 인스턴스 수준 공용 IP는 흐름 방향을 인식하며 동일한 가상 네트워크에 공존하여 아웃바운드 및 인바운드 연결을 원활하게 제공할 수 있습니다. 부하 분산 장치 또는 인스턴스 수준 공용 IP를 통한 인바운드 트래픽은 NAT 게이트웨이를 통한 아웃바운드 트래픽과 별도로 변환됩니다.
프라이빗 인스턴스는 아웃바운드 트래픽 및 아웃바운드 시작 흐름에 대한 모든 응답 트래픽에 NAT 게이트웨이를 사용합니다. 프라이빗 인스턴스는 인바운드 트래픽 및 인바운드 시작 흐름에 대한 모든 응답 트래픽에 인스턴스 수준 공용 IP 또는 부하 분산 장치를 사용합니다.
다음 예에서는 부하 분산 장치 또는 인스턴스 수준 공용 IP와 NAT 게이트웨이의 공존을 보여줍니다. 인바운드 트래픽은 부하 분산 장치 또는 공용 IP를 통과합니다. 아웃바운드 트래픽은 NAT 게이트웨이를 트래버스합니다.
인스턴스 수준 공용 IP가 있는 NAT 게이트웨이 및 VM
그림: 인스턴스 수준 공용 IP가 있는 NAT 게이트웨이 및 VM
리소스 | 트래픽 흐름 방향 | 사용된 연결 방법 |
---|---|---|
VM(서브넷 1) | 인바운드 및 아웃바운드 | 인스턴스 수준 공용 IP NAT 게이트웨이 |
가상 머신 확장 집합(서브넷 1) | 인바운드 및 아웃바운드 | NA NAT 게이트웨이 |
VM(서브넷 2) | 인바운드 및 아웃바운드 | NA NAT 게이트웨이 |
가상 머신은 아웃바운드 및 반환 트래픽에 NAT 게이트웨이를 사용합니다. 인바운드에서 시작된 트래픽은 서브넷 1의 가상 머신과 직접 연결된 인스턴스 수준 공용 IP를 통과합니다. 서브넷 1의 가상 머신 확장 집합과 서브넷 2의 VM은 NAT Gateway를 통해서만 송신하고 응답 트래픽을 수신할 수 있습니다. 인바운드 시작 트래픽을 수신할 수 없습니다.
표준 공용 부하 분산 장치가 있는 NAT 게이트웨이 및 VM
그림: 표준 공용 부하 분산 장치가 있는 NAT 게이트웨이 및 VM
리소스 | 트래픽 흐름 방향 | 사용된 연결 방법 |
---|---|---|
VM 및 가상 머신 확장 집합(서브넷 1) | 인바운드 및 아웃바운드 | 부하 분산 장치 NAT 게이트웨이 |
VM(서브넷 2) | 인바운드 및 아웃바운드 | NA NAT 게이트웨이 |
NAT Gateway는 부하 분산 장치에 대한 부하 분산 규칙 또는 아웃바운드 규칙에서 아웃바운드 구성을 대체합니다. 백 엔드 풀의 VM 인스턴스는 NAT 게이트웨이를 사용하여 아웃바운드 트래픽을 송신하고 반환 트래픽을 수신합니다. 인바운드에서 시작된 트래픽은 부하 분산 장치의 백엔드 풀 내의 모든 VM 인스턴스(서브넷 1)에 대해 부하 분산 장치를 통과합니다. 서브넷 2의 VM은 NAT Gateway를 통해서만 송신하고 응답 트래픽을 수신할 수 있습니다. 인바운드 시작 트래픽을 수신할 수 없습니다.
인스턴스 수준 공용 IP 및 표준 공용 부하 분산 장치가 있는 NAT 게이트웨이 및 VM
그림: 인스턴스 수준 공용 IP 및 표준 공용 부하 분산 장치가 있는 NAT 게이트웨이 및 VM
리소스 | 트래픽 흐름 방향 | 사용된 연결 방법 |
---|---|---|
VM(서브넷 1) | 인바운드 및 아웃바운드 | 인스턴스 수준 공용 IP NAT 게이트웨이 |
가상 머신 확장 집합(서브넷 1) | 인바운드 및 아웃바운드 | 부하 분산 장치 NAT 게이트웨이 |
VM(서브넷 2) | 인바운드 및 아웃바운드 | NA NAT 게이트웨이 |
NAT 게이트웨이는 가상 머신의 부하 분산 장치 및 인스턴스 수준 공용 IP에 대한 부하 분산 규칙 또는 아웃바운드 규칙에서 아웃바운드 구성을 대체합니다. 서브넷 1 및 2의 모든 가상 머신은 아웃바운드 및 반환 트래픽에만 NAT Gateway를 사용합니다. 인스턴스 수준 공용 IP가 부하 분산 장치보다 우선합니다. 서브넷 1의 VM은 인바운드 시작 트래픽에 인스턴스 수준 공용 IP를 사용합니다. VMSS에는 인스턴스 수준 공용 IP가 없습니다.
NAT 게이트웨이에서 서비스 태그가 지정된 공용 IP를 사용하는 방법
서비스 태그는 지정된 Azure 서비스의 IP 주소 그룹을 나타냅니다. Microsoft는 서비스 태그에 포함된 주소 접두사를 관리하고 주소가 변경될 때 서비스 태그를 자동으로 업데이트하여 네트워크 보안 규칙 관리의 복잡성을 줄입니다.
서비스에 태그가 지정된 공용 IP 주소는 인터넷에 대한 아웃바운드 연결을 제공하기 위해 NAT 게이트웨이와 함께 사용할 수 있습니다. NAT 게이트웨이에 태그가 지정된 공용 IP를 추가하려면 Azure에서 포털, CLI 또는 powershell과 같은 사용 가능한 클라이언트를 사용하여 연결할 수 있습니다. 자세한 지침은 NAT 게이트웨이에 대한 공용 IP를 추가하고 제거하는 방법을 참조하세요.
참고 항목
라우팅 기본 설정이 "인터넷"인 공용 IP 주소는 NAT 게이트웨이에서 지원되지 않습니다. Microsoft 글로벌 네트워크를 통해 라우팅되는 공용 IP만 NAT 게이트웨이에서 지원됩니다.
VNet 흐름 로그를 사용하여 아웃바운드 네트워크 트래픽 모니터링
VNet(가상 네트워크) 흐름 로그는 가상 네트워크를 통과하는 IP 트래픽에 대한 정보를 기록하는 Azure Network Watcher의 기능입니다. NAT Gateway 뒤의 가상 머신에서 흐르는 아웃바운드 트래픽을 모니터링하려면 VNet 흐름 로그를 사용하도록 설정합니다.
VNet 흐름 로그를 사용하도록 설정하는 방법에 대한 가이드는 가상 네트워크 흐름 로그 관리를 참조하세요.
아웃바운드 트래픽에 대한 데이터를 쿼리하고 필터링할 수도 있는 Log Analytics 작업 영역의 로그 데이터에 액세스하는 것이 좋습니다. Log Analytics 사용에 대한 자세한 내용은 Log Analytics 자습서를 참조하세요.
VNet 흐름 로그 스키마에 대한 자세한 내용은 트래픽 분석 스키마 및 데이터 집계를 참조하세요.
참고 항목
가상 네트워크 흐름 로그에는 인터넷에 아웃바운드로 연결하는 VM 인스턴스의 개인 IP만 표시됩니다. VNet 흐름 로그는 아웃바운드로 연결하기 전에 VM의 개인 IP가 SNAT한 NAT Gateway 공용 IP 주소를 표시하지 않습니다.
제한 사항
- NAT Gateway는 vWAN 허브 구성에서 지원되지 않습니다.