Share via


Azure Firewall 사용하여 다중 허브 및 스포크 토폴로지 라우팅

허브 및 스포크 토폴로지는 Azure의 일반적인 네트워크 아키텍처 패턴입니다. 허브는 Azure의 VNet(가상 네트워크)로서 사용자의 온-프레미스 네트워크에 대한 연결의 중심으로 기능합니다. 스포크는 허브와 피어링하는 Vnet이며 워크로드를 격리하는 데 사용할 수 있습니다. 허브를 사용하여 스포크 간의 트래픽을 격리하고 보호할 수 있습니다. 허브를 사용하여 스포크 간에 트래픽을 라우팅할 수도 있습니다. 허브를 사용하여 다양한 방법으로 스포크 간에 트래픽을 라우팅할 수 있습니다.

예를 들어 동적 라우팅 및 NVA(네트워크 가상 어플라이언스)와 함께 Azure Route Server를 사용하여 스포크 간에 트래픽을 라우팅할 수 있습니다. 이는 상당히 복잡한 배포일 수 있습니다. 덜 복잡한 메서드는 Azure Firewall 및 정적 경로를 사용하여 스포크 간에 트래픽을 라우팅합니다.

이 문서에서는 UDR(정적 사용자 정의 경로)과 함께 Azure Firewall 사용하여 다중 허브 및 스포크 토폴로지를 라우팅하는 방법을 보여줍니다. 다음 다이어그램은 토폴로지를 표시합니다.

Conceptual diagram showing hub and spoke architecture.

기준 아키텍처

Azure Firewall은 네트워크 트래픽을 보호하고 검사하지만 VNet 간 트래픽도 라우팅합니다. 로컬 Virtual Network Gateway에서 학습한 로컬 스포크, 허브 및 온-프레미스 접두사에 대한 시스템 경로를 자동으로 만드는 관리되는 리소스입니다. 허브에 NVA를 배치하고 유효 경로를 쿼리하면 Azure Firewall 내의 경로 테이블과 유사한 경로 테이블이 생성됩니다.

정적 라우팅 아키텍처이므로 허브 간에 글로벌 VNet 피어링을 사용하여 다른 허브에 대한 가장 짧은 경로를 수행할 수 있습니다. 따라서 허브는 서로에 대해 알고 있으며 각 로컬 방화벽에는 직접 연결된 각 허브의 경로 테이블이 포함됩니다. 그러나 로컬 허브는 로컬 스포크에 대해서만 알고 있습니다. 또한 이러한 허브는 동일한 지역 또는 다른 지역에 있을 수 있습니다.

방화벽 서브넷에서 라우팅

각 로컬 방화벽은 다른 원격 스포크에 도달하는 방법을 알고 있어야 하므로 방화벽 서브넷에 UDR을 만들어야 합니다. 이렇게 하려면 먼저 모든 형식의 기본 경로를 만들어야 합니다. 그러면 다른 스포크에 대한 보다 구체적인 경로를 만들 수 있습니다. 예를 들어 다음 스크린샷은 두 허브 VNet의 경로 테이블을 보여줍니다.

Hub-01 경로 테이블Screenshot showing the route table for Hub-01.

Hub-02 경로 테이블Screenshot showing the route table for Hub-02.

스포크 서브넷의 라우팅

이 토폴로지를 구현할 때의 이점은 트래픽이 한 허브에서 다른 허브로 이동하면 글로벌 피어링을 통해 직접 연결된 다음 홉에 도달할 수 있다는 것입니다.

다이어그램에 설명된 것처럼 로컬 방화벽을 다음 홉으로 사용하여 0/0 경로(기본 게이트웨이)가 있는 스포크 서브넷에 UDR을 배치하는 것이 좋습니다. 이렇게 하면 다음 번의 단일 홉 종료 지점이 로컬 방화벽으로 고정됩니다. 또한 트래픽이 방화벽을 우회할 수 있는 온-프레미스 환경에서 더 구체적인 접두사를 학습하는 경우 비대칭 라우팅의 위험이 줄어듭니다. 자세한 내용은 Azure 경로에 당하지 마세요를 참조하세요.

다음은 Hub-01에 연결된 스포크 서브넷의 예제 경로 테이블입니다.

Screenshot showing the route table for the spoke subnets.

다음 단계