가상 네트워크 트래픽 라우팅
이 문서에서는 Azure가 Azure, 온-프레미스 및 인터넷 리소스 간에 트래픽을 라우팅하는 방법을 알아봅니다. Azure는 Azure 가상 네트워크 내의 각 서브넷에 대한 경로 테이블을 자동으로 만들고 시스템 기본 경로를 테이블에 추가합니다. 가상 네트워크 및 서브넷에 대한 자세한 내용은 가상 네트워크 개요를 참조하세요. 사용자 지정 경로로 일부 Azure 시스템 경로를 재정의하고 경로 테이블에 사용자 지정 경로를 더 추가할 수 있습니다. Azure는 서브넷의 경로 테이블에 있는 경로에 따라 서브넷에서 아웃바운드 트래픽을 라우팅합니다.
시스템 경로
Azure는 시스템 경로를 자동으로 만들고 가상 네트워크의 각 서브넷에 경로를 할당합니다. 시스템 경로를 만들 수 없으며 시스템 경로를 제거할 수는 없지만 일부 시스템 경로를 사용자 지정 경로로 재정의할 수 있습니다. Azure는 각 서브넷에 대한 기본 시스템 경로를 만들고 특정 Azure 기능을 사용하는 경우 특정 서브넷 또는 모든 서브넷에 더 많은 선택적 기본 경로를 추가합니다.
기본값
각 경로에는 주소 접두사와 다음 홉 유형이 포함되어 있습니다. 서브넷을 나가는 트래픽이 경로의 주소 접두사 내의 IP 주소로 전송되는 경우 접두사를 포함하는 경로는 Azure에서 사용하는 경로입니다. 여러 경로에 동일한 접두사 또는 겹치는 접두사를 포함하는 경우 Azure에서 경로를 선택하는 방법에 대해 자세히 알아봅니다. 가상 네트워크를 만들 때마다 Azure에서 가상 네트워크 내의 각 서브넷에 대해 다음과 같은 기본 시스템 경로를 자동으로 만듭니다.
원본 | 주소 접두사 | 다음 홉 유형 |
---|---|---|
기본값 | 가상 네트워크에서 고유한 접두사 | 가상 네트워크 |
기본값 | 0.0.0.0/0 | 인터넷 |
기본값 | 10.0.0.0/8 | 없음 |
기본값 | 172.16.0.0/12 | 없음 |
기본값 | 192.168.0.0/16 | 없음 |
기본값 | 100.64.0.0/10 | 없음 |
이전 표에서 나열된 다음 홉 유형은 Azure에서 나열된 주소 접두사로 향하는 트래픽을 라우팅하는 방법을 나타냅니다. 다음 홉 유형에 대한 설명은 다음과 같습니다.
가상 네트워크: 가상 네트워크의 주소 공간에 속한 주소 범위 간에 트래픽을 라우팅합니다. Azure는 가상 네트워크의 주소 공간 내에 정의된 각 주소 범위에 해당하는 주소 접두사가 포함된 경로를 만듭니다. 정의된 여러 개의 주소 범위가 가상 네트워크 주소 공간에 있는 경우 Azure는 각 주소 범위에 대한 개별 경로를 만듭니다. 기본적으로 Azure는 서브넷 간에 트래픽을 라우팅합니다. 서브넷 간에 트래픽을 라우팅하기 위해 Azure에 대한 경로 테이블 또는 게이트웨이를 정의할 필요가 없습니다. Azure는 서브넷 주소 범위에 대한 기본 경로를 만들지 않습니다. 각 서브넷 주소 범위는 가상 네트워크 주소 공간의 주소 범위 내에 있습니다.
인터넷: 주소 접두사로 지정된 트래픽을 인터넷으로 라우팅합니다. 시스템 기본 경로에는 0.0.0.0/0 주소 접두사가 지정됩니다. Azure 기본 경로를 재정의하지 않으면 Azure는 가상 네트워크 내의 주소 범위에서 지정하지 않은 주소에 대한 트래픽을 인터넷으로 라우팅합니다. 이 라우팅에는 한 가지 예외가 있습니다. 대상 주소가 Azure 서비스의 경우 Azure는 트래픽을 인터넷으로 라우팅하는 대신 Azure 백본 네트워크를 통해 서비스에 직접 트래픽을 라우팅합니다. Azure 서비스 간의 트래픽은 인터넷을 트래버스하지 않습니다. 가상 네트워크가 존재하는 Azure 지역이나 Azure 서비스의 인스턴스가 배포된 Azure 지역은 중요하지 않습니다. 사용자 지정 경로로 0.0.0.0/0 주소 접두사에 대한 Azure 기본 시스템 경로를 재정의할 수 있습니다.
없음: None 다음 홉 유형으로 라우팅된 트래픽은 서브넷 외부로 라우팅되지 않고 삭제됩니다. Azure는 다음 주소 접두사에 대한 기본 경로를 자동으로 만듭니다.
- 10.0.0.0/8, 172.16.0.0/12 및 192.168.0.0/16: RFC 1918에서 프라이빗용으로 예약되어 있습니다.
- 100.64.0.0/10: RFC 6598에서 예약되어 있습니다.
가상 네트워크의 주소 공간에 이전 주소 범위 중 하나를 할당하면 Azure는 자동으로 경로에 대한 다음 홉 유형을 없음에서 가상 네트워크로 변경합니다. 예약된 4개 주소 접두사 중 하나를 포함하지만 동일하지 않은 주소 범위를 가상 네트워크 주소 공간에 할당하면, Azure는 해당 접두사에 대한 경로를 제거하고 가상 네트워크를 다음 홉 유형으로 추가한 주소 접두사에 대한 경로를 추가합니다.
선택적 기본 경로
Azure는 다른 Azure 기능에 대한 더 많은 기본 시스템 경로를 추가하지만, 해당 기능을 사용하는 경우에만 추가합니다. 기능에 따라 Azure는 가상 네트워크 내의 특정 서브넷 또는 가상 네트워크 내의 모든 서브넷에 선택적 기본 경로를 추가합니다. 다음 표에서는 다른 기능을 사용하도록 설정할 때 Azure에서 추가할 수 있는 다른 시스템 경로 및 다음 홉 유형을 나열합니다.
Source | 주소 접두사 | 다음 홉 유형 | 경로가 추가되는 가상 네트워크 내의 서브넷 |
---|---|---|---|
기본값 | 가상 네트워크에서 고유한 접두사 - 예: 10.1.0.0/16 | 가상 네트워크 피어링 | 모두 |
가상 네트워크 게이트웨이 | BGP(Border Gateway Protocol)를 통해 온-프레미스에서 보급되거나 로컬 네트워크 게이트웨이에 구성된 접두사 | 가상 네트워크 게이트웨이 | 모두 |
기본값 | 여러 접두사 | VirtualNetworkServiceEndpoint |
서비스 엔드포인트를 사용하도록 설정된 서브넷만 |
가상 네트워크 피어링: 두 가상 네트워크 간에 가상 네트워크 피어링을 만들 때 시스템은 피어링과 관련된 각 가상 네트워크의 주소 공간 내에 각 주소 범위에 대한 경로를 추가합니다. 가상 네트워크 피어링에 대해 자세히 알아보세요.
가상 네트워크 게이트웨이: 가상 네트워크 게이트웨이가 가상 네트워크에 추가되면 다음 홉 유형으로 나열되는 가상 네트워크 게이트웨이가 포함된 하나 이상의 경로가 추가됩니다. 게이트웨이가 서브넷에 경로를 추가하기 때문에 원본도 가상 네트워크 게이트웨이 입니다. 온-프레미스 네트워크 게이트웨이가 가상 네트워크 게이트웨이와 BGP 경로를 교환하는 경우 시스템은 각 경로에 대한 경로를 추가합니다. 이러한 경로는 온-프레미스 네트워크 게이트웨이에서 전파됩니다. Azure 가상 네트워크 게이트웨이에 가장 적은 수의 경로를 전파할 수 있도록 가능한 가장 큰 주소 범위로 온-프레미스 경로를 요약하는 것이 좋습니다. Azure 가상 네트워크 게이트웨이에 전파할 수 있는 경로의 수에는 제한이 있습니다. 자세한 내용은 Azure 제한을 참조하세요.
VirtualNetworkServiceEndpoint
: 서비스에 서비스 엔드포인트를 사용하도록 설정하면 Azure에서 특정 서비스에 대한 공용 IP 주소가 경로 테이블에 추가됩니다. 서비스 엔드포인트는 가상 네트워크 내의 개별 서브넷에 대해 사용하도록 설정되므로 경로는 서비스 엔드포인트가 사용하도록 설정된 서브넷의 경로 테이블에만 추가됩니다. Azure 서비스의 공용 IP 주소는 주기적으로 변경됩니다. 주소가 변경되면 Azure는 자동으로 경로 테이블의 주소를 관리합니다. 가상 네트워크 서비스 엔드포인트 및 서비스 엔드포인트를 만들 수 있는 서비스에 대해 자세히 알아봅니다.참고 항목
가상 네트워크 피어링 및
VirtualNetworkServiceEndpoint
다음 홉 유형은 Azure Resource Manager 배포 모델을 통해 만든 가상 네트워크 내의 서브넷 테이블을 라우팅하는 데에만 추가됩니다. 클래식 배포 모델을 통해 만든 가상 네트워크 서브넷에 연결되는 경로 테이블에는 다음 홉 유형이 추가되지 않습니다. Azure 배포 모델에 대해 자세히 알아보세요.
사용자 지정 경로
UDR(사용자 정의 경로)을 만들거나 온-프레미스 네트워크 게이트웨이와 Azure 가상 네트워크 게이트웨이 간에 BGP 경로를 교환하여 사용자 지정 경로를 만듭니다.
사용자 정의
트래픽 경로를 사용자 지정하려면 기본 경로를 수정하면 안 됩니다. Azure 기본 시스템 경로를 재정의하는 사용자 지정 또는 사용자 정의(정적) 경로를 만들어야 합니다. Azure에서 경로 테이블을 만든 다음 경로 테이블을 0개 이상의 가상 네트워크 서브넷에 연결합니다. 각 서브넷에는 0 또는 하나의 경로 테이블이 연결될 수 있습니다. 경로 테이블에 추가할 수 있는 최대 경로 수와 Azure 구독당 만들 수 있는 최대 UDR 테이블 수에 대해 알아보려면 Azure 제한을 참조 하세요.
기본적으로 경로 테이블에는 최대 400개의 UDR이 포함될 수 있습니다. Azure Virtual Network Manager 라우팅 구성을 사용하면 이 수를 경로 테이블당 1,000UDR로 확장할 수 있습니다. 이 증가된 제한은 고급 라우팅 설정을 지원합니다. 예를 들어 더 많은 수의 스포크 가상 네트워크가 있는 경우 온-프레미스 데이터 센터에서 방화벽을 통해 허브 및 스포크 토폴로지의 각 스포크 가상 네트워크로 트래픽을 전달합니다.
경로 테이블을 만들고 서브넷에 연결할 때, 테이블의 경로는 서브넷의 기본 경로와 연결됩니다. 충돌하는 경로 할당이 있는 경우 UDR은 기본 경로를 재정의합니다.
UDR을 만들 때 다음 홉 유형을 지정할 수 있습니다.
가상 어플라이언스: 가상 어플라이언스는 주로 방화벽 같은 네트워크 애플리케이션을 실행하는 가상 머신입니다. 가상 네트워크에 배포할 수 있는 미리 구성된 다양한 네트워크 가상 어플라이언스에 대해 알아보려면 Azure Marketplace를 참조 하세요. 가상 어플라이 언스 홉 유형을 사용하여 경로를 만들 때 다음 홉 IP 주소도 지정합니다. IP 주소는 다음과 같습니다.
가상 머신에 연결된 네트워크 인터페이스의 개인 IP 주소. 네트워크 트래픽을 자체 주소가 아닌 다른 주소로 전달하는 가상 머신에 연결된 모든 네트워크 인터페이스에는 Azure IP 전달 사용 옵션이 설정되어 있어야 합니다. 이 설정은 Azure에서 네트워크 인터페이스에 대한 원본 및 대상의 검사를 사용하지 않도록 설정합니다. 네트워크 인터페이스에 대한 IP 전달 사용을 설정하는 방법에 대해 자세히 알아보세요. IP 전달 사용 은 Azure 설정입니다.
어플라이언스가 Azure 네트워크 인터페이스에 할당된 개인 IP 주소 간에 트래픽을 전달하려면 가상 머신의 운영 체제 내에서 IP 전달을 사용하도록 설정해야 할 수 있습니다. 어플라이언스가 트래픽을 공용 IP 주소로 라우팅해야 하는 경우 트래픽을 프록시하거나 원본의 개인 IP 주소에서 자체 개인 IP 주소로 NAT(네트워크 주소 변환)를 수행해야 합니다. 그런 다음 Azure는 인터넷에 트래픽을 보내기 전에 공용 IP 주소로 NAT를 수행합니다. 가상 머신 내에서 필요한 설정을 확인하려면 운영 체제 또는 네트워크 애플리케이션의 설명서를 참조하세요. Azure에서 아웃바운드 연결을 이해하려면 아웃바운드 연결 이해를 참조하세요.
참고 항목
가상 어플라이언스를 통해 라우팅되는 리소스와 다른 서브넷에 가상 어플라이언스를 배포합니다. 동일한 서브넷에 가상 어플라이언스를 배포한 다음, 가상 어플라이언스를 통해 트래픽을 라우팅하는 서브넷에 경로 테이블을 적용하면 트래픽이 서브넷에서 나가지 않는 라우팅 루프가 발생할 수 있습니다.
다음 홉 개인 IP 주소는 Azure ExpressRoute 게이트웨이를 통해 또는 Azure Virtual WAN을 통해 라우팅할 필요 없이 직접 연결되어야 합니다. 직접 연결 없이 다음 홉을 IP 주소로 설정하면 잘못된 UDR 구성이 발생합니다.
Azure 내부 부하 분산 장치의 개인 IP 주소. 부하 분산 장치는 종종 네트워크 가상 어플라이언스에 대한 고가용성 전략의 일부로 사용됩니다.
주소 접두사로 0.0.0.0/0을 사용하고 가상 어플라이언스의 다음 홉 유형을 사용하여 경로를 정의할 수 있습니다. 이 구성을 사용하면 어플라이언스가 트래픽을 검사하고 트래픽을 전달할지, 아니면 삭제할지 결정할 수 있습니다. 0.0.0.0/0 주소 접두사를 포함하는 UDR을 만들려는 경우 먼저 0.0.0.0/0 주소 접두사를 읽습니다.
가상 네트워크 게이트웨이: 가상 네트워크 게이트웨이로 라우팅되는 특정 주소 접두사로 향하는 트래픽을 원하는 시점을 지정합니다. 가상 네트워크 게이트웨이는 VPN 형식으로 만들어야 합니다. ExpressRoute에서는 사용자 지정 경로에 BGP를 사용해야 하므로 UDR에서 ExpressRoute 형식으로 만든 가상 네트워크 게이트웨이를 지정할 수 없습니다. VPN(가상 사설망) 및 ExpressRoute 공존 연결이 있는 경우 가상 네트워크 게이트웨이를 지정할 수 없습니다. 0.0.0.0/0 주소 접두사로 전송되는 트래픽을 경로 기반 가상 네트워크 게이트웨이로 보내는 경로를 정의할 수 있습니다.
온-프레미스에서 트래픽을 검사하고 트래픽을 전달하거나 삭제할지 여부를 결정하는 디바이스가 있을 수 있습니다. 0.0.0.0/0 주소 접두사에 대한 UDR을 만들려면 먼저 0.0.0.0/0 주소 접두사를 읽습니다. VPN 가상 네트워크 게이트웨이에 대한 BGP를 사용하는 경우 0.0.0.0/0 주소 접두사에 대한 UDR을 구성하는 대신 BGP를 통해 0.0.0.0/0 접두사로 경로를 보급할 수 있습니다.
없음: 대상에 트래픽을 전달하는 대신 주소 접두사로 트래픽을 삭제하려는 경우를 지정합니다. 기능이 구성되지 않은 경우 Azure에서 일부 선택적 시스템 경로에 대해 없음을 표시할 수 있습니다. 예를 들어 다음 홉 IP 주소에 없음 및 다음 홉 유형이 가상 네트워크 게이트웨이 또는 가상 어플라이언스로 표시되는 경우 디바이스가 실행되고 있지 않거나 완전히 구성되지 않았기 때문일 수 있습니다. Azure는 다음 홉 유형으로 없음이 있는 예약된 주소 접두사에 대한 시스템 기본 경로를 만듭니다.
가상 네트워크: 가상 네트워크 내의 기본 라우팅을 재정의하려는 경우 가상 네트워크 옵션을 지정합니다. 가상 네트워크 홉 유형을 사용하여 경로를 만들 수 있는 이유의 예는 라우팅 예제를 참조하세요.
인터넷: 주소 접두사 로 향하는 트래픽을 인터넷에 명시적으로 라우팅하려는 경우 인터넷 옵션을 지정합니다. 또는 공용 IP 주소가 Azure 백본 네트워크 내에 유지되는 Azure 서비스로 향하는 트래픽을 원하는 경우 사용합니다.
가상 네트워크 피어링을 지정하거나 VirtualNetworkServiceEndpoint
UDR에서 다음 홉 유형으로 지정할 수 없습니다. Azure는 가상 네트워크 피어링 또는 VirtualNetworkServiceEndpoint
서비스 엔드포인트를 구성할 때만 가상 네트워크 피어링 또는 다음 홉 유형을 사용하여 경로를 만듭니다.
사용자 정의 경로의 서비스 태그
이제 명시적 IP 범위 대신 UDR의 주소 접두사로 서비스 태그를 지정할 수 있습니다. 서비스 태그는 특정 Azure 서비스의 IP 주소 접두사 그룹을 나타냅니다. Microsoft는 서비스 태그에 포함된 주소 접두사를 관리하고 주소가 변경되면 서비스 태그를 자동으로 업데이트합니다. 이 지원은 UDR에 대한 빈번한 업데이트의 복잡성을 최소화하고 만들어야 하는 경로 수를 줄입니다. 현재 각 경로 테이블에 서비스 태그를 사용하여 25개 이하의 경로를 만들 수 있습니다. 이 릴리스에서는 컨테이너에 대한 라우팅 시나리오에서 서비스 태그를 사용하는 것도 지원됩니다.
정확히 일치
명시적 IP 접두사를 사용하는 경로와 서비스 태그가 있는 경로 간에 정확한 접두사 일치가 있는 경우 시스템은 명시적 접두사를 사용하여 경로에 대한 기본 설정을 제공합니다. 서비스 태그가 있는 여러 경로에 IP 접두사 일치가 있는 경우 경로는 다음 순서로 평가됩니다.
지역 태그(예:
Storage.EastUS
또는AppService.AustraliaCentral
)최상위 태그(예:
Storage
또는AppService
)AzureCloud
지역 태그(예:AzureCloud.canadacentral
또는AzureCloud.eastasia
)AzureCloud
태그
이 기능을 사용하려면 경로 테이블 명령에서 주소 접두사 매개 변수의 서비스 태그 이름을 지정합니다. 예를 들어 PowerShell에서 다음 명령을 사용하여 Azure Storage IP 접두사로 전송된 트래픽을 가상 어플라이언스로 보내는 새 경로를 만들 수 있습니다.
$param = @{
Name = 'StorageRoute'
AddressPrefix = 'Storage'
NextHopType = 'VirtualAppliance'
NextHopIpAddress = '10.0.100.4'
}
New-AzRouteConfig @param
Azure CLI에 대한 동일한 명령은 다음과 같습니다.
az network route-table route create \
--resource-group MyResourceGroup \
--route-table-name MyRouteTable \
--name StorageRoute \
--address-prefix Storage \
--next-hop-type VirtualAppliance \
--next-hop-ip-address 10.0.100.4
Azure 도구 간의 다음 홉 유형
다음 홉 유형에 대해 표시되고 참조되는 이름은 Azure Portal과 명령줄 도구, Resource Manager 및 클래식 배포 모델 간에 다릅니다. 다음 표에서는 다양한 도구 및 배포 모델을 사용하여 다음 홉 유형을 참조하는 데 사용되는 이름을 나열합니다.
다음 홉 유형 | Azure CLI 및 PowerShell(Resource Manager) | Azure 클래식 CLI 및 PowerShell(클래식) |
---|---|---|
가상 네트워크 게이트웨이 | VirtualNetworkGateway |
VPNGateway |
가상 네트워크 | VNetLocal |
VNETLocal (클래식 배포 모델 모드에서는 클래식 CLI에서 사용할 수 없음) |
인터넷 | 인터넷 | 인터넷(클래식 배포 모델 모드에서는 클래식 CLI에서 사용할 수 없음) |
가상 어플라이언스 | VirtualAppliance |
VirtualAppliance |
None | None | Null(클래식 배포 모델 모드에서는 클래식 CLI에서 사용할 수 없음) |
가상 네트워크 피어링 | 가상 네트워크 피어링 | 해당 없음 |
가상 네트워크 서비스 엔드포인트 | VirtualNetworkServiceEndpoint |
해당 없음 |
Border Gateway Protocol
온-프레미스 네트워크 게이트웨이는 BGP를 사용하여 Azure 가상 네트워크 게이트웨이와 경로를 교환할 수 있습니다. Azure 가상 네트워크 게이트웨이에서 BGP를 사용하는 것은 게이트웨이를 만들 때 선택한 유형에 따라 다릅니다.
- ExpressRoute: Microsoft Edge 라우터에 온-프레미스 경로를 보급하려면 BGP를 사용해야 합니다. ExpressRoute 유형으로 배포된 가상 네트워크 게이트웨이를 배포하는 경우 ExpressRoute 가상 네트워크 게이트웨이에 트래픽을 강제 적용하는 UDR을 만들 수 없습니다. UDR을 사용하여 빠른 경로에서 네트워크 가상 어플라이언스로 트래픽을 강제 적용할 수 있습니다.
- VPN: 필요에 따라 BGP를 사용할 수 있습니다. 자세한 내용은 사이트 및 사이트 간의 VPN 연결이 있는 BGP를 참조 하세요.
BGP를 사용하여 Azure와 경로를 교환하는 경우 보급된 각 접두사에 대해 가상 네트워크에 있는 모든 서브넷의 경로 테이블에 별도의 경로가 추가됩니다. 원본 및 다음 홉 유형으로 나열되는 가상 네트워크 게이트웨이가 포함된 경로가 추가됩니다.
경로 테이블의 속성을 사용하여 서브넷에서 ExpressRoute 및 Azure VPN Gateway 경로 전파를 사용하지 않도록 설정할 수 있습니다. 경로 전파의 사용을 비활성화할 경우에는 가상 네트워크 게이트웨이 경로 전파가 사용하지 않도록 설정된 모든 서브넷의 경로 테이블에 경로가 추가되지 않습니다. 해당 프로세스는 정적 경로와 BGP 경로 모두에 적용됩니다. VPN 연결 연결은 가상 네트워크 게이트웨이의 다음 홉 유형으로 사용자 지정 경로를 사용하여 수행됩니다. 자세한 내용은 가상 네트워크 게이트웨이 경로 전파 사용 안 함을 참조 하세요.
참고 항목
에서 경로 전파를 사용하지 않도록 설정 GatewaySubnet
하면 안 됩니다. 이 설정을 사용하지 않도록 설정하면 게이트웨이가 작동하지 않습니다.
Azure에서 경로를 선택하는 방법
서브넷에서 아웃바운드 트래픽을 보내는 경우 Azure는 가장 긴 접두사 일치 알고리즘을 사용하여 대상 IP 주소를 기반으로 경로를 선택합니다. 예를 들어 경로 테이블에는 두 개의 경로가 있습니다. 한 경로는 10.0.0.0/24 주소 접두사를 지정하고 다른 경로는 10.0.0.0/16 주소 접두사를 지정합니다.
Azure는 10.0.0.5로 향하는 트래픽을 10.0.0.0/24 주소 접두사가 포함된 경로에 지정된 다음 홉 유형으로 전달합니다. 이 프로세스는 10.0.0.5가 두 주소 접두사 모두에 속하더라도 10.0.0.0/24가 10.0.0.0/16보다 긴 접두사이기 때문에 발생합니다.
Azure는 10.0.1.5로 향하는 트래픽을 10.0.0.0/16 주소 접두사를 사용하여 경로에 지정된 다음 홉 유형으로 전달합니다. 이 프로세스는 10.0.1.5가 10.0.0.0/24 주소 접두사에 포함되지 않으므로 10.0.0.0/16 주소 접두사를 가진 경로가 가장 긴 일치 접두사로 만들어지므로 발생합니다.
여러 경로에 동일한 주소 접두사를 포함하는 경우 Azure는 다음 우선 순위에 따라 경로 유형을 선택합니다.
사용자 정의 경로
BGP 경로
시스템 경로
참고 항목
가상 네트워크, 가상 네트워크 피어링 또는 가상 네트워크 서비스 엔드포인트와 관련된 트래픽에 대한 시스템 경로는 기본 경로입니다. BGP 경로가 더 구체적이더라도 선호됩니다. 경로 테이블을 사용하는 경우에도 가상 네트워크 서비스 엔드포인트를 다음 홉 유형으로 사용하는 경로는 재정의할 수 없습니다.
예를 들어 경로 테이블에는 다음 경로가 포함되어 있습니다.
원본 | 주소 접두사 | 다음 홉 유형 |
---|---|---|
기본값 | 0.0.0.0/0 | 인터넷 |
사용자 | 0.0.0.0/0 | 가상 네트워크 게이트웨이 |
트래픽이 경로 테이블에 있는 다른 경로의 주소 접두사 외부에 있는 IP 주소로 향하는 경우 Azure는 사용자 원본을 사용하여 경로를 선택합니다. UDR이 시스템 기본 경로보다 우선 순위가 높기 때문에 Azure에서 이 옵션을 선택합니다.
테이블의 경로에 대한 설명이 포함된 포괄적인 라우팅 테이블은 라우팅 예제를 참조하세요.
0.0.0.0/0 주소 접두사
0.0.0.0/0 주소 접두사를 사용하는 경로는 Azure에 명령을 제공합니다. Azure는 이러한 명령을 사용하여 서브넷 경로 테이블에 있는 다른 경로의 주소 접두사에 속하지 않는 IP 주소로 향하는 트래픽을 라우팅합니다. 서브넷을 만들 때 Azure는 인터넷 다음 홉 유형과 함께 0.0.0.0/0 주소 접두사에 대한 기본 경로를 만듭니다. 이 경로를 재정의하지 않으면 Azure는 다른 경로의 주소 접두사에 포함되지 않은 IP 주소로 향하는 모든 트래픽을 인터넷으로 라우팅합니다.
예외는 Azure 서비스의 공용 IP 주소에 대한 트래픽이 Azure 백본 네트워크에 남아 있고 인터넷으로 라우팅되지 않는다는 것입니다. 이 경로를 사용자 지정 경로로 재정의하면 경로 테이블에 있는 다른 경로의 주소 접두사 내에 없는 주소로 향하는 트래픽이 전달됩니다. 대상은 사용자 지정 경로에 네트워크 가상 어플라이언스를 지정하는지, 아니면 가상 네트워크 게이트웨이를 지정하는지에 따라 달라집니다.
0.0.0.0/0 주소 접두사를 재정의하는 경우 서브넷의 아웃바운드 트래픽은 가상 네트워크 게이트웨이 또는 가상 어플라이언스를 통해 흐릅니다. Azure 기본 라우팅에서도 다음과 같은 변경 내용이 발생합니다.
Azure는 Azure 서비스의 공용 IP 주소로 향하는 트래픽을 포함하여 모든 트래픽을 경로에 지정된 다음 홉 유형으로 보냅니다.
0.0.0.0/0 주소 접두사를 사용하는 경로의 다음 홉 유형이 인터넷인 경우 가상 네트워크 또는 Azure 서비스 리소스가 있는 Azure 지역에 관계없이 Azure 서비스의 공용 IP 주소로 향하는 서브넷의 트래픽은 Azure 백본 네트워크를 벗어나지 않습니다.
가상 네트워크 게이트웨이 또는 가상 어플라이언스 다음 홉 유형을 사용하여 UDR 또는 BGP 경로를 만들면 모든 트래픽이 경로에 지정된 다음 홉 유형으로 전송됩니다. 여기에는 서비스 엔드포인트를 사용하도록 설정하지 않은 Azure 서비스의 공용 IP 주소로 전송되는 트래픽이 포함됩니다.
서비스에 서비스 엔드포인트를 사용하도록 설정하면 Azure가 서비스에 대한 주소 접두사가 포함된 경로를 만듭니다. 서비스에 대한 트래픽은 0.0.0.0/0 주소 접두사가 포함된 경로의 다음 홉 유형으로 라우팅되지 않습니다. 서비스의 주소 접두사는 0.0.0.0/0보다 깁니다.
더 이상 인터넷에서 서브넷의 리소스에 직접 액세스할 수 없습니다. 인터넷에서 간접적으로 서브넷의 리소스에 액세스할 수 있습니다. 0.0.0.0/0 주소 접두사가 포함된 경로에 다음 홉 유형으로 지정된 디바이스는 인바운드 트래픽을 처리해야 합니다. 트래픽은 디바이스를 통과한 후 가상 네트워크의 리소스에 도달합니다. 경로에 다음 홉 유형에 대한 다음 값이 포함된 경우:
가상 어플라이언스: 어플라이언스에서 다음을 수행해야 합니다.
- 인터넷에서 액세스할 수 있습니다.
- 공용 IP 주소를 할당합니다.
- 디바이스에 대한 통신을 방해하는 네트워크 보안 그룹 규칙이 연결되어 있지 않습니다.
- 통신을 거부하지 않습니다.
- 네트워크 주소 변환 및 전달 또는 트래픽을 서브넷의 대상 리소스로 프록시하고 트래픽을 다시 인터넷으로 반환할 수 있어야 합니다.
가상 네트워크 게이트웨이: 게이트웨이가 ExpressRoute 가상 네트워크 게이트웨이인 경우 온-프레미스 인터넷에 연결된 디바이스는 ExpressRoute 프라이빗 피어링을 통해 네트워크 주소 변환 및 전달 또는 서브넷의 대상 리소스에 트래픽을 프록시할 수 있습니다.
가상 네트워크가 Azure VPN 게이트웨이에 연결된 경우 대상이 0.0.0.0/0인 경로가 포함된 게이트웨이 서브넷에 경로 테이블을 연결하지 않습니다. 그러면 게이트웨이가 제대로 작동하지 못할 수 있습니다. 자세한 내용은 VPN 게이트웨이에서 특정 포트가 열리는 이유를 참조하세요.
인터넷과 Azure 간에 가상 네트워크 게이트웨이를 사용하는 경우 구현 세부 정보는 Azure와 온-프레미스 데이터 센터 간의 DMZ를 참조 하세요.
라우팅 예
이 문서의 개념을 설명하기 위해 다음 섹션에서 설명합니다.
- 요구 사항이 있는 시나리오입니다.
- 요구 사항을 충족하는 데 필요한 사용자 지정 경로입니다.
- 요구 사항을 충족하는 데 필요한 기본 및 사용자 지정 경로를 포함하는 하나의 서브넷에 대해 존재하는 경로 테이블입니다.
참고 항목
이 예제는 권장되거나 모범 사례 구현이 아닙니다. 이 문서의 개념을 설명하기 위해서만 제공됩니다.
요구 사항
동일한 Azure 지역에 두 개의 가상 네트워크를 구현하고 리소스에서 가상 네트워크 간에 통신할 수 있도록 합니다.
온-프레미스 네트워크가 인터넷을 통해 VPN 터널을 통해 두 가상 네트워크와 안전하게 통신할 수 있도록 합니다. 또는 ExpressRoute 연결을 사용할 수 있지만 이 예제에서는 VPN 연결을 사용합니다.
하나의 가상 네트워크에 하나의 서브넷이 있는 경우:
- 검사 및 로깅을 위해 서브넷의 모든 아웃바운드 트래픽을 네트워크 가상 어플라이언스로 라우팅합니다. 이 라우팅에서 Azure Storage 및 서브넷 내의 트래픽을 제외합니다.
- 서브넷 내의 개인 IP 주소 간의 트래픽을 검사하지 마세요. 트래픽이 모든 리소스 간에 직접 흐르도록 허용합니다.
- 다른 가상 네트워크로 향하는 모든 아웃바운드 트래픽을 삭제합니다.
- 네트워크 가상 어플라이언스로 강제 전달하지 않고 Azure Storage에 대한 아웃바운드 트래픽이 스토리지로 직접 전달되도록 설정합니다.
다른 모든 서브넷과 가상 네트워크 간의 모든 트래픽을 허용합니다.
구현
다음 다이어그램은 이전 요구 사항을 충족하는 Resource Manager 배포 모델을 통한 구현을 보여 줍니다.
화살표는 트래픽의 흐름을 나타냅니다.
경로 테이블
다음은 이전 라우팅 예제의 경로 테이블입니다.
Subnet1
이전 다이어그램의 Subnet1 경로 테이블에는 다음 경로가 포함되어 있습니다.
ID | 원본 | 상태 | 주소 접두사 | 다음 홉 유형 | 다음 홉 IP 주소 | UDR 이름 |
---|---|---|---|---|---|---|
1 | 기본값 | 잘못됨 | 10.0.0.0/16 | 가상 네트워크 | ||
2 | 사용자 | 활성화 | 10.0.0.0/16 | 가상 어플라이언스 | 10.0.100.4 | Within-VNet1 |
3 | 사용자 | 활성화 | 10.0.0.0/24 | 가상 네트워크 | Within-Subnet1 | |
4 | 기본값 | 잘못됨 | 10.1.0.0/16 | 가상 네트워크 피어링 | ||
5 | 기본값 | 잘못됨 | 10.2.0.0/16 | 가상 네트워크 피어링 | ||
6 | 사용자 | 활성화 | 10.1.0.0/16 | 없음 | ToVNet2-1-Drop | |
7 | 사용자 | 활성화 | 10.2.0.0/16 | 없음 | ToVNet2-2-Drop | |
8 | 기본값 | 잘못됨 | 10.10.0.0/16 | 가상 네트워크 게이트웨이 | [X.X.X.X] | |
9 | 사용자 | 활성화 | 10.10.0.0/16 | 가상 어플라이언스 | 10.0.100.4 | To-On-Prem |
10 | 기본값 | 활성화 | [X.X.X.X] | VirtualNetworkServiceEndpoint |
||
11 | 기본값 | 잘못됨 | 0.0.0.0/0 | 인터넷 | ||
12 | 사용자 | 활성화 | 0.0.0.0/0 | 가상 어플라이언스 | 10.0.100.4 | Default-NVA |
각 경로 ID에 대한 설명은 다음과 같습니다.
ID1: 10.0.0.0/16이 가상 네트워크의 주소 공간에 정의된 유일한 주소 범위이므로 Azure는 Virtual-network-1 내의 모든 서브넷에 대해 이 경로를 자동으로 추가했습니다. 경로 ID2에서 UDR을 만들지 않으면 10.0.0.1에서 10.0.255.254 사이의 주소로 전송된 트래픽이 가상 네트워크 내에서 라우팅됩니다. 이 프로세스는 접두사는 0.0.0.0/0보다 길고 다른 경로의 주소 접두사에 속하지 않기 때문에 발생합니다.
Azure는 UDR인 ID2가 추가될 때 상태를 활성에서 Invalid로 자동으로 변경했습니다. 기본 경로와 동일한 접두사를 가지고 있으며 UDR은 기본 경로를 재정의합니다. UDR ID2가 있는 경로 테이블이 Subnet2에 연결되어 있지 않으므로 이 경로의 상태는 여전히 Subnet2에 대해 활성 상태입니다.
ID2: Azure는 10.0.0.0/16 주소 접두사에 대한 UDR이 Virtual-network-1 가상 네트워크의 Subnet1 서브넷에 연결되었을 때 이 경로를 추가했습니다. UDR은 가상 어플라이언스 가상 머신에 할당된 개인 IP 주소이므로 10.0.100.4를 가상 어플라이언스의 IP 주소로 지정합니다. 이 경로가 있는 경로 테이블은 Subnet2에 연결되지 않으므로 경로가 Subnet2의 경로 테이블에 나타나지 않습니다.
이 경로는 가상 네트워크 다음 홉 유형을 통해 가상 네트워크 내에서 10.0.0.1 및 10.0.255.254 주소로 지정된 트래픽을 자동으로 라우팅하는 10.0.0.0/16 접두사(ID1)에 대한 기본 경로를 재정의합니다. 이 경로는 가상 어플라이언스를 통해 모든 아웃바운드 트래픽을 강제로 적용하는 요구 사항 3을 충족하기 위해 존재합니다.
ID3: Azure는 10.0.0.0/24 주소 접두사에 대한 UDR이 Subnet1 서브넷에 연결되었을 때 이 경로를 추가했습니다. 10.0.0.1에서 10.0.0.254 사이의 주소로 향하는 트래픽은 서브넷 내에 남아 있습니다. ID2 경로보다 더 긴 접두사를 가지고 있으므로 트래픽은 이전 규칙(ID2)에 지정된 가상 어플라이언스로 라우팅되지 않습니다.
이 경로는 Subnet2와 연결되어 있지 않으므로 Subnet2의 경로 테이블에 표시되지 않습니다. 이 경로는 Subnet1 내의 트래픽에 대한 ID2 경로를 효과적으로 재정의합니다. 이 경로는 요구 사항 3을 충족하기 위해 존재합니다.
ID4: 가상 네트워크가 Virtual-network-2와 피어될 때 Azure는 Virtual-network-1 내의 모든 서브넷에 대해 ID 4 및 5에 경로를 자동으로 추가했습니다. Virtual-network-2에는 주소 공간에 10.1.0.0/16 및 10.2.0.0/16이라는 두 개의 주소 범위가 있으므로 Azure는 각 범위에 대한 경로를 추가했습니다. 경로 ID 6과 7에서 UDR을 만들지 않으면 10.1.0.1-10.1.255.254와 10.2.0.1-10.2.255.254 사이의 주소로 전송된 트래픽이 피어된 가상 네트워크로 라우팅됩니다. 이 프로세스는 접두사는 0.0.0.0/0보다 길고 다른 경로의 주소 접두사에 속하지 않기 때문에 발생합니다.
ID 6 및 7에서 경로를 추가하면 Azure가 상태를 활성에서 올바르지 않음으로 자동으로 변경합니다. 이 프로세스는 ID 4 및 5의 경로와 동일한 접두사를 가지며 UDR이 기본 경로를 재정의하기 때문에 발생합니다. ID 6 및 7의 UDR이 Subnet2에 연결되어 있지 않기 때문에 ID 4 및 5의 경로 상태는 여전히 Subnet2에 대해 활성 상태입니다. 가상 네트워크 피어링은 요구 사항 1을 충족하기 위해 만들어졌습니다.
ID5: ID4와 동일하게 설명됩니다.
ID6: Azure는 10.1.0.0/16 및 10.2.0.0/16 주소 접두사에 대한 UDR이 Subnet1 서브넷에 연결되었을 때 이 경로와 경로를 ID7에 추가했습니다. Azure는 UDR이 기본 경로를 재정의하기 때문에 피어된 가상 네트워크로 라우팅되는 대신 10.1.0.1-10.1.255.254 및 10.2.0.1-10.2.255.254 사이의 주소로 향하는 트래픽을 삭제합니다. 이 경로는 Subnet2와 연결되어 있지 않으므로 Subnet2의 경로 테이블에 표시되지 않습니다. 이 경로에서 Subnet1에서 나가는 트래픽에 대한 ID4 및 ID5 경로를 재정의합니다. ID6 및 ID7 경로는 요구 사항 3을 충족하여 다른 가상 네트워크로 향하는 트래픽이 삭제됩니다.
ID7: ID6과 동일하게 설명됩니다.
ID8: VPN 유형 가상 네트워크 게이트웨이가 가상 네트워크 내에 만들어졌을 때 Azure에서 Virtual-network-1 내의 모든 서브넷에 대해 이 경로를 자동으로 추가했습니다. Azure에서 가상 네트워크 게이트웨이의 공용 IP 주소를 경로 테이블에 추가했습니다. 10.10.0.1과 10.10.255.254 사이의 모든 주소로 보내는 트래픽은 가상 네트워크 게이트웨이로 라우팅됩니다. 접두사는 0.0.0.0/0보다 길고 다른 경로의 주소 접두사에 있지 않습니다. 가상 네트워크 게이트웨이는 요구 사항 2를 충족하기 위해 만들어졌습니다.
ID9: Azure는 10.10.0.0/16 주소 접두사에 대한 UDR이 Subnet1에 연결된 경로 테이블에 추가될 때 이 경로를 추가했습니다. 이 경로에서 ID8을 재정의합니다. 이 경로는 온-프레미스 네트워크로 향하는 모든 트래픽을 온-프레미스에서 직접 라우팅하는 대신 검사를 위해 네트워크 가상 어플라이언스로 보냅니다. 이 경로는 요구 사항 3을 충족하기 위해 만들어졌습니다.
ID10: Azure 서비스에 대한 서비스 엔드포인트가 서브넷에서 사용하도록 설정되었을 때 Azure에서 이 경로를 해당 서브넷에 자동으로 추가했습니다. Azure에서 Azure 인프라 네트워크를 통해 서브넷의 트래픽을 해당 서비스의 공용 IP 주소로 라우팅합니다. 접두사는 0.0.0.0/0보다 길고 다른 경로의 주소 접두사에 있지 않습니다. Azure Storage로 향하는 트래픽이 Azure Storage로 직접 흐를 수 있도록 요구 사항 3을 충족하기 위해 서비스 엔드포인트가 만들어졌습니다.
ID11: 이 경로는 Azure에서 Virtual-network-1 및 Virtual-network-2에 있는 모든 서브넷의 경로 테이블에 자동으로 추가했습니다. 0.0.0.0/0 주소 접두사는 가장 짧은 접두사입니다. 더 긴 주소 접두사 내의 주소로 보내는 모든 트래픽은 다른 경로에 따라 라우팅됩니다.
기본적으로 Azure는 다른 경로 중 하나에 지정된 주소 이외의 주소로 향하는 모든 트래픽을 인터넷으로 라우팅합니다. Azure는 0.0.0.0/0 주소 접두사(ID12)에 대한 UDR이 서브넷에 연결되었을 때 서브넷1 서브넷에 대해 활성에서 Invalid로 상태를 자동으로 변경했습니다. 경로가 다른 가상 네트워크 내의 다른 서브넷에 연결되지 않으므로 이 경로의 상태는 두 가상 네트워크 내의 다른 모든 서브넷에 대해 여전히 활성 상태입니다.
ID12: Azure는 0.0.0.0/0 주소 접두사에 대한 UDR이 Subnet1 서브넷에 연결되었을 때 이 경로를 추가했습니다. UDR은 가상 어플라이언스의 IP 주소로 10.0.100.4를 지정합니다. 이 경로는 Subnet2와 연결되어 있지 않으므로 Subnet2의 경로 테이블에 표시되지 않습니다. 다른 경로의 주소 접두사에 포함되지 않은 주소에 대한 모든 트래픽은 가상 어플라이언스로 보내집니다.
이 경로를 추가하면 UDR이 기본 경로를 재정의하므로 0.0.0.0/0 주소 접두사(ID11)의 기본 경로 상태가 활성 에서 Invalid for Subnet1로 변경되었습니다. 이 경로는 요구 사항 3을 충족하기 위해 존재합니다.
Subnet2
이전 다이어그램의 Subnet2 경로 테이블에는 다음 경로가 포함되어 있습니다.
Source | 상태 | 주소 접두사 | 다음 홉 유형 | 다음 홉 IP 주소 |
---|---|---|---|---|
기본값 | 활성화 | 10.0.0.0/16 | 가상 네트워크 | |
기본값 | 활성화 | 10.1.0.0/16 | 가상 네트워크 피어링 | |
기본값 | 활성화 | 10.2.0.0/16 | 가상 네트워크 피어링 | |
기본값 | 활성화 | 10.10.0.0/16 | 가상 네트워크 게이트웨이 | [X.X.X.X] |
기본값 | 활성화 | 0.0.0.0/0 | 인터넷 | |
기본값 | Active | 10.0.0.0/8 | 없음 | |
기본값 | 활성화 | 100.64.0.0/10 | 없음 | |
기본값 | Active | 192.168.0.0/16 | 없음 |
Subnet2의 경로 테이블에는 Azure에서 만든 모든 기본 경로 및 선택적인 가상 네트워크 피어링 및 가상 네트워크 게이트웨이 경로가 포함되어 있습니다. 게이트웨이 및 피어링이 가상 네트워크에 추가되었을 때 Azure에서 선택적 경로를 가상 네트워크의 모든 서브넷에 추가했습니다.
Azure는 0.0.0.0/0 주소 접두사에 대한 UDR이 Subnet11에 추가되었을 때 Subnet1 경로 테이블에서 10.0.0.0/8, 192.168.0.0/16 및 100.64.0.0/10 주소 접두사에 대한 경로를 제거했습니다.
관련 콘텐츠
- 경로 및 네트워크 가상 어플라이언스로 UDR 테이블을 만듭니다.
- Azure VPN Gateway에 대한 BGP를 구성합니다.
- ExpressRoute와 함께 BGP를 사용합니다.
- 서브넷에 대한 모든 경로 보기 - UDR 테이블에는 기본값이 아닌 UDR만 표시되고 서브넷에 대한 BGP 경로가 표시됩니다. 모든 경로를 보면 네트워크 인터페이스가 있는 서브넷의 기본값인 BGP 및 UDR이 표시됩니다.
- 가상 머신과 대상 IP 주소 간의 다음 홉 유형을 확인합니다. Azure Network Watcher 다음 홉 기능을 사용하여 트래픽이 서브넷을 벗어나고 있다고 생각되는 위치로 라우팅되는지 여부를 확인할 수 있습니다.