자습서: 허브-스포크 네트워크에서 NAT 게이트웨이 사용

허브-스포크 네트워크는 고가용성 다중 위치 네트워크 인프라의 구성 요소 중 하나입니다. 일반적으로 허브-스포크 네트워크 배포는 중앙 허브를 통해 모든 스포크 간 트래픽과 아웃바운드 인터넷 트래픽을 라우팅하기 위해 이루어집니다. 보안 검사 및 패킷 검사를 위해 NVA(네트워크 가상 어플라이언스)를 사용하여 네트워크를 통과하는 모든 트래픽을 검사하는 것이 목적입니다.

인터넷으로 나가는 아웃바운드 트래픽의 경우 네트워크 가상 어플라이언스에는 일반적으로 공용 IP 주소가 할당된 네트워크 인터페이스가 하나 있습니다. 아웃바운드 트래픽을 검사한 후 NVA는 공용 인터페이스와 인터넷으로 트래픽을 전달합니다. Azure NAT Gateway를 사용하면 NVA에 할당된 공용 IP 주소가 필요 없습니다. NAT 게이트웨이를 NVA의 공용 서브넷과 연결하면 공용 인터페이스의 라우팅이 NAT 게이트웨이를 통해 모든 아웃바운드 인터넷 트래픽을 라우팅하도록 변경됩니다. 공용 IP 주소를 제거하면 보안이 강화되고 여러 공용 IP 주소 및/또는 공용 IP 접두사를 사용하여 아웃바운드 SNAT(Source Network Address Translation)를 스케일링할 수 있습니다.

Important

이 문서의 NVA는 데모용으로만 사용되며 Ubuntu 가상 머신으로 시뮬레이션됩니다. 솔루션에는 고가용성 NVA 배포를 위한 부하 분산 장치가 포함되어 있지 않습니다. 이 문서의 Ubuntu 가상 머신을 원하는 NVA로 바꾸세요. 라우팅 및 구성 지침은 선택한 NVA 공급업체에 문의하세요. 고가용성 NVA 인프라에는 부하 분산 장치와 가용성 영역을 사용하는 것이 좋습니다.

이 자습서에서는 다음을 하는 방법을 알아볼 수 있습니다.

  • NAT 게이트웨이 만들기
  • 허브-스포크 가상 네트워크 만들기
  • 시뮬레이션된 NVA(네트워크 가상 어플라이언스) 만들기
  • 허브를 통해 스포크의 모든 트래픽 적용
  • 허브의 모든 인터넷 트래픽을 적용하고 NAT 게이트웨이를 스포크 아웃
  • NAT 게이트웨이 및 스포크 간 라우팅 테스트

필수 조건

NAT 게이트웨이 만들기

모든 아웃바운드 인터넷 트래픽은 NAT 게이트웨이를 인터넷으로 트래버스합니다. 다음 예제를 사용하여 허브-스포크 네트워크를 위한 NAT 게이트웨이를 만듭니다.

  1. Azure Portal에 로그인합니다.

  2. 포털 맨 위에 있는 검색 상자에 NAT 게이트웨이를 입력합니다. 검색 결과에서 NAT 게이트웨이를 선택합니다.

  3. + 만들기를 선택합니다.

  4. NAT(Network Address Translation) 게이트웨이 만들기기본 사항 탭에서 다음 정보를 입력하거나 선택합니다.

    설정
    프로젝트 세부 정보
    Subscription 구독을 선택합니다.
    Resource group 새로 만들기를 선택합니다.
    이름에 Enter test-rg를 입력합니다.
    확인을 선택합니다.
    인스턴스 세부 정보
    NAT Gateway 이름 nat-gateway를 입력합니다.
    지역 미국 동부 2를 선택합니다.
    가용성 영역 영역 또는 영역 없음을 선택합니다.
    TCP 유휴 시간 제한(분) 기본값 4를 그대로 둡니다.
  5. 다음: 아웃바운드 IP를 선택합니다.

  6. 공용 IP 주소아웃바운드 IP에서 새 공용 IP 주소 만들기를 선택합니다.

  7. 이름public-ip-nat를 입력합니다.

  8. 확인을 선택합니다.

  9. 검토 + 만들기를 선택합니다.

  10. 만들기를 선택합니다.

허브 가상 네트워크 만들기

허브 가상 네트워크는 솔루션의 중앙 네트워크입니다. 허브 네트워크에는 NVA 어플라이언스와 퍼블릭 및 프라이빗 서브넷이 포함되어 있습니다. NAT 게이트웨이는 가상 네트워크를 만드는 동안 공용 서브넷에 할당됩니다. Azure Bastion 호스트는 다음 예제를 진행하는 동안 구성됩니다. 베스천 호스트는 문서 뒷부분에서 스포크에 배포하는 NVA 가상 머신 및 테스트 가상 머신에 안전하게 연결하는 데 사용됩니다.

  1. 포털 맨 위에 있는 검색 상자에 가상 네트워크를 입력합니다. 검색 결과에서 가상 네트워크를 선택합니다.

  2. + 만들기를 선택합니다.

  3. 가상 네트워크 만들기기본 사항 탭에서 다음 정보를 입력하거나 선택합니다.

    설정
    프로젝트 세부 정보
    Subscription 구독을 선택합니다.
    Resource group test-rg를 선택합니다.
    인스턴스 세부 정보
    이름 vnet-hub를 입력합니다.
    지역 미국 동부 2를 선택합니다.
  4. 다음을 선택하여 보안 탭으로 이동합니다.

  5. 보안 탭의 Azure Bastion 섹션에서 Bastion 사용을 선택합니다.

    Azure Bastion은 브라우저를 사용하여 개인 IP 주소를 사용하여 SSH(보안 셸) 또는 RDP(원격 데스크톱 프로토콜)를 통해 가상 네트워크의 VM에 연결합니다. VM에는 공용 IP 주소, 클라이언트 소프트웨어 또는 특수 구성이 필요하지 않습니다. Azure Bastion에 대한 자세한 내용은 Azure Bastion을 참조하세요.

    참고 항목

    시간당 가격은 아웃바운드 데이터 사용량에 관계없이 Bastion이 배포되는 순간부터 시작됩니다. 자세한 내용은 가격 책정SKU를 참조하세요. 자습서 또는 테스트의 일부로 Bastion을 배포하는 경우 사용을 마친 후 이 리소스를 삭제하는 것이 좋습니다.

  6. Azure Bastion에서 다음 정보를 입력하거나 선택합니다.

    설정
    Azure Bastion 호스트 이름 bastion을 입력합니다.
    Azure Bastion 공용 IP 주소 공용 IP 주소 만들기를 선택합니다.
    이름에 public-ip를 입력합니다.
    확인을 선택합니다.
  7. 다음을 선택하여 IP 주소 탭으로 이동합니다.

  8. 서브넷의 주소 공간 입력란에서 기본 서브넷을 선택합니다.

  9. 서브넷 편집에서 다음 정보를 입력하거나 선택합니다.

    설정
    서브넷 세부 정보
    서브넷 템플릿 기본값으로 둡니다.
    이름 서브넷-프라이빗을 입력합니다.
    시작 주소 기본값인 10.0.0.0을 그대로 둡니다.
    서브넷 크기 기본값인 /24(256개 주소)를 그대로 둡니다.
  10. 저장을 선택합니다.

  11. + 서브넷 추가를 선택합니다.

  12. 서브넷 추가에 다음 정보를 입력하거나 선택합니다.

    설정
    서브넷 세부 정보
    서브넷 템플릿 기본값으로 둡니다.
    이름 서브넷-퍼블릭을 입력합니다.
    시작 주소 10.0.253.0을 입력합니다.
    서브넷 크기 /28(16개 주소)을 선택합니다.
    보안
    NAT 게이트웨이 nat-gateway를 선택합니다.
  13. 추가를 선택합니다.

  14. 검토 + 만들기를 선택합니다.

  15. 만들기를 선택합니다.

베스천 호스트를 배포하는 데 몇 분 정도 걸립니다. 배포하는 동안 가상 네트워크가 만들어지면 다음 단계를 진행할 수 있습니다.

시뮬레이션된 NVA 가상 머신 만들기

시뮬레이션된 NVA는 스포크와 허브 간의 모든 트래픽과 인터넷으로 나가는 아웃바운드 트래픽을 라우팅하는 가상 어플라이언스로 작동합니다. Ubuntu 가상 머신은 시뮬레이션된 NVA에 사용됩니다. 다음 예제를 사용하여 시뮬레이션된 NVA를 만들고 네트워크 인터페이스를 구성합니다.

  1. 포털 맨 위에 있는 검색 상자에 가상 머신을 입력합니다. 검색 결과에서 가상 머신을 선택합니다.

  2. + 만들기를 선택한 다음 Azure 가상 머신을 선택합니다.

  3. 가상 머신 만들기기본 탭에서 다음 정보를 입력하거나 선택합니다.

    설정
    프로젝트 세부 정보
    Subscription 구독을 선택합니다.
    Resource group test-rg를 선택합니다.
    인스턴스 세부 정보
    가상 머신 이름 vm-nva를 입력합니다.
    지역 (미국) 미국 동부 2를 선택합니다.
    가용성 옵션 인프라 중복이 필요하지 않습니다.를 선택합니다.
    보안 유형 표준을 선택합니다.
    이미지 Ubuntu Server 22.04 LTS - x64 Gen2를 선택합니다.
    VM 아키텍처 x64(기본값)를 그대로 둡니다.
    크기 크기를 선택합니다.
    관리자 계정
    인증 유형 암호를 선택합니다.
    사용자 이름 사용자 이름을 입력합니다.
    암호 암호를 입력합니다.
    암호 확인 암호를 다시 입력합니다.
    인바운드 포트 규칙
    공용 인바운드 포트 없음을 선택합니다.
  4. 다음: 디스크를 선택하고 다음: 네트워킹을 선택합니다.

  5. 네트워킹 탭에서 다음 정보를 입력하거나 선택합니다.

    설정
    네트워크 인터페이스
    가상 네트워크 vnet-hub를 선택합니다.
    서브넷 subnet-public(10.0.253.0/28)을 선택합니다.
    공용 IP 없음을 선택합니다.
    NIC 네트워크 보안 그룹 추가 고급을 선택합니다.
    네트워크 보안 그룹 구성 새로 만들기를 선택합니다.
    이름nsg-nva를 입력합니다.
    확인을 선택합니다.
  6. 나머지 옵션은 기본값으로 두고 검토 + 만들기를 선택합니다.

  7. 만들기를 실행합니다.

가상 머신 네트워크 인터페이스 구성

가상 머신의 기본 네트워크 인터페이스 IP 구성은 기본적으로 동적으로 설정됩니다. 다음 예제를 사용하여 기본 네트워크 인터페이스 IP 구성을 고정 IP로 변경하고 NVA의 프라이빗 인터페이스에 대한 보조 네트워크 인터페이스를 추가합니다.

  1. 포털 맨 위에 있는 검색 상자에 가상 머신을 입력합니다. 검색 결과에서 가상 머신을 선택합니다.

  2. vm-nva를 선택합니다.

  3. 개요에서 가상 머신이 실행 중인 경우 중지를 선택합니다.

  4. 설정에서 네트워킹을 선택합니다.

  5. 네트워킹에서 네트워크 인터페이스: 옆에 있는 네트워크 인터페이스 이름을 선택합니다. 인터페이스 이름은 가상 머신 이름과 난수 및 문자입니다. 이 예제의 인터페이스 이름은 vm-nva271입니다.

  6. 네트워크 인터페이스 속성의 설정에서 IP 구성을 선택합니다.

  7. IP 전달 사용 옆의 확인란을 선택합니다.

  8. 적용을 선택합니다.

  9. 적용 작업이 완료되면 ipconfig1을 선택합니다.

  10. ipconfig1할당에서 고정을 선택합니다.

  11. 개인 IP 주소10.0.253.10을 입력합니다.

  12. 저장을 선택합니다.

  13. 저장 작업이 완료되면 vm-nva의 네트워킹 구성으로 돌아갑니다.

  14. vm-nva네트워킹에서 네트워크 인터페이스 연결을 선택합니다.

  15. 네트워크 인터페이스 만들기 및 연결을 선택합니다.

  16. 네트워크 인터페이스 만들기에서 다음 정보를 입력하거나 선택합니다.

    설정
    프로젝트 세부 정보
    Resource group test-rg를 선택합니다.
    네트워크 인터페이스
    이름 nic-private를 입력합니다.
    서브넷 subnet-private(10.0.0.0/24)을 선택합니다.
    NIC 네트워크 보안 그룹 추가 고급을 선택합니다.
    네트워크 보안 그룹 구성 nsg-nva를 선택합니다.
    개인 IP 주소 할당 고정을 선택합니다.
    개인 IP 주소 10.0.0.10을 입력합니다.
  17. 만들기를 실행합니다.

가상 머신 소프트웨어 구성

시뮬레이션된 NVA의 라우팅은 Ubuntu 가상 머신에서 IP 테이블 및 내부 NAT를 사용합니다. Azure Bastion을 사용하여 NVA 가상 머신에 연결하여 IP 테이블 및 라우팅 구성을 지정합니다.

  1. 포털 맨 위에 있는 검색 상자에 가상 머신을 입력합니다. 검색 결과에서 가상 머신을 선택합니다.

  2. vm-nva를 선택합니다.

  3. vm-nva를 시작합니다.

  4. 가상 머신 부팅이 완료되면 다음 단계를 계속 진행합니다.

  5. 작업에서 Bastion을 선택합니다.

  6. 가상 머신을 만들 때 입력한 사용자 이름 및 암호를 입력합니다.

  7. 연결을 선택합니다.

  8. 가상 머신의 프롬프트에 다음 정보를 입력하여 IP 전달을 사용하도록 설정합니다.

    sudo vim /etc/sysctl.conf
    
  9. Vim 편집기에서 net.ipv4.ip_forward=1 줄의 #을 제거합니다.

    Insert 키를 누릅니다.

    # Uncomment the next line to enable packet forwarding for IPv4
    net.ipv4.ip_forward=1
    

    Esc 키를 누릅니다.

    :wq를 입력하고 Enter 키를 누릅니다.

  10. 다음 정보를 입력하여 가상 머신에서 내부 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
    exit
    
  11. Vim을 사용하여 다음 정보로 구성을 편집합니다.

    sudo vim /etc/rc.local
    

    Insert 키를 누릅니다.

    구성 파일에 다음 줄을 추가합니다.

    /sbin/iptables-restore < /etc/iptables/rules.v4
    

    Esc 키를 누릅니다.

    :wq를 입력하고 Enter 키를 누릅니다.

  12. 다음과 같이 가상 머신을 다시 부팅합니다.

    sudo reboot
    

허브 네트워크 경로 테이블 만들기

경로 테이블은 Azure의 기본 라우팅을 덮어쓰는 데 사용됩니다. 시뮬레이션된 NVA를 통해 허브 프라이빗 서브넷 내의 모든 트래픽을 적용하는 경로 테이블을 만듭니다.

  1. 포털 상단의 검색 창에 경로 테이블을 입력합니다. 검색 결과에서 경로 테이블을 선택합니다.

  2. + 만들기를 선택합니다.

  3. 경로 테이블 만들기에서 다음 정보를 입력하거나 선택합니다.

    설정
    프로젝트 세부 정보
    Subscription 구독을 선택합니다.
    Resource group test-rg를 선택합니다.
    인스턴스 세부 정보
    지역 미국 동부 2를 선택합니다.
    이름 route-table-nat-hub를 입력합니다.
    게이트웨이 경로 전파 (기본값)를 그대로 둡니다.
  4. 검토 + 만들기를 선택합니다.

  5. 만들기를 선택합니다.

  6. 포털 상단의 검색 창에 경로 테이블을 입력합니다. 검색 결과에서 경로 테이블을 선택합니다.

  7. route-table-nat-hub를 선택합니다.

  8. 설정에서 경로를 선택합니다.

  9. 경로에서 + 추가를 선택합니다.

  10. 경로 추가에서 다음 정보를 입력하거나 선택합니다.

    설정
    경로 이름 default-via-nat-hub를 입력합니다.
    대상 형식 IP 주소를 선택합니다.
    대상 IP 주소/CIDR 범위 0.0.0.0/0을 입력합니다.
    다음 홉 유형 가상 어플라이언스를 선택합니다.
    다음 홉 주소 10.0.0.10을 입력합니다.
    이전 단계에서 NVA의 프라이빗 인터페이스에 추가한 IP 주소입니다.
  11. 추가를 선택합니다.

  12. 설정에서 서브넷을 선택합니다.

  13. + 연결을 선택합니다.

  14. 서브넷 연결에서 다음 정보를 입력하거나 선택합니다.

    설정
    가상 네트워크 vnet-hub(test-rg)를 선택합니다.
    서브넷 서브넷-프라이빗을 선택합니다.
  15. 확인을 선택합니다.

스포크 1 가상 네트워크 만들기

다른 지역에 허브-스포크 네트워크의 첫 번째 스포크에 대한 또 다른 가상 네트워크를 만듭니다.

  1. 포털 맨 위에 있는 검색 상자에 가상 네트워크를 입력합니다. 검색 결과에서 가상 네트워크를 선택합니다.

  2. + 만들기를 선택합니다.

  3. 가상 네트워크 만들기기본 사항 탭에서 다음 정보를 입력하거나 선택합니다.

    설정
    프로젝트 세부 정보
    Subscription 구독을 선택합니다.
    Resource group test-rg를 선택합니다.
    인스턴스 세부 정보
    이름 vnet-spoke-1을 입력합니다.
    지역 (미국) 미국 중남부를 선택합니다.
  4. 다음을 선택하여 보안 탭으로 이동합니다.

  5. 다음을 선택하여 IP 주소 탭으로 이동합니다.

  6. IPv4 주소 공간IP 주소 탭에서 휴지통을 선택하여 자동으로 채워진 주소 공간을 삭제합니다.

  7. IPv4 주소 공간10.1.0.0을 입력합니다. 마스크 선택에서 기본값인 /16(65,536개 주소)을 그대로 둡니다.

  8. + 서브넷 추가를 선택합니다.

  9. 서브넷 추가에서 다음 정보를 입력하거나 선택합니다.

    설정
    서브넷 세부 정보
    서브넷 템플릿 기본값으로 둡니다.
    이름 서브넷-프라이빗을 입력합니다.
    시작 주소 10.1.0.0을 입력합니다.
    서브넷 크기 기본값인 /24(256개 주소)를 그대로 둡니다.
  10. 추가를 선택합니다.

  11. 검토 + 만들기를 선택합니다.

  12. 만들기를 선택합니다.

허브와 스포크 1 간에 피어링 만들기

가상 네트워크 피어링은 허브를 스포크 1에 연결하고 스포크 1을 허브에 연결하는 데 사용됩니다. 다음 예제를 사용하여 허브와 스포크 1 간에 양방향 네트워크 피어링을 만듭니다.

  1. 포털 맨 위에 있는 검색 상자에 가상 네트워크를 입력합니다. 검색 결과에서 가상 네트워크를 선택합니다.

  2. vnet-hub를 선택합니다.

  3. 설정에서 피어링을 선택합니다.

  4. + 추가를 선택합니다.

  5. 피어링 추가에서 다음 정보를 입력하거나 선택합니다.

    설정
    이 가상 네트워크
    피어링 링크 이름 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'를 사용하도록 설정 선택 안 함(기본값)을 그대로 둡니다.
    원격 가상 네트워크
    피어링 링크 이름 vnet-spoke-1-to-vnet-hub를 입력합니다.
    가상 네트워크 배포 모델 기본값인 리소스 관리자로 둡니다.
    Subscription 구독을 선택합니다.
    가상 네트워크 vnet-spoke-1을 선택합니다.
    'vnet-spoke-1'이 'vnet-hub'에 액세스하도록 허용 선택한 상태(기본값)를 그대로 둡니다.
    'vnet-spoke-1'이 'vnet-hub'에서 전달된 트래픽을 수신하도록 허용 확인란을 선택합니다.
    'vnet-spoke-1'의 게이트웨이가 트래픽을 'vnet-hub'로 전달하도록 허용 선택 안 함(기본값)을 그대로 둡니다.
    'vnet-hub' 원격 게이트웨이를 사용하기 위해 'vnet-spoke-1'을 사용하도록 설정 선택 안 함(기본값)을 그대로 둡니다.
  6. 추가를 선택합니다.

  7. 새로 고침을 선택하고 피어링 상태연결됨인지 확인합니다.

스포크 1 네트워크 경로 테이블 만들기

허브 가상 네트워크의 시뮬레이션된 NVA를 통해 모든 스포크 간 트래픽과 인터넷 송신 트래픽을 강제로 적용하는 경로 테이블을 만듭니다.

  1. 포털 상단의 검색 창에 경로 테이블을 입력합니다. 검색 결과에서 경로 테이블을 선택합니다.

  2. + 만들기를 선택합니다.

  3. 경로 테이블 만들기에서 다음 정보를 입력하거나 선택합니다.

    설정
    프로젝트 세부 정보
    Subscription 구독을 선택합니다.
    Resource group test-rg를 선택합니다.
    인스턴스 세부 정보
    지역 미국 중남부를 선택합니다.
    이름 route-table-nat-spoke-1을 입력합니다.
    게이트웨이 경로 전파 (기본값)를 그대로 둡니다.
  4. 검토 + 만들기를 선택합니다.

  5. 만들기를 선택합니다.

  6. 포털 상단의 검색 창에 경로 테이블을 입력합니다. 검색 결과에서 경로 테이블을 선택합니다.

  7. route-table-nat-spoke-1을 선택합니다.

  8. 설정에서 경로를 선택합니다.

  9. 경로에서 + 추가를 선택합니다.

  10. 경로 추가에서 다음 정보를 입력하거나 선택합니다.

    설정
    경로 이름 default-via-nat-spoke-1을 입력합니다.
    대상 형식 IP 주소를 선택합니다.
    대상 IP 주소/CIDR 범위 0.0.0.0/0을 입력합니다.
    다음 홉 유형 가상 어플라이언스를 선택합니다.
    다음 홉 주소 10.0.0.10을 입력합니다.
    이전 단계에서 NVA의 프라이빗 인터페이스에 추가한 IP 주소입니다.
  11. 추가를 선택합니다.

  12. 설정에서 서브넷을 선택합니다.

  13. + 연결을 선택합니다.

  14. 서브넷 연결에서 다음 정보를 입력하거나 선택합니다.

    설정
    가상 네트워크 vnet-spoke-1(test-rg)을 선택합니다.
    서브넷 서브넷-프라이빗을 선택합니다.
  15. 확인을 선택합니다.

스포크 1 테스트 가상 머신 만들기

Windows Server 2022 가상 머신은 NAT 게이트웨이를 통해 아웃바운드 인터넷 트래픽을 테스트하고 허브-스포크 네트워크의 스포크 간 트래픽을 테스트하는 데 사용됩니다. 다음 예제를 사용하여 Windows Server 2022 가상 머신을 만듭니다.

  1. 포털 맨 위에 있는 검색 상자에 가상 머신을 입력합니다. 검색 결과에서 가상 머신을 선택합니다.

  2. + 만들기를 선택한 다음 Azure 가상 머신을 선택합니다.

  3. 가상 머신 만들기기본 탭에서 다음 정보를 입력하거나 선택합니다.

    설정
    프로젝트 세부 정보
    Subscription 구독을 선택합니다.
    Resource group test-rg를 선택합니다.
    인스턴스 세부 정보
    가상 머신 이름 vm-spoke-1을 입력합니다.
    지역 (미국) 미국 중남부를 선택합니다.
    가용성 옵션 인프라 중복이 필요하지 않습니다.를 선택합니다.
    보안 유형 표준을 선택합니다.
    이미지 Windows Server 2022 Datacenter - x64 Gen2를 선택합니다.
    VM 아키텍처 x64(기본값)를 그대로 둡니다.
    크기 크기를 선택합니다.
    관리자 계정
    인증 유형 암호를 선택합니다.
    사용자 이름 사용자 이름을 입력합니다.
    암호 암호를 입력합니다.
    암호 확인 암호를 다시 입력합니다.
    인바운드 포트 규칙
    공용 인바운드 포트 없음을 선택합니다.
  4. 다음: 디스크를 선택하고 다음: 네트워킹을 선택합니다.

  5. 네트워킹 탭에서 다음 정보를 입력하거나 선택합니다.

    설정
    네트워크 인터페이스
    가상 네트워크 vnet-spoke-1을 선택합니다.
    서브넷 서브넷-프라이빗(10.1.0.0/24)을 선택합니다.
    공용 IP 없음을 선택합니다.
    NIC 네트워크 보안 그룹 추가 고급을 선택합니다.
    네트워크 보안 그룹 구성 새로 만들기를 선택합니다.
    nsg-spoke-1을 입력합니다.
    인바운드 규칙 + 인바운드 규칙 추가를 선택합니다.
    서비스에서 HTTP를 선택합니다.
    추가를 선택합니다.
    확인을 선택합니다.
  6. 확인을 선택합니다.

  7. 나머지 옵션은 기본값으로 두고 검토 + 만들기를 선택합니다.

  8. 만들기를 실행합니다.

스포크 1 테스트 가상 머신에 IIS 설치

IIS는 NAT 게이트웨이를 통해 아웃바운드 인터넷 트래픽을 테스트하고 허브-스포크 네트워크의 스포크 간 트래픽을 테스트하기 위해 Windows Server 2022 가상 머신에 설치됩니다.

  1. 포털 맨 위에 있는 검색 상자에 가상 머신을 입력합니다. 검색 결과에서 가상 머신을 선택합니다.

  2. vm-spoke-1을 선택합니다.

  3. 작업에서 명령 실행을 선택합니다.

  4. RunPowerShellScript를 선택합니다.

  5. 명령 실행 스크립트에 다음 스크립트를 입력합니다.

    # 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)
    
  6. 실행을 선택합니다.

  7. 스크립트가 완료될 때까지 기다렸다가 다음 단계로 진행합니다. 스크립트가 완료되는 데 몇 분 정도 걸릴 수 있습니다.

  8. 스크립트가 완료되면 출력*에 다음이 표시됩니다.

    Success Restart Needed Exit Code      Feature Result                               
    ------- -------------- ---------      --------------                               
    True    No             Success        {Common HTTP Features, Default Document, D...
    

두 번째 스포크 가상 네트워크 만들기

허브-스포크 네트워크의 두 번째 스포크에 대한 두 번째 가상 네트워크를 만듭니다.

  1. 포털 맨 위에 있는 검색 상자에 가상 네트워크를 입력합니다. 검색 결과에서 가상 네트워크를 선택합니다.

  2. + 만들기를 선택합니다.

  3. 가상 네트워크 만들기기본 사항 탭에서 다음 정보를 입력하거나 선택합니다.

    설정
    프로젝트 세부 정보
    Subscription 구독을 선택합니다.
    Resource group test-rg를 선택합니다.
    인스턴스 세부 정보
    이름 vnet-spoke-2를 입력합니다.
    지역 미국 서부 2를 선택합니다.
  4. 다음을 선택하여 보안 탭으로 이동합니다.

  5. 다음을 선택하여 IP 주소 탭으로 이동합니다.

  6. IPv4 주소 공간IP 주소 탭에서 휴지통을 선택하여 자동으로 채워진 주소 공간을 삭제합니다.

  7. IPv4 주소 공간10.2.0.0을 입력합니다. 마스크 선택에서 기본값인 /16(65,536개 주소)을 그대로 둡니다.

  8. + 서브넷 추가를 선택합니다.

  9. 서브넷 추가에서 다음 정보를 입력하거나 선택합니다.

    설정
    서브넷 세부 정보
    서브넷 템플릿 기본값으로 둡니다.
    이름 서브넷-프라이빗을 입력합니다.
    시작 주소 10.2.0.0을 입력합니다.
    서브넷 크기 기본값인 /24(256개 주소)를 그대로 둡니다.
  10. 추가를 선택합니다.

  11. 검토 + 만들기를 선택합니다.

  12. 만들기를 선택합니다.

허브와 스포크 2 간에 피어링 만들기

허브와 스포크 2 간에 양방향 가상 네트워크 피어를 만듭니다.

  1. 포털 맨 위에 있는 검색 상자에 가상 네트워크를 입력합니다. 검색 결과에서 가상 네트워크를 선택합니다.

  2. vnet-hub를 선택합니다.

  3. 설정에서 피어링을 선택합니다.

  4. + 추가를 선택합니다.

  5. 포털 맨 위에 있는 검색 상자에 가상 네트워크를 입력합니다. 검색 결과에서 가상 네트워크를 선택합니다.

  6. vnet-hub를 선택합니다.

  7. 설정에서 피어링을 선택합니다.

  8. + 추가를 선택합니다.

  9. 피어링 추가에서 다음 정보를 입력하거나 선택합니다.

    설정
    이 가상 네트워크
    피어링 링크 이름 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'를 사용하도록 설정 선택 안 함(기본값)을 그대로 둡니다.
    원격 가상 네트워크
    피어링 링크 이름 vnet-spoke-2-to-vnet-hub를 입력합니다.
    가상 네트워크 배포 모델 기본값인 리소스 관리자로 둡니다.
    Subscription 구독을 선택합니다.
    가상 네트워크 vnet-spoke-2를 선택합니다.
    'vnet-spoke-1'이 'vnet-hub'에 액세스하도록 허용 선택한 상태(기본값)를 그대로 둡니다.
    'vnet-spoke-1'이 'vnet-hub'에서 전달된 트래픽을 수신하도록 허용 확인란을 선택합니다.
    'vnet-spoke-1'의 게이트웨이가 트래픽을 'vnet-hub'로 전달하도록 허용 선택 안 함(기본값)을 그대로 둡니다.
    'vnet-hub' 원격 게이트웨이를 사용하기 위해 'vnet-spoke-1'을 사용하도록 설정 선택 안 함(기본값)을 그대로 둡니다.
  10. 추가를 선택합니다.

  11. 새로 고침을 선택하고 피어링 상태연결됨인지 확인합니다.

스포크 2 네트워크 경로 테이블 만들기

허브 가상 네트워크의 시뮬레이션된 NVA를 통해 모든 아웃바운드 인터넷과 스포크 간 트래픽을 강제로 적용하는 경로 테이블을 만듭니다.

  1. 포털 상단의 검색 창에 경로 테이블을 입력합니다. 검색 결과에서 경로 테이블을 선택합니다.

  2. + 만들기를 선택합니다.

  3. 경로 테이블 만들기에서 다음 정보를 입력하거나 선택합니다.

    설정
    프로젝트 세부 정보
    Subscription 구독을 선택합니다.
    Resource group test-rg를 선택합니다.
    인스턴스 세부 정보
    지역 미국 서부 2를 선택합니다.
    이름 route-table-nat-spoke-2를 입력합니다.
    게이트웨이 경로 전파 (기본값)를 그대로 둡니다.
  4. 검토 + 만들기를 선택합니다.

  5. 만들기를 선택합니다.

  6. 포털 상단의 검색 창에 경로 테이블을 입력합니다. 검색 결과에서 경로 테이블을 선택합니다.

  7. route-table-nat-spoke-2를 선택합니다.

  8. 설정에서 경로를 선택합니다.

  9. 경로에서 + 추가를 선택합니다.

  10. 경로 추가에서 다음 정보를 입력하거나 선택합니다.

    설정
    경로 이름 default-via-nat-spoke-2를 입력합니다.
    대상 형식 IP 주소를 선택합니다.
    대상 IP 주소/CIDR 범위 0.0.0.0/0을 입력합니다.
    다음 홉 유형 가상 어플라이언스를 선택합니다.
    다음 홉 주소 10.0.0.10을 입력합니다.
    이전 단계에서 NVA의 프라이빗 인터페이스에 추가한 IP 주소입니다.
  11. 추가를 선택합니다.

  12. 설정에서 서브넷을 선택합니다.

  13. + 연결을 선택합니다.

  14. 서브넷 연결에서 다음 정보를 입력하거나 선택합니다.

    설정
    가상 네트워크 vnet-spoke-2(test-rg)를 선택합니다.
    서브넷 서브넷-프라이빗을 선택합니다.
  15. 확인을 선택합니다.

스포크 2 테스트 가상 머신 만들기

스포크 2에서 테스트 가상 머신에 사용할 Windows Server 2022 가상 머신을 만듭니다.

  1. 포털 맨 위에 있는 검색 상자에 가상 머신을 입력합니다. 검색 결과에서 가상 머신을 선택합니다.

  2. + 만들기를 선택한 다음 Azure 가상 머신을 선택합니다.

  3. 가상 머신 만들기기본 탭에서 다음 정보를 입력하거나 선택합니다.

    설정
    프로젝트 세부 정보
    Subscription 구독을 선택합니다.
    Resource group test-rg를 선택합니다.
    인스턴스 세부 정보
    가상 머신 이름 vm-spoke-2를 입력합니다.
    지역 미국 서부 2를 선택합니다.
    가용성 옵션 인프라 중복이 필요하지 않습니다.를 선택합니다.
    보안 유형 표준을 선택합니다.
    이미지 Windows Server 2022 Datacenter - x64 Gen2를 선택합니다.
    VM 아키텍처 x64(기본값)를 그대로 둡니다.
    크기 크기를 선택합니다.
    관리자 계정
    인증 유형 암호를 선택합니다.
    사용자 이름 사용자 이름을 입력합니다.
    암호 암호를 입력합니다.
    암호 확인 암호를 다시 입력합니다.
    인바운드 포트 규칙
    공용 인바운드 포트 없음을 선택합니다.
  4. 다음: 디스크를 선택하고 다음: 네트워킹을 선택합니다.

  5. 네트워킹 탭에서 다음 정보를 입력하거나 선택합니다.

    설정
    네트워크 인터페이스
    가상 네트워크 vnet-spoke-2를 선택합니다.
    서브넷 서브넷-프라이빗(10.2.0.0/24)을 선택합니다.
    공용 IP 없음을 선택합니다.
    NIC 네트워크 보안 그룹 추가 고급을 선택합니다.
    네트워크 보안 그룹 구성 새로 만들기를 선택합니다.
    nsg-spoke-2를 입력합니다.
    인바운드 규칙 + 인바운드 규칙 추가를 선택합니다.
    서비스에서 HTTP를 선택합니다.
    추가를 선택합니다.
    확인을 선택합니다.
  6. 나머지 옵션은 기본값으로 두고 검토 + 만들기를 선택합니다.

  7. 만들기를 실행합니다.

스포크 2 테스트 가상 머신에 IIS 설치

IIS는 NAT 게이트웨이를 통해 아웃바운드 인터넷 트래픽을 테스트하고 허브-스포크 네트워크의 스포크 간 트래픽을 테스트하기 위해 Windows Server 2022 가상 머신에 설치됩니다.

  1. 포털 맨 위에 있는 검색 상자에 가상 머신을 입력합니다. 검색 결과에서 가상 머신을 선택합니다.

  2. vm-spoke-2를 선택합니다.

  3. 작업에서 명령 실행을 선택합니다.

  4. RunPowerShellScript를 선택합니다.

  5. 명령 실행 스크립트에 다음 스크립트를 입력합니다.

    # 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)
    
  6. 실행을 선택합니다.

  7. 스크립트가 완료될 때까지 기다렸다가 다음 단계로 진행합니다. 스크립트가 완료되는 데 몇 분 정도 걸릴 수 있습니다.

  8. 스크립트가 완료되면 출력*에 다음이 표시됩니다.

    Success Restart Needed Exit Code      Feature Result                               
    ------- -------------- ---------      --------------                               
    True    No             Success        {Common HTTP Features, Default Document, D...
    

NAT 게이트웨이 테스트

이전 단계에서 만든 Windows Server 2022 가상 머신에 연결하여 아웃바운드 인터넷 트래픽이 NAT 게이트웨이를 벗어나고 있는지 확인합니다.

NAT 게이트웨이 공용 IP 주소 가져오기

문서의 뒷부분에 있는 단계를 확인하려면 NAT 게이트웨이 공용 IP 주소를 가져옵니다.

  1. 포털 맨 위에 있는 검색 상자에 공용 IP를 입력합니다. 검색 결과에서 공용 IP 주소를 선택합니다.

  2. public-ip-nat를 선택합니다.

  3. IP 주소의 값을 기록해 둡니다. 이 문서에 사용된 예시는 52.153.224.79입니다.

스포크 1에서 NAT 게이트웨이 테스트

Windows Server 2022 가상 머신에서 Microsoft Edge를 사용해 https://whatsmyip.com에 연결하여 NAT 게이트웨이의 기능을 확인합니다.

  1. 포털 맨 위에 있는 검색 상자에 가상 머신을 입력합니다. 검색 결과에서 가상 머신을 선택합니다.

  2. vm-spoke-1을 선택합니다.

  3. 작업에서 Bastion을 선택합니다.

  4. 가상 머신을 만들 때 입력한 사용자 이름 및 암호를 입력합니다.

  5. 연결을 선택합니다.

  6. 데스크톱 로드가 완료되면 Microsoft Edge를 엽니다.

  7. 주소 표시줄에 https://whatsmyip.com을 입력합니다.

  8. 표시된 아웃바운드 IP 주소가 이전에 가져온 NAT 게이트웨이의 IP와 동일한지 확인합니다.

    Screenshot of outbound IP address.

  9. 베스천 연결이 vm-spoke-1로 열린 상태로 둡니다.

스포크 2에서 NAT 게이트웨이 테스트

Windows Server 2022 가상 머신에서 Microsoft Edge를 사용해 https://whatsmyip.com에 연결하여 NAT 게이트웨이의 기능을 확인합니다.

  1. 포털 맨 위에 있는 검색 상자에 가상 머신을 입력합니다. 검색 결과에서 가상 머신을 선택합니다.

  2. vm-spoke-2를 선택합니다.

  3. 작업에서 Bastion을 선택합니다.

  4. 가상 머신을 만들 때 입력한 사용자 이름 및 암호를 입력합니다.

  5. 연결을 선택합니다.

  6. 데스크톱 로드가 완료되면 Microsoft Edge를 엽니다.

  7. 주소 표시줄에 https://whatsmyip.com을 입력합니다.

  8. 표시된 아웃바운드 IP 주소가 이전에 가져온 NAT 게이트웨이의 IP와 동일한지 확인합니다.

    Screenshot of outbound IP address.

  9. 베스천 연결이 vm-spoke-2로 열린 상태로 둡니다.

스포크 간 라우팅 테스트

스포크 1에서 스포크 2로의 트래픽과 스포크 2에서 스포크 1로의 트래픽은 허브 가상 네트워크에서 시뮬레이션된 NVA를 통해 라우팅됩니다. 다음 예제를 사용하여 허브-스포크 네트워크의 스포크 간 라우팅을 확인합니다.

스포크 1에서 스포크 2로의 라우팅 테스트

Microsoft Edge를 사용하여 이전 단계에서 설치한 vm-spoke-2의 웹 서버에 연결합니다.

  1. vm-spoke-1로 열려 있는 베스천 연결로 돌아갑니다.

  2. Microsoft Edge가 열려 있지 않으면 지금 엽니다.

  3. 주소 표시줄에 10.2.0.4를 입력합니다.

  4. IIS 페이지가 vm-spoke-2에서 표시되는지 확인합니다.

    Screenshot of default IIS page on vm-spoke-1.

  5. vm-spoke-1에 대한 베스천 연결을 닫습니다.

스포크 2에서 스포크 1로의 라우팅 테스트

Microsoft Edge를 사용하여 이전 단계에서 설치한 vm-spoke-1의 웹 서버에 연결합니다.

  1. vm-spoke-2로 열려 있는 베스천 연결로 돌아갑니다.

  2. Microsoft Edge가 열려 있지 않으면 지금 엽니다.

  3. 주소 표시줄에 10.1.0.4를 입력합니다.

  4. IIS 페이지가 vm-spoke-1에서 표시되는지 확인합니다.

    Screenshot of default IIS page on vm-spoke-2.

  5. vm-spoke-1에 대한 베스천 연결을 닫습니다.

리소스 정리

만든 리소스 사용을 마치면 리소스 그룹 및 모든 해당 리소스를 삭제할 수 있습니다.

  1. Azure Portal에서 리소스 그룹을 검색하고 선택합니다.

  2. 리소스 그룹 페이지에서 test-rg 리소스 그룹을 선택합니다.

  3. test-rg 페이지에서 리소스 그룹 삭제를 선택합니다.

  4. 리소스 그룹 이름 입력에 test-rg를 입력하여 삭제를 확인한 다음 삭제를 선택합니다.

다음 단계

다음 문서로 이동하여 고가용성 네트워크 가상 어플라이언스에 Azure Gateway Load Balancer를 사용하는 방법을 알아봅니다.