허브-스포크 네트워크는 고가용성 다중 위치 네트워크 인프라의 구성 요소 중 하나입니다. 일반적으로 허브-스포크 네트워크 배포는 중앙 허브를 통해 모든 스포크 간 트래픽과 아웃바운드 인터넷 트래픽을 라우팅하기 위해 이루어집니다. 보안 검사 및 패킷 검사를 위해 NVA(네트워크 가상 어플라이언스)를 사용하여 네트워크를 통과하는 모든 트래픽을 검사하는 것이 목적입니다.
인터넷으로 나가는 아웃바운드 트래픽의 경우 네트워크 가상 어플라이언스에는 일반적으로 공용 IP 주소가 할당된 네트워크 인터페이스가 하나 있습니다. 아웃바운드 트래픽을 검사한 후 NVA는 퍼블릭 인터페이스와 인터넷으로 트래픽을 전달합니다. Azure NAT Gateway를 사용하면 NVA에 할당된 공용 IP 주소가 필요 없습니다. NAT 게이트웨이를 NVA의 퍼블릭 서브넷과 연결하면 퍼블릭 인터페이스의 라우팅이 NAT 게이트웨이를 통해 모든 아웃바운드 인터넷 트래픽을 라우팅하도록 변경됩니다. 공용 IP 주소를 제거하면 보안이 강화되고 여러 공용 IP 주소 및/또는 공용 IP 접두사를 사용하여 아웃바운드 SNAT(Source Network Address Translation)를 스케일링할 수 있습니다.
중요
이 문서의 NVA는 데모용으로만 사용되며 Ubuntu 가상 머신으로 시뮬레이션됩니다. 솔루션에는 고가용성 NVA 배포를 위한 부하 분산 장치가 포함되어 있지 않습니다. 이 문서의 Ubuntu 가상 머신을 원하는 NVA로 바꾸세요. 라우팅 및 구성 지침은 선택한 NVA 공급업체에 문의하세요. 고가용성 NVA 인프라에는 부하 분산 장치 및 가용성 영역이 권장됩니다.
이 자습서에서는 다음 작업 방법을 알아봅니다.
- NAT 게이트웨이 만들기
- 허브-스포크 가상 네트워크 만들기
- 시뮬레이션된 NVA(네트워크 가상 어플라이언스) 만들기
- 허브를 통해 스포크의 모든 트래픽 적용
- 허브의 모든 인터넷 트래픽을 적용하고 NAT 게이트웨이를 스포크 아웃
- NAT 게이트웨이 및 스포크 간 라우팅 테스트
필수 구성 요소
- 활성 구독이 있는 Azure 계정입니다. 무료로 계정을 만듭니다.
리소스 그룹 만들기
이 빠른 시작의 모든 리소스를 포함할 리소스 그룹을 만듭니다.
Azure Portal에 로그인합니다.
포털 맨 위에 있는 검색 상자에 리소스 그룹을 입력합니다. 검색 결과에서 리소스 그룹을 선택합니다.
+ 만들기를 선택합니다.
리소스 그룹 만들기의 기본 사항 탭에서 다음 정보를 입력하거나 선택합니다.
설정 값 구독 구독 선택 리소스 그룹 test-rg 지역 미국 서부 검토 + 만들기를 선택합니다.
만들기를 선택합니다.
NAT Gateway 만들기
모든 아웃바운드 인터넷 트래픽은 NAT Gateway를 인터넷으로 트래버스합니다. 다음 예제를 사용하여 허브-스포크 네트워크를 위한 NAT Gateway를 만듭니다.
Azure Portal에 로그인합니다.
Azure Portal 상단의 검색 상자에 공용 IP 주소를 입력합니다. 검색 결과에서 공용 IP 주소를 선택합니다.
만들기를 선택합니다.
공용 IP 주소 만들기에 다음 정보를 입력합니다.
설정 값 구독 구독을 선택합니다. 리소스 그룹 리소스 그룹을 선택합니다. 이 예제에서는 test-rg를 사용합니다. 지역 지역을 선택합니다. 이 예제에서는 미국 서부를 사용합니다. 이름 public-ip-nat를 입력합니다. IP 버전 IPv4를 선택합니다. SKU 표준을 선택합니다. 가용성 영역 영역 중복을 선택합니다. 계층 지역을 선택합니다. 검토 + 만들기를 선택한 다음, 만들기를 선택합니다.
Azure Portal 상단의 검색 상자에 NAT Gateway를 입력합니다. 검색 결과에서 NAT 게이트웨이를 선택합니다.
만들기를 선택합니다.
NAT(Network Address Translation) 게이트웨이 만들기의 기본 사항 탭에서 다음 정보를 입력하거나 선택합니다.
설정 값 프로젝트 세부 정보 구독 구독을 선택합니다. 리소스 그룹 test-rg 또는 리소스 그룹을 선택합니다. 인스턴스 세부 정보 NAT Gateway 이름 nat-gateway를 입력합니다. 지역 지역을 선택합니다. 이 예제에서는 미국 서부를 사용합니다. SKU 표준을 선택합니다. TCP 유휴 시간 제한(분) 4(기본값)를 그대로 둡니다. 다음을 선택합니다.
아웃바운드 IP 탭에서 + 공용 IP 주소 또는 접두사 추가를 선택합니다.
공용 IP 주소 또는 접두사 추가에서 공용 IP 주소를 선택합니다. 이전에 만든 공용 IP 주소인 public-ip-nat를 선택합니다.
다음을 선택합니다.
네트워킹 탭의 가상 네트워크에서vnet-1을 선택합니다.
모든 서브넷으로 기본 설정 확인란을 선택 취소된 상태로 둡니다.
특정 서브넷 선택에서 서브넷-1을 선택합니다.
검토 + 생성를 선택한 다음, 생성를 선택합니다.
허브 가상 네트워크 만들기
허브 가상 네트워크는 솔루션의 중앙 네트워크입니다. 허브 네트워크에는 NVA 어플라이언스와 퍼블릭 및 프라이빗 서브넷이 포함되어 있습니다. NAT 게이트웨이는 가상 네트워크를 만드는 동안 공용 서브넷에 할당됩니다. Azure Bastion 호스트는 다음 예제를 진행하는 동안 구성됩니다. 베스천 호스트는 문서 뒷부분에서 스포크에 배포하는 NVA 가상 머신 및 테스트 가상 머신에 안전하게 연결하는 데 사용됩니다.
Azure Portal에 로그인합니다.
Azure Portal 상단의 검색 창에 가상 네트워크를 입력합니다. 검색 결과에서 가상 네트워크를 선택합니다.
만들기를 선택합니다.
가상 네트워크 만들기의 기본 탭에서 다음 정보를 입력하거나 선택합니다.
설정 값 프로젝트 세부 정보 구독 구독을 선택합니다. 리소스 그룹 test-rg 또는 리소스 그룹을 선택합니다. 인스턴스 세부 정보 이름 vnet-1을 입력합니다. 지역 지역을 선택합니다. 이 예제에서는 미국 서부를 사용합니다. IP 주소 탭을 선택하거나 다음: 보안, 다음: IP 주소를 선택합니다.
서브넷에서 기본 서브넷을 선택합니다.
서브넷 편집의 다음 정보를 입력하거나 선택합니다.
설정 값 서브넷 목적 기본값을 그대로 둡니다. 이름 subnet-1을 입력합니다. 나머지 설정은 기본값으로 두고 저장을 선택합니다.
서브넷 추가를 선택합니다.
서브넷 추가에서 다음 정보를 입력하거나 선택합니다.
설정 값 서브넷 목적 Azure Bastion을 선택합니다. 나머지 설정은 기본값으로 두고 추가를 선택합니다.
검토 + 생성를 선택한 다음, 생성를 선택합니다.
Azure Bastion 호스트 만들기
Azure Bastion은 VM에서 공용 IP 주소를 요구하지 않고 TLS를 통해 가상 머신에 대한 보안 RDP 및 SSH 연결을 제공합니다.
Azure Portal 위쪽의 검색 상자에 Bastion을 입력합니다. 검색 결과에서 Bastions 를 선택합니다.
만들기를 선택합니다.
Bastion 만들기의 기본 사항 탭에서 다음 정보를 입력하거나 선택합니다.
설정 값 프로젝트 세부 정보 구독 구독을 선택합니다. 리소스 그룹 test-rg 또는 리소스 그룹을 선택합니다. 인스턴스 세부 정보 이름 bastion을 입력합니다. 지역 지역을 선택합니다. 이 예제에서는 미국 서부를 사용합니다. 계층 개발자를 선택합니다. 가상 네트워크 vnet-1을 선택합니다. 서브넷 AzureBastionSubnet을 선택합니다. 검토 + 생성를 선택한 다음, 생성를 선택합니다.
시뮬레이션된 NVA 가상 머신 만들기
시뮬레이션된 NVA는 스포크와 허브 간의 모든 트래픽과 인터넷으로 나가는 아웃바운드 트래픽을 라우팅하는 가상 어플라이언스로 작동합니다. Ubuntu 가상 머신은 시뮬레이션된 NVA에 사용됩니다. 다음 예제를 사용하여 시뮬레이션된 NVA를 만들고 네트워크 인터페이스를 구성합니다.
포털 맨 위에 있는 검색 상자에 가상 머신을 입력합니다. 검색 결과에서 가상 머신을 선택합니다.
+ 만들기를 선택한 다음, Azure 가상 머신을 선택합니다.
가상 머신 만들기의 기본 탭에서 다음 정보를 입력하거나 선택합니다.
설정 값 프로젝트 세부 정보 구독 구독을 선택합니다. 리소스 그룹 test-rg를 선택합니다. 인스턴스 세부 정보 가상 머신 이름 vm-nva를 입력합니다. 지역 (미국) 미국 서부를 선택합니다. 가용성 옵션 인프라 중복이 필요하지 않습니다를 선택합니다. 보안 유형 표준을 선택합니다. 이미지 Ubuntu Server 24.04 LTS - x64 Gen2를 선택합니다. VM 아키텍처 x64(기본값)를 그대로 둡니다. 크기 크기를 선택합니다. 관리자 계정 인증 유형 SSH 공개 키를 선택합니다. 사용자 이름 사용자 이름을 입력합니다. SSH 공개 키 원본 새 키 쌍 생성을 선택합니다. SSH 키 유형 RSA SSH 형식(기본값)을 그대로 둡니다. 키 쌍 이름 ssh-key를 입력합니다. 인바운드 포트 규칙 퍼블릭 인바운드 포트 없음을 선택합니다. 다음: 디스크를 선택하고 다음: 네트워킹을 선택합니다.
네트워킹 탭에서 다음 정보를 입력하거나 선택합니다.
설정 값 네트워크 인터페이스 가상 네트워크 vnet-hub를 선택합니다. 서브넷 subnet-public(10.0.253.0/28)을 선택합니다. 공용 IP 없음을 선택합니다. NIC 네트워크 보안 그룹 고급을 선택합니다. 네트워크 보안 그룹 구성 새로 만들기를 선택합니다.
이름에 nsg-nva를 입력합니다.
확인을 선택합니다.나머지 옵션은 기본값으로 두고 검토 + 만들기를 선택합니다.
만들기를 선택합니다.
새 키 쌍 생성 대화 상자가 나타납니다. 프라이빗 키 다운로드 및 리소스 만들기를 선택합니다.
프라이빗 키가 로컬 머신에 다운로드됩니다. 프라이빗 키는 Azure Bastion을 사용하여 가상 머신에 연결하기 위해 이후 단계에서 필요합니다. 프라이빗 키 파일의 이름은 키 쌍 이름 필드에 입력한 이름입니다. 이 예제에서 프라이빗 키 파일의 이름은 ssh-key입니다.
가상 머신 네트워크 인터페이스 구성
가상 머신의 기본 네트워크 인터페이스 IP 구성은 기본적으로 동적으로 설정됩니다. 다음 예제를 사용하여 기본 네트워크 인터페이스 IP 구성을 고정 IP로 변경하고 NVA의 프라이빗 인터페이스에 대한 보조 네트워크 인터페이스를 추가합니다.
포털 맨 위에 있는 검색 상자에 가상 머신을 입력합니다. 검색 결과에서 가상 머신을 선택합니다.
vm-nva를 선택합니다.
개요에서 가상 머신이 실행 중인 경우 중지를 선택합니다.
네트워킹을 확장한 다음, 네트워크 설정을 선택합니다.
네트워크 설정에서 네트워크 인터페이스 옆에 있는 네트워크 인터페이스 이름을 선택합니다. 인터페이스 이름은 가상 머신 이름과 난수 및 문자입니다. 이 예제의 인터페이스 이름은 vm-nva271입니다.
네트워크 인터페이스 속성의 설정에서 IP 구성을 선택합니다.
IP 전달 사용 옆의 확인란을 선택합니다.
적용을 선택합니다.
적용 작업이 완료되면 ipconfig1을 선택합니다.
ipconfig1의 개인 IP 주소 설정에서 고정을 선택합니다.
개인 IP 주소에 10.0.253.10을 입력합니다.
저장을 선택합니다.
저장 작업이 완료되면 vm-nva의 네트워킹 구성으로 돌아갑니다.
vm-nva의 네트워크 설정에서 네트워크 인터페이스 연결을 선택합니다.
네트워크 인터페이스 만들기 및 연결을 선택합니다.
네트워크 인터페이스 만들기에서 다음 정보를 입력하거나 선택합니다.
설정 값 프로젝트 세부 정보 리소스 그룹 test-rg를 선택합니다. 네트워크 인터페이스 이름 nic-private을 입력합니다. 서브넷 subnet-private(10.0.0.0/24)을 선택합니다. NIC 네트워크 보안 그룹 고급을 선택합니다. 네트워크 보안 그룹 구성 nsg-nva를 선택합니다. 개인 IP 주소 할당 고정을 선택합니다. 개인 IP 주소 10.0.0.10을 입력합니다. 만들기를 선택합니다.
가상 머신을 시작합니다.
가상 머신 소프트웨어 구성
시뮬레이션된 NVA의 라우팅은 Ubuntu 가상 머신에서 IP 테이블 및 내부 NAT를 사용합니다. Azure Bastion을 사용하여 NVA 가상 머신에 연결하여 IP 테이블 및 라우팅 구성을 지정합니다.
Azure portal에서 가상 머신을 검색하여 선택합니다.
가상 머신 페이지에서 vm-nva를 선택합니다.
VM의 개요 페이지에서 연결을 선택한 다음, Bastion을 통해 연결을 선택합니다.
Bastion 연결 화면에서 인증 유형을 로컬 파일의 SSH 프라이빗 키로 변경합니다.
가상 머신을 만들 때 사용한 사용자 이름을 입력합니다. 이 예제에서는 사용자 이름이 azureuser이지만, 이를 각자 만들었던 사용자 이름으로 대체합니다.
로컬 파일에서 폴더 아이콘을 선택하고 VM 작성 시 생성된 프라이빗 키 파일을 찾습니다. 프라이빗 키 파일은 일반적으로
id_rsa,id_rsa.pem,ssh-key.pem과 같은 이름으로 지정됩니다.연결을 선택합니다.
가상 머신의 프롬프트에 다음 정보를 입력하여 IP 전달을 사용하도록 설정합니다.
sudo nano /etc/sysctl.confNano 편집기에서
#줄의net.ipv4.ip_forward=1을 제거합니다.# Uncomment the next line to enable packet forwarding for IPv4 net.ipv4.ip_forward=1Ctrl + O를 눌러 파일을 저장합니다.
Ctrl + X를 눌러 편집기를 종료합니다.
다음 정보를 입력하여 가상 머신에서 내부 NAT를 사용하도록 설정합니다.
sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE sudo apt-get update sudo apt install iptables-persistent예를 두 번 선택합니다.
sudo su iptables-save > /etc/iptables/rules.v4 exitNano를 사용하여 다음 정보로 구성을 편집합니다.
sudo nano /etc/rc.local구성 파일에 다음 줄을 추가합니다.
/sbin/iptables-restore < /etc/iptables/rules.v4Ctrl + O를 눌러 파일을 저장합니다.
Ctrl + X를 눌러 편집기를 종료합니다.
다음과 같이 가상 머신을 다시 부팅합니다.
sudo reboot
허브 네트워크 경로 테이블 만들기
경로 테이블은 Azure의 기본 라우팅을 덮어쓰는 데 사용됩니다. 시뮬레이션된 NVA를 통해 허브 프라이빗 서브넷 내의 모든 트래픽을 적용하는 경로 테이블을 만듭니다.
포털 상단의 검색 창에 경로 테이블을 입력합니다. 검색 결과에서 경로 테이블을 선택합니다.
+ 만들기를 선택합니다.
경로 테이블 만들기에서 다음 정보를 입력하거나 선택합니다.
설정 값 프로젝트 세부 정보 구독 구독을 선택합니다. 리소스 그룹 test-rg를 선택합니다. 인스턴스 세부 정보 지역 미국 서부을 선택합니다. 이름 route-table-nat-hub를 입력합니다. 게이트웨이 경로 전파 예(기본값)를 그대로 둡니다. 검토 + 만들기를 선택합니다.
만들기를 선택합니다.
포털 상단의 검색 창에 경로 테이블을 입력합니다. 검색 결과에서 경로 테이블을 선택합니다.
route-table-nat-hub를 선택합니다.
설정을 확장한 다음 경로를 선택합니다.
경로에서 + 추가를 선택합니다.
경로 추가에서 다음 정보를 입력하거나 선택합니다.
설정 값 경로 이름 default-via-nat-hub를 입력합니다. 대상 형식 IP 주소를 선택합니다. 대상 IP 주소/CIDR 범위 0.0.0.0/0을 입력합니다. 다음 홉 유형 가상 어플라이언스를 선택합니다. 다음 홉 주소 10.0.0.10을 입력합니다.
이전 단계에서 NVA의 프라이빗 인터페이스에 추가한 IP 주소입니다..추가를 선택합니다.
설정에서 서브넷을 선택합니다.
+ 연결을 선택합니다.
서브넷 연결에서 다음 정보를 입력하거나 선택합니다.
설정 값 가상 네트워크 vnet-hub(test-rg)를 선택합니다. 서브넷 subnet-private을 선택합니다. 확인을 선택합니다.
스포크 1 가상 네트워크 만들기
다른 지역에 허브-스포크 네트워크의 첫 번째 스포크에 대한 또 다른 가상 네트워크를 만듭니다.
포털 맨 위에 있는 검색 상자에 가상 네트워크를 입력합니다. 검색 결과에서 가상 네트워크를 선택합니다.
+ 만들기를 선택합니다.
가상 네트워크 만들기의 기본 사항 탭에서 다음 정보를 입력하거나 선택합니다.
설정 값 프로젝트 세부 정보 구독 구독을 선택합니다. 리소스 그룹 test-rg를 선택합니다. 인스턴스 세부 정보 이름 vnet-spoke-1을 입력합니다. 지역 (미국) 미국 중남부를 선택합니다. 다음을 선택하여 보안 탭으로 이동합니다.
다음을 선택하여 IP 주소 탭으로 이동합니다.
IPv4 주소 공간의 IP 주소 탭에서 주소 공간 삭제를 선택하여 자동으로 채워진 주소 공간을 삭제합니다.
IPv4 주소 공간 추가를 선택합니다.
IPv4 주소 공간에 10.1.0.0을 입력합니다. 마스크 선택에서 기본값인 /16(65,536개 주소)을 그대로 둡니다.
서브넷 추가를 선택합니다.
서브넷 추가에서 다음 정보를 입력하거나 선택합니다.
설정 값 서브넷 목적 기본값(기본값)을 그대로 둡니다. 이름 subnet-private을 입력합니다. IPv4 IPv4 주소 범위 10.1.0.0/16(기본값)을 그대로 둡니다. 시작 주소 10.1.0.0(기본값)을 그대로 둡니다. 크기 /24(256개 주소)(기본값)를 그대로 둡니다. 추가를 선택합니다.
검토 + 만들기를 선택합니다.
만들기를 선택합니다.
허브와 스포크 1 간에 피어링 만들기
가상 네트워크 피어링은 허브를 스포크 1에 연결하고 스포크 1을 허브에 연결하는 데 사용됩니다. 다음 예제를 사용하여 허브와 스포크 1 간에 양방향 네트워크 피어링을 만듭니다.
포털 맨 위에 있는 검색 상자에 가상 네트워크를 입력합니다. 검색 결과에서 가상 네트워크를 선택합니다.
vnet-hub를 선택합니다.
설정을 확장한 다음 피어링을 선택합니다.
+추가를 선택합니다.
피어링 추가에서 다음 정보를 입력하거나 선택합니다.
설정 값 원격 가상 네트워크 요약 피어링 링크 이름 vnet-spoke-1-to-vnet-hub를 입력합니다. 가상 네트워크 배포 모델 리소스 관리자(기본값)를 그대로 둡니다. 구독 구독을 선택합니다. 가상 네트워크 vnet-spoke-1(test-rg)을 선택합니다. 원격 가상 네트워크 피어링 설정 'vnet-spoke-1'이 'vnet-hub'에 액세스하도록 허용 선택한 상태(기본값)를 그대로 둡니다. 'vnet-spoke-1'이 'vnet-hub'에서 전달된 트래픽을 수신하도록 허용 확인란을 선택합니다. 'vnet-spoke-1'의 게이트웨이 또는 경로 서버가 'vnet-hub-1'로 트래픽을 전달하도록 허용 선택 안 함(기본값)을 그대로 둡니다. 'vnet-spoke-1'을 사용하도록 설정하여 'vnet-hub'의 원격 게이트웨이 또는 경로 서버 사용 선택 안 함(기본값)을 그대로 둡니다. 로컬 가상 네트워크 요약 피어링 링크 이름 vnet-hub-to-vnet-spoke-1을 입력합니다. 로컬 가상 네트워크 피어링 설정 'vnet-hub'가 'vnet-spoke-1'에 액세스하도록 허용 선택한 상태(기본값)를 그대로 둡니다. 'vnet-hub'가 'vnet-spoke-1'에서 전달된 트래픽을 수신하도록 허용 확인란을 선택합니다. 'vnet-hub'의 게이트웨이 또는 경로 서버가 'vnet-spoke-1'로 트래픽을 전달하도록 허용 선택 안 함(기본값)을 그대로 둡니다. 'vnet-spoke-1'의 원격 게이트웨이 또는 경로 서버를 사용하려면 'vnet-hub'를 사용하도록 설정합니다. 선택 안 함(기본값)을 그대로 둡니다. 추가를 선택합니다.
새로 고침을 선택하고 피어링 상태가 연결됨인지 확인합니다.
스포크 1 네트워크 경로 테이블 만들기
허브 가상 네트워크의 시뮬레이션된 NVA를 통해 모든 스포크 간 트래픽과 인터넷 송신 트래픽을 강제로 적용하는 경로 테이블을 만듭니다.
포털 상단의 검색 창에 경로 테이블을 입력합니다. 검색 결과에서 경로 테이블을 선택합니다.
+ 만들기를 선택합니다.
경로 테이블 만들기에서 다음 정보를 입력하거나 선택합니다.
설정 값 프로젝트 세부 정보 구독 구독을 선택합니다. 리소스 그룹 test-rg를 선택합니다. 인스턴스 세부 정보 지역 미국 중남부를 선택합니다. 이름 route-table-nat-spoke-1을 입력합니다. 게이트웨이 경로 전파 예(기본값)를 그대로 둡니다. 검토 + 만들기를 선택합니다.
만들기를 선택합니다.
포털 상단의 검색 창에 경로 테이블을 입력합니다. 검색 결과에서 경로 테이블을 선택합니다.
route-table-nat-spoke-1을 선택합니다.
설정을 확장한 다음, 경로를 선택합니다.
경로에서 + 추가를 선택합니다.
경로 추가에서 다음 정보를 입력하거나 선택합니다.
설정 값 경로 이름 default-via-nat-spoke-1을 입력합니다. 대상 형식 IP 주소를 선택합니다. 대상 IP 주소/CIDR 범위 0.0.0.0/0을 입력합니다. 다음 홉 유형 가상 어플라이언스를 선택합니다. 다음 홉 주소 10.0.0.10을 입력합니다.
이전 단계에서 NVA의 프라이빗 인터페이스에 추가한 IP 주소입니다..추가를 선택합니다.
설정에서 서브넷을 선택합니다.
+ 연결을 선택합니다.
서브넷 연결에서 다음 정보를 입력하거나 선택합니다.
설정 값 가상 네트워크 vnet-spoke-1(test-rg)을 선택합니다. 서브넷 subnet-private을 선택합니다. 확인을 선택합니다.
스포크 1 테스트 가상 머신 만들기
Windows Server 2022 가상 머신은 NAT 게이트웨이를 통해 아웃바운드 인터넷 트래픽을 테스트하고 허브-스포크 네트워크의 스포크 간 트래픽을 테스트하는 데 사용됩니다. 다음 예제를 사용하여 Windows Server 2022 가상 머신을 만듭니다.
포털 맨 위에 있는 검색 상자에 가상 머신을 입력합니다. 검색 결과에서 가상 머신을 선택합니다.
+ 만들기를 선택한 다음, Azure 가상 머신을 선택합니다.
가상 머신 만들기의 기본 탭에서 다음 정보를 입력하거나 선택합니다.
설정 값 프로젝트 세부 정보 구독 구독을 선택합니다. 리소스 그룹 test-rg를 선택합니다. 인스턴스 세부 정보 가상 머신 이름 vm-spoke-1을 입력합니다. 지역 (미국) 미국 중남부를 선택합니다. 가용성 옵션 인프라 중복이 필요하지 않습니다를 선택합니다. 보안 유형 표준을 선택합니다. 이미지 Windows Server 2022 Datacenter - x64 Gen2를 선택합니다. VM 아키텍처 x64(기본값)를 그대로 둡니다. 크기 크기를 선택합니다. 관리자 계정 인증 유형 암호를 선택합니다. 사용자 이름 사용자 이름을 입력합니다. 암호 암호를 입력합니다. 암호 확인 암호를 다시 입력합니다. 인바운드 포트 규칙 퍼블릭 인바운드 포트 없음을 선택합니다. 다음: 디스크를 선택하고 다음: 네트워킹을 선택합니다.
네트워킹 탭에서 다음 정보를 입력하거나 선택합니다.
설정 값 네트워크 인터페이스 가상 네트워크 vnet-spoke-1을 선택합니다. 서브넷 subnet-private(10.1.0.0/24)을 선택합니다. 공용 IP 없음을 선택합니다. NIC 네트워크 보안 그룹 고급을 선택합니다. 네트워크 보안 그룹 구성 새로 만들기를 선택합니다.
nsg-spoke-1을 입력합니다.인바운드 규칙 + 인바운드 규칙 추가를 선택합니다.
서비스에서 HTTP를 선택합니다.
추가를 선택합니다.
확인을 선택합니다.확인을 선택합니다.
나머지 옵션은 기본값으로 두고 검토 + 만들기를 선택합니다.
만들기를 선택합니다.
다음 단계로 넘어가기 전에 가상 머신 배포가 완료될 때까지 기다립니다.
스포크 1 테스트 가상 머신에 IIS 설치
IIS는 NAT Gateway를 통해 아웃바운드 인터넷 트래픽을 테스트하고 허브-스포크 네트워크의 스포크 간 트래픽을 테스트하기 위해 Windows Server 2022 가상 머신에 설치됩니다.
포털 맨 위에 있는 검색 상자에 가상 머신을 입력합니다. 검색 결과에서 가상 머신을 선택합니다.
vm-spoke-1을 선택합니다.
작업을 확장한 다음, 명령 실행을 선택합니다.
RunPowerShellScript를 선택합니다.
명령 실행 스크립트에 다음 스크립트를 입력합니다.
# Install IIS server role Install-WindowsFeature -name Web-Server -IncludeManagementTools # Remove default htm file Remove-Item C:\inetpub\wwwroot\iisstart.htm # Add a new htm file that displays server name Add-Content -Path "C:\inetpub\wwwroot\iisstart.htm" -Value $("Hello World from " + $env:computername)실행을 선택합니다.
스크립트가 완료될 때까지 기다렸다가 다음 단계로 진행합니다. 스크립트가 완료되는 데 몇 분 정도 걸릴 수 있습니다.
스크립트가 완료되면 출력에 다음이 표시됩니다.
Success Restart Needed Exit Code Feature Result ------- -------------- --------- -------------- True No Success {Common HTTP Features, Default Document, D...
두 번째 스포크 가상 네트워크 만들기
허브-스포크 네트워크의 두 번째 스포크에 대한 두 번째 가상 네트워크를 만듭니다.
포털 맨 위에 있는 검색 상자에 가상 네트워크를 입력합니다. 검색 결과에서 가상 네트워크를 선택합니다.
+ 만들기를 선택합니다.
가상 네트워크 만들기의 기본 사항 탭에서 다음 정보를 입력하거나 선택합니다.
설정 값 프로젝트 세부 정보 구독 구독을 선택합니다. 리소스 그룹 test-rg를 선택합니다. 인스턴스 세부 정보 이름 vnet-spoke-2를 입력합니다. 지역 (미국) 미국 서부 2를 선택합니다. 다음을 선택하여 보안 탭으로 이동합니다.
다음을 선택하여 IP 주소 탭으로 이동합니다.
IPv4 주소 공간의 IP 주소 탭에서 주소 공간 삭제를 선택하여 자동으로 채워진 주소 공간을 삭제합니다.
IPv4 주소 공간 추가를 선택합니다.
IPv4 주소 공간에 10.2.0.0을 입력합니다. 마스크 선택에서 기본값인 /16(65,536개 주소)을 그대로 둡니다.
서브넷 추가를 선택합니다.
서브넷 추가에서 다음 정보를 입력하거나 선택합니다.
설정 값 서브넷 목적 기본값(기본값)을 그대로 둡니다. 이름 subnet-private을 입력합니다. IPv4 IPv4 주소 범위 10.2.0.0/16(기본값)을 그대로 둡니다. 시작 주소 10.2.0.0(기본값)을 그대로 둡니다. 크기 /24(256개 주소)(기본값)를 그대로 둡니다. 추가를 선택합니다.
검토 + 만들기를 선택합니다.
만들기를 선택합니다.
허브와 스포크 2 간에 피어링 만들기
허브와 스포크 2 간에 양방향 가상 네트워크 피어를 만듭니다.
포털 맨 위에 있는 검색 상자에 가상 네트워크를 입력합니다. 검색 결과에서 가상 네트워크를 선택합니다.
vnet-hub를 선택합니다.
설정에서 피어링을 선택합니다.
+추가를 선택합니다.
포털 맨 위에 있는 검색 상자에 가상 네트워크를 입력합니다. 검색 결과에서 가상 네트워크를 선택합니다.
vnet-hub를 선택합니다.
설정에서 피어링을 선택합니다.
+추가를 선택합니다.
피어링 추가에서 다음 정보를 입력하거나 선택합니다.
설정 값 원격 가상 네트워크 요약 피어링 링크 이름 vnet-spoke-2-to-vnet-hub를 입력합니다. 가상 네트워크 배포 모델 리소스 관리자(기본값)를 그대로 둡니다. 구독 구독을 선택합니다. 가상 네트워크 vnet-spoke-2(test-rg)를 선택합니다. 원격 가상 네트워크 피어링 설정 'vnet-spoke-2'이 'vnet-hub'에 액세스하도록 허용 선택한 상태(기본값)를 그대로 둡니다. 'vnet-spoke-2'이 'vnet-hub'에서 전달된 트래픽을 수신하도록 허용 확인란을 선택합니다. 'vnet-spoke-2'의 게이트웨이 또는 경로 서버가 'vnet-hub'로 트래픽을 전달하도록 허용 선택 안 함(기본값)을 그대로 둡니다. 'vnet-spoke-2'를 사용하도록 설정하여 'vnet-hub'의 원격 게이트웨이 또는 경로 서버를 사용합니다. 선택 안 함(기본값)을 그대로 둡니다. 로컬 가상 네트워크 요약 피어링 링크 이름 vnet-hub-to-vnet-spoke-2를 입력합니다. 로컬 가상 네트워크 피어링 설정 'vnet-hub'가 'vnet-spoke-2'에 액세스하도록 허용 선택한 상태(기본값)를 그대로 둡니다. 'vnet-hub'가 'vnet-spoke-2'에서 전달된 트래픽을 수신하도록 허용 확인란을 선택합니다. 'vnet-hub'의 게이트웨이 또는 경로 서버가 'vnet-spoke-2'로 트래픽을 전달하도록 허용 선택 안 함(기본값)을 그대로 둡니다. 'vnet-spoke-2'의 원격 게이트웨이 또는 경로 서버를 사용하려면 'vnet-hub'를 사용하도록 설정합니다. 선택 안 함(기본값)을 그대로 둡니다. 추가를 선택합니다.
새로 고침을 선택하고 피어링 상태가 연결됨인지 확인합니다.
스포크 2 네트워크 경로 테이블 만들기
허브 가상 네트워크의 시뮬레이션된 NVA를 통해 모든 아웃바운드 인터넷과 스포크 간 트래픽을 강제로 적용하는 경로 테이블을 만듭니다.
포털 상단의 검색 창에 경로 테이블을 입력합니다. 검색 결과에서 경로 테이블을 선택합니다.
+ 만들기를 선택합니다.
경로 테이블 만들기에서 다음 정보를 입력하거나 선택합니다.
설정 값 프로젝트 세부 정보 구독 구독을 선택합니다. 리소스 그룹 test-rg를 선택합니다. 인스턴스 세부 정보 지역 미국 서부 2를 선택합니다. 이름 route-table-nat-spoke-2를 입력합니다. 게이트웨이 경로 전파 예(기본값)를 그대로 둡니다. 검토 + 만들기를 선택합니다.
만들기를 선택합니다.
포털 상단의 검색 창에 경로 테이블을 입력합니다. 검색 결과에서 경로 테이블을 선택합니다.
route-table-nat-spoke-2를 선택합니다.
설정에서 경로를 선택합니다.
경로에서 + 추가를 선택합니다.
경로 추가에서 다음 정보를 입력하거나 선택합니다.
설정 값 경로 이름 default-via-nat-spoke-2를 입력합니다. 대상 형식 IP 주소를 선택합니다. 대상 IP 주소/CIDR 범위 0.0.0.0/0을 입력합니다. 다음 홉 유형 가상 어플라이언스를 선택합니다. 다음 홉 주소 10.0.0.10을 입력합니다.
이전 단계에서 NVA의 프라이빗 인터페이스에 추가한 IP 주소입니다..추가를 선택합니다.
설정에서 서브넷을 선택합니다.
+ 연결을 선택합니다.
서브넷 연결에서 다음 정보를 입력하거나 선택합니다.
설정 값 가상 네트워크 vnet-spoke-2(test-rg)를 선택합니다. 서브넷 subnet-private을 선택합니다. 확인을 선택합니다.
스포크 2 테스트 가상 머신 만들기
스포크 2에서 테스트 가상 머신에 사용할 Windows Server 2022 가상 머신을 만듭니다.
포털 맨 위에 있는 검색 상자에 가상 머신을 입력합니다. 검색 결과에서 가상 머신을 선택합니다.
+ 만들기를 선택한 다음, Azure 가상 머신을 선택합니다.
가상 머신 만들기의 기본 탭에서 다음 정보를 입력하거나 선택합니다.
설정 값 프로젝트 세부 정보 구독 구독을 선택합니다. 리소스 그룹 test-rg를 선택합니다. 인스턴스 세부 정보 가상 머신 이름 vm-spoke-2를 입력합니다. 지역 (미국) 미국 서부 2를 선택합니다. 가용성 옵션 인프라 중복이 필요하지 않습니다를 선택합니다. 보안 유형 표준을 선택합니다. 이미지 Windows Server 2022 Datacenter - x64 Gen2를 선택합니다. VM 아키텍처 x64(기본값)를 그대로 둡니다. 크기 크기를 선택합니다. 관리자 계정 인증 유형 암호를 선택합니다. 사용자 이름 사용자 이름을 입력합니다. 암호 암호를 입력합니다. 암호 확인 암호를 다시 입력합니다. 인바운드 포트 규칙 퍼블릭 인바운드 포트 없음을 선택합니다. 다음: 디스크를 선택하고 다음: 네트워킹을 선택합니다.
네트워킹 탭에서 다음 정보를 입력하거나 선택합니다.
설정 값 네트워크 인터페이스 가상 네트워크 vnet-spoke-2를 선택합니다. 서브넷 subnet-private(10.2.0.0/24)을 선택합니다. 공용 IP 없음을 선택합니다. NIC 네트워크 보안 그룹 고급을 선택합니다. 네트워크 보안 그룹 구성 새로 만들기를 선택합니다.
nsg-spoke-2를 입력합니다.인바운드 규칙 + 인바운드 규칙 추가를 선택합니다.
서비스에서 HTTP를 선택합니다.
추가를 선택합니다.
확인을 선택합니다.나머지 옵션은 기본값으로 두고 검토 + 만들기를 선택합니다.
만들기를 선택합니다.
다음 단계를 계속하기 전에 가상 머신이 배포를 완료할 때까지 기다리세요.
스포크 2 테스트 가상 머신에 IIS 설치
IIS는 NAT Gateway를 통해 아웃바운드 인터넷 트래픽을 테스트하고 허브-스포크 네트워크의 스포크 간 트래픽을 테스트하기 위해 Windows Server 2022 가상 머신에 설치됩니다.
포털 맨 위에 있는 검색 상자에 가상 머신을 입력합니다. 검색 결과에서 가상 머신을 선택합니다.
vm-spoke-2를 선택합니다.
작업에서 명령 실행을 선택합니다.
RunPowerShellScript를 선택합니다.
명령 실행 스크립트에 다음 스크립트를 입력합니다.
# Install IIS server role Install-WindowsFeature -name Web-Server -IncludeManagementTools # Remove default htm file Remove-Item C:\inetpub\wwwroot\iisstart.htm # Add a new htm file that displays server name Add-Content -Path "C:\inetpub\wwwroot\iisstart.htm" -Value $("Hello World from " + $env:computername)실행을 선택합니다.
스크립트가 완료될 때까지 기다렸다가 다음 단계로 진행합니다. 스크립트가 완료되는 데 몇 분 정도 걸릴 수 있습니다.
스크립트가 완료되면 출력*에 다음이 표시됩니다.
Success Restart Needed Exit Code Feature Result ------- -------------- --------- -------------- True No Success {Common HTTP Features, Default Document, D...
NAT Gateway 테스트
이전 단계에서 만든 Windows Server 2022 가상 머신에 연결하여 아웃바운드 인터넷 트래픽이 NAT Gateway를 벗어나고 있는지 확인합니다.
NAT Gateway 공용 IP 주소 가져오기
문서의 뒷부분에 있는 단계를 확인하려면 NAT Gateway 공용 IP 주소를 가져옵니다.
https://portal.azure.com에서 Azure Portal에 로그인합니다.
포털 맨 위에 있는 검색 상자에 공용 IP를 입력합니다. 검색 결과에서 공용 IP 주소를 선택합니다.
public-ip-nat를 선택합니다.
IP 주소의 값을 기록해 둡니다. 이 문서에 사용된 예시는 203.0.113.25입니다.
스포크 1에서 NAT Gateway 테스트
Windows Server 2022 가상 머신에서 Microsoft Edge를 사용해 https://whatsmyip.com에 연결하여 NAT Gateway의 기능을 확인합니다.
포털 맨 위에 있는 검색 상자에 가상 머신을 입력합니다. 검색 결과에서 가상 머신을 선택합니다.
vm-spoke-1을 선택합니다.
개요에서 연결을 선택한 다음 Bastion을 통해 연결합니다.
가상 머신을 만들 때 입력한 사용자 이름 및 암호를 입력합니다.
연결을 선택합니다.
데스크톱 로드가 완료되면 Microsoft Edge를 엽니다.
주소 표시줄에 https://whatsmyip.com을 입력합니다.
표시된 아웃바운드 IP 주소가 이전에 가져온 NAT Gateway의 IP와 동일한지 확인합니다.
베스천 연결이 vm-spoke-1로 열린 상태로 둡니다.
스포크 2에서 NAT Gateway 테스트
Windows Server 2022 가상 머신에서 Microsoft Edge를 사용해 https://whatsmyip.com에 연결하여 NAT Gateway의 기능을 확인합니다.
포털 맨 위에 있는 검색 상자에 가상 머신을 입력합니다. 검색 결과에서 가상 머신을 선택합니다.
vm-spoke-2를 선택합니다.
개요에서 연결을 선택한 다음 Bastion을 통해 연결합니다.
가상 머신을 만들 때 입력한 사용자 이름 및 암호를 입력합니다.
연결을 선택합니다.
데스크톱 로드가 완료되면 Microsoft Edge를 엽니다.
주소 표시줄에 https://whatsmyip.com을 입력합니다.
표시된 아웃바운드 IP 주소가 이전에 가져온 NAT Gateway의 IP와 동일한지 확인합니다.
베스천 연결이 vm-spoke-2로 열린 상태로 둡니다.
스포크 간 라우팅 테스트
스포크 1에서 스포크 2로의 트래픽과 스포크 2에서 스포크 1로의 트래픽은 허브 가상 네트워크에서 시뮬레이션된 NVA를 통해 라우팅됩니다. 다음 예제를 사용하여 허브-스포크 네트워크의 스포크 간 라우팅을 확인합니다.
스포크 1에서 스포크 2로의 라우팅 테스트
Microsoft Edge를 사용하여 이전 단계에서 설치한 vm-spoke-2의 웹 서버에 연결합니다.
vm-spoke-1로 열려 있는 베스천 연결로 돌아갑니다.
Microsoft Edge가 열려 있지 않으면 지금 엽니다.
주소 표시줄에 10.2.0.4를 입력합니다.
IIS 페이지가 vm-spoke-2에서 표시되는지 확인합니다.
vm-spoke-1에 대한 베스천 연결을 닫습니다.
스포크 2에서 스포크 1로의 라우팅 테스트
Microsoft Edge를 사용하여 이전 단계에서 설치한 vm-spoke-1의 웹 서버에 연결합니다.
vm-spoke-2로 열려 있는 베스천 연결로 돌아갑니다.
Microsoft Edge가 열려 있지 않으면 지금 엽니다.
주소 표시줄에 10.1.0.4를 입력합니다.
IIS 페이지가 vm-spoke-1에서 표시되는지 확인합니다.
vm-spoke-1에 대한 베스천 연결을 닫습니다.
만든 리소스 사용을 마치면 리소스 그룹과 해당 리소스를 모두 삭제할 수 있습니다.
Azure Portal에서 리소스 그룹을 검색하고 선택합니다.
리소스 그룹 페이지에서 test-rg 리소스 그룹을 선택합니다.
test-rg 페이지에서 리소스 그룹 삭제를 선택합니다.
삭제 확인을 위한 리소스 그룹 이름 입력에 test-rg를 입력한 다음 삭제를 선택합니다.
다음 단계
다음 문서로 이동하여 고가용성 네트워크 가상 어플라이언스에 Azure Gateway Load Balancer를 사용하는 방법을 알아봅니다.