Övning – Skapa en VPN-gateway för plats-till-plats med hjälp av Azure CLI-kommandon

Slutförd

Nu är du redo att slutföra konfigurationen av din VPN-gateway för plats-till-plats genom att skapa de offentliga IP-adresserna, de virtuella nätverksgatewayerna och anslutningarna. Kom ihåg att du använde platshållare för de offentliga IP-adressreferenserna när du skapade dina lokala nätverksgatewayer. En av dina uppgifter nu är därför att uppdatera dessa gatewayer med de faktiska offentliga IP-adresserna som har tilldelats till dina virtuella nätverksgatewayer.

Vi rekommenderar att du skapar de offentliga IP-adresserna och virtuella nätverksgatewayerna innan du skapar de lokala nätverksgatewayerna. I den här övningen ser du hur du uppdaterar de lokala nätverksgatewayerna. Du kan använda samma kommandon för att uppdatera konfigurationselement i de lokala nätverksgatewayerna, till exempel adressutrymmen för ett fjärrnätverk.

Skapa VPN-gatewayen på Azure-sidan

Först skapar du VPN-gatewayen för Azure-anslutningens slut. Det kan ta upp till 45 minuter att skapa en virtuell nätverksgateway. För att spara tid använder du Azure CLI-kommandon med parametern --no-wait . Med den här parametern kan du skapa båda de virtuella nätverksgatewayerna samtidigt för att minimera den totala tid som krävs för att skapa dessa resurser.

  1. Kör följande kommando i Cloud Shell för att skapa den offentliga IP-adressen PIP-VNG-Azure-VNet-1 .

    az network public-ip create \
        --resource-group <rgn>[sandbox resource group name]</rgn> \
        --name PIP-VNG-Azure-VNet-1 \
        --allocation-method Static
    
  2. Kör följande kommando i Cloud Shell för att skapa det virtuella nätverket VNG-Azure-VNet-1 .

    az network vnet create \
        --resource-group <rgn>[sandbox resource group name]</rgn> \
        --name VNG-Azure-VNet-1 \
        --subnet-name GatewaySubnet 
    
  3. Kör följande kommando i Cloud Shell för att skapa den virtuella nätverksgatewayen VNG-Azure-VNet-1 .

    az network vnet-gateway create \
        --resource-group <rgn>[sandbox resource group name]</rgn> \
        --name VNG-Azure-VNet-1 \
        --public-ip-addresses PIP-VNG-Azure-VNet-1 \
        --vnet VNG-Azure-VNet-1 \
        --gateway-type Vpn \
        --vpn-type RouteBased \
        --sku VpnGw1 \
        --no-wait
    

Skapa den lokala VPN-gatewayen

Sedan skapar du en VPN-gateway för att simulera en lokal VPN-enhet.

  1. Kör följande kommando i Cloud Shell för att skapa den offentliga IP-adressen PIP-VNG-HQ-Network .

    az network public-ip create \
        --resource-group <rgn>[sandbox resource group name]</rgn> \
        --name PIP-VNG-HQ-Network \
        --allocation-method Static
    
  2. Kör följande kommando i Cloud Shell för att skapa det virtuella nätverket VNG-HQ-Network .

    az network vnet create \
        --resource-group <rgn>[sandbox resource group name]</rgn> \
        --name VNG-HQ-Network \
        --subnet-name GatewaySubnet 
    
  3. Kör följande kommando i Cloud Shell för att skapa den virtuella nätverksgatewayen VNG-HQ-Network .

    az network vnet-gateway create \
        --resource-group <rgn>[sandbox resource group name]</rgn> \
        --name VNG-HQ-Network \
        --public-ip-addresses PIP-VNG-HQ-Network \
        --vnet VNG-HQ-Network \
        --gateway-type Vpn \
        --vpn-type RouteBased \
        --sku VpnGw1 \
        --no-wait
    
  4. Det tar cirka 30 minuter att skapa gatewayen. Kör följande kommando för att övervaka förloppet för att skapa gatewayen. Vi använder Linux-kommandot watch för att köra az network vnet-gateway list kommandot med jämna mellanrum, vilket gör att du kan övervaka förloppet.

    watch -d -n 5 az network vnet-gateway list \
        --resource-group <rgn>[sandbox resource group name]</rgn> \
        --output table
    
  5. När varje VPN-gateway visar ProvisioningState lyckades är du redo att fortsätta. Tryck på Ctrl + C för att stoppa kommandot när gatewayen har skapats.

    ActiveActive    EnableBgp    EnablePrivateIpAddress   GatewayType    Location        Name              ProvisioningState    ResourceGroup                         ResourceGuid                          VpnType
    --------------  -----------  ------------------------ -------------  --------------  ----------------  -------------------  -----------------------------  ------------------------------------  ----------
    False           False        False                    Vpn            southcentralus  VNG-Azure-VNet-1  Succeeded            <rgn>[sandbox resource group name]</rgn>  48dc714e-a700-42ad-810f-a8163ee8e001  RouteBased
    False           False        False                    Vpn            southcentralus  VNG-HQ-Network    Succeeded            <rgn>[sandbox resource group name]</rgn>  49b3041d-e878-40d9-a135-58e0ecb7e48b  RouteBased
    

Uppdatera IP-adressreferenserna för de lokala nätverksgatewayerna

Viktigt!

De virtuella nätverksgatewayerna måste distribueras innan du kan fortsätta med den här övningen. Det kan ta upp till 30 minuter att slutföra en gateway. Om ProvisioningState inte visar "Lyckades" ännu måste du vänta.

I det här avsnittet uppdaterar du ip-adressreferenserna för fjärrgatewayen som definieras i de lokala nätverksgatewayerna. Du kan inte uppdatera de lokala nätverksgatewayerna förrän du har skapat VPN-gatewayerna och en IPv4-adress har tilldelats och associerats med dem.

  1. Kör följande Azure CLI-kommando för att kontrollera om båda de virtuella nätverksgatewayerna har skapats. Det inledande tillståndet visar Uppdatering. Du vill se Lyckades på både VNG-Azure-VNet-1 och VNG-HQ-Network.

    az network vnet-gateway list \
        --resource-group <rgn>[sandbox resource group name]</rgn> \
        --output table
    
    Name              Location    GatewayType    VpnType     VpnGatewayGeneration    EnableBgp    EnablePrivateIpAddress    Active    ResourceGuid                        ProvisioningState    ResourceGroup
    ----------------  ----------  -------------  ----------  ----------------------  -----------  ------------------------  --------  ------------------------------------  -------------------  ------------------------------------------
    VNG-Azure-VNet-1  westus      Vpn            RouteBased  Generation1         False        False                     False     9a2e60e6-da57-4274-99fd-e1f8b2c0326d  Succeeded            learn-cfbcca66-16fd-423e-b688-66f242d8f09e
    VNG-HQ-Network    westus      Vpn            RouteBased  Generation1         False        False                     False     c36430ed-e6c0-4230-ae40-cf937a102bcd  Succeeded            learn-cfbcca66-16fd-423e-b688-66f242d8f09e
    

    Kom ihåg att vänta tills listan med gatewayer har returnerats. Tänk också på att resurserna för de lokala nätverksgatewayerna definierar inställningarna för fjärrgatewayen och de nätverk som deras namn baseras på. Exempelvis innehåller den lokala nätverksgatewayen LNG-Azure-VNet-1 information som till exempel IP-adress och nätverk för Azure-VNet-1.

  2. Kör följande kommando i Cloud Shell för att hämta IPv4-adressen som tilldelats PIP-VNG-Azure-VNet-1 och lagra den i en variabel.

    PIPVNGAZUREVNET1=$(az network public-ip show \
        --resource-group <rgn>[sandbox resource group name]</rgn> \
        --name PIP-VNG-Azure-VNet-1 \
        --query "[ipAddress]" \
        --output tsv)
    
  3. Kör följande kommando i Cloud Shell för att uppdatera den lokala nätverksgatewayen LNG-Azure-VNet-1 så att den pekar på den offentliga IP-adressen som är kopplad till den virtuella nätverksgatewayen VNG-Azure-VNet-1 .

    az network local-gateway update \
        --resource-group <rgn>[sandbox resource group name]</rgn> \
        --name LNG-Azure-VNet-1 \
        --gateway-ip-address $PIPVNGAZUREVNET1
    
  4. Kör följande kommando i Cloud Shell för att hämta IPv4-adressen som tilldelats PIP-VNG-HQ-Network och lagra den i en variabel.

    PIPVNGHQNETWORK=$(az network public-ip show \
        --resource-group <rgn>[sandbox resource group name]</rgn> \
        --name PIP-VNG-HQ-Network \
        --query "[ipAddress]" \
        --output tsv)
    
  5. Kör följande kommando i Cloud Shell för att uppdatera den lokala nätverksgatewayen LNG-HQ-Network så att den pekar på den offentliga IP-adressen som är kopplad till den virtuella nätverksgatewayen VNG-HQ-Network .

    az network local-gateway update \
        --resource-group <rgn>[sandbox resource group name]</rgn> \
        --name LNG-HQ-Network \
        --gateway-ip-address $PIPVNGHQNETWORK
    

Skapa anslutningarna

Du slutför konfigurationen genom att skapa anslutningarna från varje VPN-gateway till den lokala nätverksgatewayen som innehåller referenserna till den offentliga IP-adressen för gatewayens fjärrnätverk.

  1. Skapa den delade nyckel som ska användas för anslutningarna. I följande kommando ersätter du <shared key> med en textsträng som ska användas för den i förväg delade IPSec-nyckeln. Den i förväg delade nyckeln är en sträng med utskrivbara ASCII-tecken som inte är längre än 128 tecken. Den får inte innehålla specialtecken, till exempel bindestreck och tildes. Du använder den här i förväg delade nyckeln för båda anslutningarna.

    Kommentar

    I det här exemplet fungerar alla nummeruppsättningar för en delad nyckel: SHAREDKEY=123456789. I produktionsmiljöer rekommenderar vi att du använder en sträng med utskrivbara ASCII-tecken som inte är längre än 128 tecken utan specialtecken, till exempel bindestreck eller tildes.

    SHAREDKEY=<shared key>
    
  2. Kom ihåg att LNG-HQ-Network innehåller en referens till IP-adressen för den simulerade lokala VPN-enheten. Kör följande kommando i Cloud Shell för att skapa en anslutning från VNG-Azure-VNet-1 till LNG-HQ-Network.

    az network vpn-connection create \
        --resource-group <rgn>[sandbox resource group name]</rgn> \
        --name Azure-VNet-1-To-HQ-Network \
        --vnet-gateway1 VNG-Azure-VNet-1 \
        --shared-key $SHAREDKEY \
        --local-gateway2 LNG-HQ-Network
    
  3. Kom ihåg att LNG-Azure-VNet-1 innehåller en referens till den offentliga IP-adressen som är associerad med VPN-gatewayen VNG-Azure-VNet-1. Den här anslutningen skapas normalt från den lokala enheten. Kör följande kommando i Cloud Shell för att skapa en anslutning från VNG-HQ-Network till LNG-Azure-VNet-1.

    az network vpn-connection create \
        --resource-group <rgn>[sandbox resource group name]</rgn> \
        --name HQ-Network-To-Azure-VNet-1  \
        --vnet-gateway1 VNG-HQ-Network \
        --shared-key $SHAREDKEY \
        --local-gateway2 LNG-Azure-VNet-1
    

Nu har du slutfört konfigurationen av plats-till-plats-anslutningen. Det kan ta några minuter, men tunnlarna bör ansluta automatiskt och bli aktiva.

Verifieringssteg

Vi bekräftar att VPN-tunnlarna är anslutna.

  1. Kör följande kommando för att bekräfta att Azure-VNet-1-To-HQ-Network är anslutet.

    az network vpn-connection show \
        --resource-group <rgn>[sandbox resource group name]</rgn> \
        --name Azure-VNet-1-To-HQ-Network  \
        --output table \
        --query '{Name:name,ConnectionStatus:connectionStatus}'
    

    Du bör se utdata som följande, vilket indikerar att anslutningen lyckades. Om visas ConnectionStatus som Connecting eller Unknownväntar du en minut eller två och kör kommandot igen. Anslutningarna kan ta några minuter.

    Name                        ConnectionStatus
    --------------------------  ------------------
    Azure-VNet-1-To-HQ-Network  Connected
    

Plats-till-plats-konfigurationen är nu klar. Den sista topologin, inklusive undernäten och anslutningarna med logiska anslutningspunkter, visas i följande diagram. Virtuella datorer som distribueras i tjänsterna och programmens undernät kan nu kommunicera med varandra när VPN-anslutningarna har upprättats.

Diagram över resurser som distribuerats under övningen i enhet 4.