Azure NAT Gateway는 언제 사용해야 하나요?
Azure NAT Gateway 서비스의 배포를 고려할 때 먼저 시나리오를 분석해야 합니다. 서비스는 기본적으로 Azure Virtual Network를 통해 배포되지 않으며, 모든 시나리오가 이 서비스에 적합한 것은 아닙니다. 그러나 온라인 소매 회사에서 겪는 Azure VM의 연결 문제를 해결하는 데 적합한 솔루션입니다.
Azure NAT Gateway 서비스 사용에 대한 시나리오
Azure NAT Gateway는 복잡한 사전 계획 없이 주문형 아웃바운드 연결에 NAT 게이트웨이 리소스를 제공하므로 필요할 때 비교적 쉽게 배포할 수 있습니다. 설정한 후에는 모든 VM 인스턴스가 아웃바운드에 연결되고 지정된 고정 IP 주소를 사용하게 되며, 그러면 허용 목록 생성이 간소화됩니다.
VM이 인터넷 리소스에 액세스할 때 사용하는 공용 IP 주소를 전용으로 사용하려면 Azure NAT Gateway가 도움이 될 수 있습니다. 고정된 IP 주소 집합의 연결만 허용하는 파트너 조직이 있다고 가정해 보겠습니다. 공용 IP 접두사를 Azure NAT Gateway에 연결하여 연속 IP 집합이 아웃바운드 연결에 사용되는지 확인할 수 있습니다. 그런 다음, 이 예측 가능한 IP 목록을 기반으로 대상에서 방화벽을 구성할 수 있습니다. 예를 들어 이 솔루션은 파트너가 연결해야 하는 인터넷 연결 API를 호스트하는 시나리오에 대응할 수 있습니다.
Azure 가상 네트워크에 많은 아웃바운드 연결을 만들고 아웃바운드 통신에 다양한 포트를 많이 사용하는 리소스가 있는 경우 Azure NAT Gateway 서비스 배포를 고려해야 합니다. 이 서비스는 사용 가능한 포트 번호를 통합 및 최대화하고 포트 소모를 방지할 수 있습니다.
예를 들어 서브넷이 몇 개 만들어진 가상 네트워크가 있을 수 있습니다. 이 서브넷은 Azure VM을 호스트하고 다른 서브넷은 웹 사이트 또는 다른 서비스를 통해 앱 서비스를 호스트합니다. Azure NAT Gateway를 사용하지 않으면 VM 및 기타 서비스에서는 아웃바운드 연결에 사용할 수 있는 포트 수가 제한됩니다. 일반적으로 이 숫자는 이론적으로 사용할 수 있는 65,535개 포트보다 작습니다. VM 또는 서비스 중 하나가 사용 가능한 포트 풀을 소진할 경우 연결 시간이 초과됩니다. 포트가 VM별로 할당되고 이러한 모든 리소스에 공용 통신에 사용되는 다른 IP 주소가 있을 수 있으므로 다른 VM에서 포트 풀을 공유할 수 없습니다. 공용 IP가 할당된 Azure VM은 이 주소를 사용하여 인터넷 리소스에 액세스합니다. 하지만 공용 IP가 없는 VM은 현재 Azure 서비스 주소 풀에서 사용할 수 있는 주소를 사용합니다. Azure NAT Gateway는 대상 서브넷에 있는 VM의 전체 포트 범위와 아웃바운드 연결을 위한 고유한 공용 IP(또는 IP 범위)를 제공하여 이러한 문제를 모두 해결하는 데 도움이 됩니다.
Azure NAT Gateway 서비스 사용에 적합하지 않은 시나리오
Azure NAT Gateway는 유용하고 배포하기 쉬운 서비스이지만 적합하지 않은 시나리오가 있을 수 있습니다. 몇 가지 예제는 다음과 같습니다.
- 인터넷 리소스에 거의 연결하지 않는 몇 개의 VM만 있어 Azure VM 레이아웃이 간단한 경우 Azure NAT Gateway가 필요하지 않을 수 있습니다. 대신 Azure 네이티브 주소 변환을 사용하거나 하나 이상의 VM에 공용 IP를 할당할 수 있습니다.
- 인터넷에서 들어오는 Azure VM에 대한 인바운드 연결을 관리해야 하는 경우 Azure NAT Gateway는 유용하지 않습니다. Azure NAT Gateway는 NAT 뒤에 있는 Azure VM(또는 다른 서비스)에서 시작된 경우에만 인바운드 연결을 관리합니다. 즉, Azure VM에 설치된 Azure VM 또는 소프트웨어가 인터넷의 리소스에 대한 연결을 시작합니다. Azure NAT Gateway는 해당 연결을 등록합니다. 인터넷의 해당 리소스가 Azure VM에 일부 데이터를 반환하거나 인바운드 연결을 시작해야 하는 경우 허용됩니다. 그러나 아웃바운드 지향 트래픽에 대한 응답이 아닌 인터넷에서 시작된 연결은 차단됩니다.
- Azure SQL Database 또는 Azure Storage 같은 다른 Azure 기반 서비스에 대한 연결을 제공해야 하는 경우 Azure NAT Gateway를 사용해서는 안 됩니다. Azure 리소스에 연결하기 위해 Azure NAT Gateway를 배포할 필요는 없습니다. Azure 서비스에 연결할 때 Azure Private Link를 사용하여 Azure 리소스를 가상 네트워크에 연결하고 Azure 서비스 리소스에 대한 액세스를 제어할 수 있습니다. 예를 들어 Azure Storage에 액세스하는 경우 스토리지에 프라이빗 엔드포인트를 사용하여 연결이 완전히 비공개인지 확인합니다.
- Azure Gateway 서브넷에는 Azure NAT Gateway를 사용할 수 없습니다. 또한 Azure에서는 가상 네트워크가 두 개 이상인 단일 Azure NAT Gateway 서비스를 사용할 수 없습니다. 그러나 단일 Azure NAT Gateway 서비스를 사용하여 동일한 가상 네트워크 내에서 두 개 이상의 서브넷을 다룰 수는 있습니다.