다음을 통해 공유


사이트 및 사이트 간의 VPN 연결 만들기 - Azure PowerShell

이 문서에서는 PowerShell을 사용하여 온-프레미스 네트워크에서 VNet(가상 네트워크)으로의 사이트-사이트 VPN 게이트웨이 연결을 만드는 방법을 보여 줍니다.

사이트 간 VPN 게이트웨이 연결은 IPsec/IKE(IKEv1 또는 IKEv2) VPN 터널을 통해 온-프레미스 네트워크를 Azure 가상 네트워크에 연결하는 데 사용됩니다. 이 연결 유형은 할당된 외부 연결 공용 IP 주소를 갖고 있는 온-프레미스에 있는 VPN 디바이스를 필요로 합니다. 이 문서의 단계에서는 공유 키를 사용하여 VPN 게이트웨이와 온-프레미스 VPN 디바이스 간에 연결을 만듭니다. VPN Gateway에 대한 자세한 내용은 VPN Gateway 정보를 참조하세요.

사이트 간 VPN Gateway 크로스-프레미스 연결의 다이어그램

시작하기 전에

구성을 시작하기 전에 환경이 다음 조건을 충족하는지 확인합니다.

  • 작동하는 경로 기반 VPN 게이트웨이가 있는지 확인합니다. VPN 게이트웨이를 만들려면 VPN 게이트웨이 만들기를 참조 하세요.

  • 온-프레미스 네트워크에 있는 IP 주소 범위에 익숙하지 않은 경우 세부 정보를 제공할 수 있는 다른 사람의 도움을 받아야 합니다. 이 구성을 만들 때 Azure가 온-프레미스 위치로 라우팅하는 IP 주소 범위 접두사를 지정해야 합니다. 온-프레미스 네트워크의 어떤 서브넷도 사용자가 연결하려는 가상 네트워크 서브넷과 중첩될 수 없습니다.

  • VPN 디바이스:

    • 호환되는 VPN 디바이스 및 이 디바이스를 구성할 수 있는 사람이 있는지 확인합니다. 호환되는 VPN 디바이스 및 디바이스 구성에 대한 자세한 내용은 VPN 디바이스 정보를 참조하세요.
    • VPN 디바이스가 활성-활성 모드 게이트웨이를 지원하는지 확인합니다. 이 문서에서는 고가용성 연결에 권장되는 활성-활성 모드 VPN Gateway를 만듭니다. 활성-활성 모드는 두 게이트웨이 VM 인스턴스가 모두 활성 상태임을 지정합니다. 이 모드에는 각 게이트웨이 VM 인스턴스에 대해 하나씩 두 개의 공용 IP 주소가 필요합니다. VPN 디바이스를 구성하여 각 게이트웨이 VM 인스턴스의 IP 주소에 연결하도록 합니다.
      VPN 디바이스가 이 모드를 지원하지 않으면 게이트웨이에 대해 이 모드를 사용하도록 설정하지 마세요. 자세한 내용은 프레미스 간 및 VNet 간 연결을 위한 고가용성 연결 디자인활성-활성 모드 VPN Gateway 정보를 참조하세요.

Azure PowerShell

이 문서에서는 PowerShell cmdlet을 사용합니다. cmdlet을 실행하려면 Azure Cloud Shell을 사용할 수 있습니다. Cloud Shell은 이 문서의 단계를 실행하는 데 무료로 사용할 수 있는 대화형 셸입니다. 공용 Azure 도구가 사전 설치되어 계정에서 사용하도록 구성되어 있습니다.

Cloud Shell을 열려면 코드 블록의 오른쪽 위 모서리에 있는 Cloudshell 열기를 선택하기만 하면 됩니다. 또한 https://shell.azure.com/powershell로 이동하여 별도의 브라우저 탭에서 Cloud Shell을 열 수도 있습니다. 복사를 선택하여 코드 블록을 복사하고 Cloud Shell에 붙여넣고 Enter 키를 선택하여 실행합니다.

또한 Azure PowerShell cmdlet을 컴퓨터에 로컬로 설치하고 실행할 수도 있습니다. PowerShell cmdlet은 자주 업데이트됩니다. 최신 버전을 설치하지 않은 경우 지침에 지정된 값이 실패할 수 있습니다. 컴퓨터에 설치된 Azure PowerShell 버전을 찾으려면 Get-Module -ListAvailable Az cmdlet을 사용하세요. 설치하거나 업데이트하려면 Azure PowerShell 모듈 설치를 참조하세요.

로컬 네트워크 게이트웨이 만들기

LNG(로컬 네트워크 게이트웨이)는 일반적으로 온-프레미스 위치를 가리킵니다. 가상 네트워크 게이트웨이와 동일하지 않습니다. Azure가 참조할 수 있는 사이트 이름을 지정한 다음, 연결을 만들 온-프레미스 VPN 디바이스의 IP 주소를 지정합니다. 또한 VPN 게이트웨이를 통해 VPN 디바이스로 라우팅될 IP 주소 접두사를 지정합니다. 사용자가 지정하는 주소 접두사는 온-프레미스 네트워크에 있는 접두사입니다. 온-프레미스 네트워크가 변경되면 이러한 접두사를 쉽게 업데이트할 수 있습니다.

다음 예제 중 하나를 선택합니다. 예제에 사용된 값은 다음과 같습니다.

  • GatewayIPAddress는 Azure VPN Gateway가 아닌 온-프레미스 VPN 디바이스의 IP 주소입니다.
  • AddressPrefix는 온-프레미스 주소 공간입니다.

단일 주소 접두사 예제

New-AzLocalNetworkGateway -Name Site1 -ResourceGroupName TestRG1 `
-Location 'East US' -GatewayIpAddress '[IP address of your on-premises VPN device]' -AddressPrefix '10.0.0.0/24'

여러 주소 접두사 예제

New-AzLocalNetworkGateway -Name Site1 -ResourceGroupName TestRG1 `
-Location 'East US' -GatewayIpAddress '[IP address of your on-premises VPN device]' -AddressPrefix @('10.3.0.0/16','10.0.0.0/24')

VPN 디바이스 구성

온-프레미스 네트워크에 대한 사이트 간 연결에는 VPN 디바이스가 필요합니다. 이 단계에서는 VPN 디바이스를 구성합니다. VPN 디바이스를 구성할 때 다음 항목이 필요합니다.

  • 공유 키: 이 공유 키는 사이트 간 VPN 연결을 만들 때 지정하는 공유 키와 동일한 공유 키입니다. 예에서는 간단한 공유 키를 사용했습니다. 실제로 사용할 키는 좀 더 복잡하게 생성하는 것이 좋습니다.

  • 가상 네트워크 게이트웨이 인스턴스의 공용 IP 주소: 각 VM 인스턴스의 IP 주소를 가져옵니다. 게이트웨이가 활성-활성 모드인 경우 게이트웨이 VM 인스턴스마다 IP 주소가 있습니다. 각 활성 게이트웨이 VM에 대해 하나씩, 총 두 개의 IP 주소로 디바이스를 구성해야 합니다. 활성-대기 모드 게이트웨이에는 IP 주소가 하나만 있습니다. 이 예제에서 VNet1GWpip1은 공용 IP 주소 리소스의 이름입니다.

    Get-AzPublicIpAddress -Name VNet1GWpip1 -ResourceGroupName TestRG1
    

사용하고 있는 VPN 디바이스에 따라 VPN 디바이스 구성 스크립트를 다운로드할 수 있습니다. 자세한 내용은 VPN 디바이스 구성 스크립트 다운로드를 참조하세요.

다음 링크는 추가 구성 정보를 제공합니다.

VPN 연결 만들기

가상 네트워크 게이트웨이와 온-프레미스 VPN 디바이스 사이의 사이트 간 VPN 연결을 만듭니다. 활성-활성 모드 게이트웨이를 사용하는 경우(권장) 각 게이트웨이 VM 인스턴스에는 별도의 IP 주소가 있습니다. 고가용성 연결을 올바르게 구성하려면 각 VM 인스턴스와 VPN 디바이스 간에 터널을 설정해야 합니다. 두 터널은 같은 연결의 일부입니다.

공유 키는 VPN 디바이스 구성에 사용한 값과 일치해야 합니다. 사이트 간 '-ConnectionType'은 IPsec입니다.

  1. 변수를 설정합니다.

    $gateway1 = Get-AzVirtualNetworkGateway -Name VNet1GW -ResourceGroupName TestRG1
    $local = Get-AzLocalNetworkGateway -Name Site1 -ResourceGroupName TestRG1
    
  2. 연결을 만듭니다.

    New-AzVirtualNetworkGatewayConnection -Name VNet1toSite1 -ResourceGroupName TestRG1 `
    -Location 'East US' -VirtualNetworkGateway1 $gateway1 -LocalNetworkGateway2 $local `
    -ConnectionType IPsec -SharedKey 'abc123'
    

VPN 연결 확인

VPN 연결을 확인하는 몇 가지 방법이 있습니다.

‘-Debug’를 사용하거나 사용하지 않고 ‘Get-AzVirtualNetworkGatewayConnection’ cmdlet을 사용하여 연결이 성공했는지 확인할 수 있습니다.

  1. 일치하는 값을 구성하는 데 다음 cmdlet 예제를 사용합니다. 메시지가 표시되면 '모두' 실행하기 위해 A를 선택합니다. 예제에서 '-Name'은 테스트하려는 연결의 이름을 나타냅니다.

    Get-AzVirtualNetworkGatewayConnection -Name VNet1toSite1 -ResourceGroupName TestRG1
    
  2. cmdlet이 완료되면 값을 봅니다. 아래 예제에서는 연결 상태가 '연결됨'으로 표시되고 송/수신 바이트를 볼 수 있습니다.

    "connectionStatus": "Connected",
    "ingressBytesTransferred": 33509044,
    "egressBytesTransferred": 4142431
    

로컬 네트워크 게이트웨이에 대한 IP 주소 접두사를 수정하려면

온-프레미스 위치에 라우팅하려는 IP 주소 접두사를 변경하는 경우 로컬 네트워크 게이트웨이를 수정할 수 있습니다. 이러한 예제를 사용하는 경우 사용자 환경과 일치하도록 값을 수정합니다.

주소 접두사를 더 추가하려면 다음을 수행합니다.

  1. LocalNetworkGateway에 대한 변수를 설정합니다.

    $local = Get-AzLocalNetworkGateway -Name Site1 -ResourceGroupName TestRG1
    
  2. 접두사를 수정합니다. 지정한 값은 이전 값을 덮어씁니다.

    Set-AzLocalNetworkGateway -LocalNetworkGateway $local `
    -AddressPrefix @('10.101.0.0/24','10.101.1.0/24','10.101.2.0/24')
    

주소 접두사를 제거하려면:

더 이상 필요하지 않은 접두사는 생략합니다. 이 예제에서는 이전 예제의 접두사 10.101.2.0/24가 더 이상 필요하지 않으므로 로컬 네트워크 게이트웨이를 업데이트하고 해당 접두사를 제외합니다.

  1. LocalNetworkGateway에 대한 변수를 설정합니다.

    $local = Get-AzLocalNetworkGateway -Name Site1 -ResourceGroupName TestRG1
    
  2. 업데이트된 접두사를 사용하는 게이트웨이를 설정합니다.

    Set-AzLocalNetworkGateway -LocalNetworkGateway $local `
    -AddressPrefix @('10.101.0.0/24','10.101.1.0/24')
    

로컬 네트워크 게이트웨이에 대한 IP 주소를 수정하려면

VPN 디바이스의 공용 IP 주소를 변경하는 경우 업데이트된 IP 주소로 로컬 네트워크 게이트웨이를 수정해야 합니다. 이 값을 수정할 때 주소 접두사를 함께 수정할 수도 있습니다. 수정할 때는 로컬 네트워크 게이트웨이의 기존 이름을 사용해야 합니다. 다른 이름을 사용하는 경우 기존 게이트웨이 정보를 덮어쓰는 대신 새 로컬 네트워크 게이트웨이를 만듭니다.

New-AzLocalNetworkGateway -Name Site1 `
-Location "East US" -AddressPrefix @('10.101.0.0/24','10.101.1.0/24') `
-GatewayIpAddress "5.4.3.2" -ResourceGroupName TestRG1

게이트웨이 연결 삭제

연결의 이름을 모르는 경우 ‘Get-AzVirtualNetworkGatewayConnection’ cmdlet을 사용하여 찾을 수 있습니다.

Remove-AzVirtualNetworkGatewayConnection -Name VNet1toSite1 `
-ResourceGroupName TestRG1

다음 단계