Skapa ett virtuellt nätverk med en VPN-anslutning från plats till plats med CLI

Den här artikeln visar hur du kan använda Azure CLI för att skapa en VPN-gatewayanslutning från plats till plats från ditt lokala nätverk till det virtuella nätverket. Stegen i den här artikeln gäller för Resource Manager distributionsmodellen. Du kan också skapa den här konfigurationen med ett annat distributionsverktyg eller en annan distributionsmodell genom att välja ett annat alternativ i listan nedan:

Diagram över plats-till-plats-anslutning med VPN Gateway

En VPN-gatewayanslutning från plats till plats används för att ansluta ditt lokala nätverk till ett virtuellt Azure-nätverk via en IPsec/IKE VPN-tunnel (IKEv1 eller IKEv2). Den här typen av anslutning kräver en lokal VPN-enhet som tilldelats till en extern offentlig IP-adress. Mer information om VPN-gatewayer finns i Om VPN-gateway.

Innan du börjar

Kontrollera att du har uppfyllt följande villkor innan du påbörjar konfigurationen:

  • Kontrollera att du har en kompatibel VPN-enhet och någon som kan konfigurera den. Se Om VPN-enheter för mer information om kompatibla VPN-enheter och enhetskonfiguration.
  • Kontrollera att du har en extern offentlig IPv4-adress för VPN-enheten.
  • Om du inte vet vilka IP-adressintervaller som används i din lokala nätverkskonfiguration kontaktar du relevant person som kan ge dig den här informationen. När du skapar den här konfigurationen måste du ange prefix för IP-adressintervall som Azure dirigerar till den lokala platsen. Inget av undernäten i ditt lokala nätverk kan överlappa de virtuella nätverksundernät du vill ansluta till.
  • Den här artikeln kräver version 2.0 eller senare av Azure CLI. Om du använder Azure Cloud Shell är den senaste versionen redan installerad.

Exempelvärden

Du kan använda följande värden till att skapa en testmiljö eller hänvisa till dem för att bättre förstå exemplen i den här artikeln.

#Example values

VnetName                = TestVNet1 
ResourceGroup           = TestRG1 
Location                = eastus 
AddressSpace            = 10.11.0.0/16 
SubnetName              = Subnet1 
Subnet                  = 10.11.0.0/24 
GatewaySubnet           = 10.11.255.0/27 
LocalNetworkGatewayName = Site2 
LNG Public IP           = <VPN device IP address>
LocalAddrPrefix1        = 10.0.0.0/24
LocalAddrPrefix2        = 20.0.0.0/24   
GatewayName             = VNet1GW 
PublicIP                = VNet1GWIP 
VPNType                 = RouteBased 
GatewayType             = Vpn 
ConnectionName          = VNet1toSite2

1. Anslut till din prenumeration

Om du väljer att köra CLI lokalt ansluter du till din prenumeration. Om du använder Azure Cloud Shell i webbläsaren behöver du inte ansluta till din prenumeration. Du ansluter automatiskt i Azure Cloud Shell. Du kanske dock vill kontrollera att du använder rätt prenumeration när du har anslutit.

Logga in på Azure-prenumerationen med kommandot az login och följ anvisningarna på skärmen. Mer information om att logga in finns i Kom igång med Azure CLI.

az login

Om du har fler än en Azure-prenumeration anger du prenumerationerna för kontot.

az account list --all

Ange den prenumeration som du vill använda.

az account set --subscription <replace_with_your_subscription_id>

2. Skapa en resursgrupp

I följande exempel skapas en resursgrupp med namnet ”TestRG1” på platsen ”eastus”. Om du redan har en resursgrupp i regionen där du vill skapa ditt virtuella nätverk kan du använda den i stället.

az group create --name TestRG1 --location eastus

3. Skapa ett virtuellt nätverk

Om du inte redan har ett virtuellt nätverk skapar du ett med kommandot az network vnet create. När du skapar ett virtuellt nätverk ska du kontrollera att de adressutrymmen du anger inte överlappar några adressutrymmen som du har i det lokala nätverket.

Anteckning

För att detta VNet ska anslutas till en lokal plats måste du kontakta den lokala nätverksadministratören för att få ett intervall med IP-adresser som du kan använda specifikt för det här virtuella nätverket. Om det finns ett duplicerat adressintervall på båda sidorna av VPN-anslutningen dirigeras inte trafiken som du förväntar dig. Om du dessutom vill ansluta detta VNet till ett annat VNet kan inte adressutrymmet överlappa med andra VNet. Var noga med att planera din nätverkskonfiguration på lämpligt sätt.

I följande exempel skapas ett virtuellt nätverk med namnet ”TestVNet1” och ett undernät, ”Subnet1”.

az network vnet create --name TestVNet1 --resource-group TestRG1 --address-prefix 10.11.0.0/16 --location eastus --subnet-name Subnet1 --subnet-prefix 10.11.0.0/24

4. Skapa gatewayundernätet

Den virtuella nätverksgatewayen använder specifika undernät som kallas gateway-undernät. Gateway-undernätet ingår i det virtuella nätverkets IP-adressintervall som du anger när du konfigurerar det virtuella nätverket. Det innehåller de IP-adresser som gateway-resurserna och tjänsterna för det virtuella nätverket använder. Undernätet måste ha namnet ”GatewaySubnet' för att Azure ska kunna distribuera gateway-resurserna. Du kan inte ange ett annat undernät som gateway-resurserna ska distribueras till. Om du inte har ett undernät med namnet GatewaySubnet, kommer du inte kunna skapa din VPN-gateway.

När du skapar gatewayundernätet anger du det antal IP-adresser som undernätet innehåller. Hur många IP-adresser som behövs beror på vilken konfiguration av VPN-gatewayen som du vill skapa. Vissa konfigurationer kräver fler IP-adresser än andra. Vi rekommenderar att du skapar ett gateway-undernät som använder /27 eller /28.

Kontrollera ditt VNet-adressintervall om du ser ett fel som anger att adressutrymmet överlappar ett undernät, eller att undernätet inte ligger inom adressutrymmet för det virtuella nätverket. Du kanske inte har tillräckligt med tillgängliga IP-adresser i adressintervallet som du har skapat för ditt virtuella nätverk. Till exempel om ditt standardundernät omfattar hela adressintervallet, finns det inga IP-adresser kvar till att skapa extra undernät. Du kan antingen justera dina undernät i det befintliga adressutrymmet för att frigöra IP-adresser, eller ange ett ytterligare adressintervall och skapa gateway-undernätet där.

Använd kommandot az network vnet subnet create för att skapa ett gateway-undernätet.

az network vnet subnet create --address-prefix 10.11.255.0/27 --name GatewaySubnet --resource-group TestRG1 --vnet-name TestVNet1

Viktigt

När du arbetar med gateway-undernät, bör du undvika att associera en nätverkssäkerhetsgrupp (NSG) till gateway-undernätet. Om du kopplar en nätverkssäkerhetsgrupp till det här undernätet kan din virtuella nätverksgateway (VPN- och Express Route-gatewayer) sluta fungera som förväntat. Mer information om nätverkssäkerhetsgrupper finns i Vad är en nätverkssäkerhetsgrupp?.

5. Skapa den lokala nätverksgatewayen

Den lokala nätverksgatewayen avser vanligtvis din lokala plats. Du namnger webbplatsen så att Azure kan referera till den och sedan anger du IP-adressen för den lokala VPN-enhet som du skapar en anslutning till. Du anger också IP-adressprefixen som ska dirigeras via VPN-gatewayen till VPN-enheten. Adressprefixen du anger är de prefix som finns på det lokala nätverket. Det är enkelt att uppdatera dessa prefix om det lokala nätverket ändras.

Använd följande värden:

  • --gateway-ip-address är IP-adressen till den lokala VPN-enheten.
  • --local-address-prefixes är dina lokala adressutrymmen.

Använd kommandot az network local-gateway create för att lägga till en lokal nätverksgateway med flera adressprefix:

az network local-gateway create --gateway-ip-address 23.99.221.164 --name Site2 --resource-group TestRG1 --local-address-prefixes 10.0.0.0/24 20.0.0.0/24

6. Begär en offentlig IP-adress

En VPN-gateway måste ha en offentlig IP-adress. Först begär du IP-adressresursen och sedan hänvisar du till den när du skapar din virtuella nätverksgateway. IP-adressen tilldelas dynamiskt till resursen när en VPN-gateway har skapats. VPN Gateway stöder för närvarande endast dynamisk offentlig IP-adressallokering. Du kan inte begära en statisk offentlig IP-adresstilldelning. Det innebär emellertid inte att IP-adressen ändras när den har tilldelats din VPN-gateway. Den enda gången den offentliga IP-adressen ändras är när gatewayen tas bort och återskapas. Den ändras inte vid storleksändring, återställning eller annat internt underhåll/uppgraderingar av din VPN-gateway.

Använd kommandot az network public-ip create för att begära en dynamisk offentlig IP-adress.

az network public-ip create --name VNet1GWIP --resource-group TestRG1 --allocation-method Dynamic

7. Skapa VPN-gatewayen

Skapa den virtuella VPN-nätverksgatewayen. Att skapa en gateway kan ofta ta 45 minuter eller mer, beroende på vald gateway-SKU.

Använd följande värden:

  • --gateway-type för en plats-till-plats-konfiguration är Vpn. Gateway-typen gäller alltid den konfiguration som du implementerar. Se Gatewaytyper för mer information.
  • Vpn-typen kan vara RouteBased (kallas dynamisk gateway i viss dokumentation) eller PolicyBased (kallas för en statisk gateway i någon dokumentation). Inställningen gäller krav på den enhet som du ansluter till. Mer information om VPN Gateway-typer finns i Om konfigurationsinställningar för VPN Gateway.
  • Markera den gateway SKU som du vill använda. Det finns konfigurationsbegränsningar för vissa SKU:er. Se Gateway SKU:er för mer information.

Skapa en VPN-gateway med kommandot az network vnet-gateway create. Om du kör det här kommandot med parametern ”--no-wait” ser du ingen feedback eller utdata. Den här parametern gör att gatewayen kan skapas i bakgrunden. Det tar 45 minuter eller mer att skapa en gateway.

az network vnet-gateway create --name VNet1GW --public-ip-address VNet1GWIP --resource-group TestRG1 --vnet TestVNet1 --gateway-type Vpn --vpn-type RouteBased --sku VpnGw1 --no-wait 

8. Konfigurera VPN-enheten

Plats-till-plats-anslutningar till ett lokalt nätverk kräver en VPN-enhet. I det här steget konfigurerar du VPN-enheten. När du konfigurerar VPN-enheten behöver du följande:

  • En delad nyckel. Det här är samma delade nyckel som du anger när du skapar VPN-anslutningen för plats-till-plats. I vårt exempel använder vi en enkel delad nyckel. Vi rekommenderar att du skapar och använder en mer komplex nyckel.

  • Den offentliga IP-adressen för din virtuella nätverksgateway. Du kan visa den offentliga IP-adressen genom att använda Azure Portal, PowerShell eller CLI. Använd kommandot az network public-ip list för att hitta den offentliga IP-adressen till din virtuella nätverksgateway. För att läsningen ska gå lätt är utdata formaterade för att visa listan över offentliga IP-adresser i tabellformat.

    az network public-ip list --resource-group TestRG1 --output table
    

För att ladda ned konfigurationsskript för VPN-enheten:

Beroende på vilken VPN-enhet du har kan du eventuellt hämta ett skript för VPN-enhetskonfiguration. Mer information finns i Ladda ned konfigurationsskript för VPN-enheten.

Se följande länkar för ytterligare information om konfiguration:

9. Skapa VPN-anslutningen

Skapa VPN-anslutningen för plats-till-plats mellan din virtuella nätverksgateway och din lokala VPN-enhet. Var extra uppmärksam till värdet för den delade nyckeln, som måste matcha det konfigurerade värde för delad nyckel för din VPN-enhet.

Skapa anslutningen med kommandot az network vpn-connection create.

az network vpn-connection create --name VNet1toSite2 --resource-group TestRG1 --vnet-gateway1 VNet1GW -l eastus --shared-key abc123 --local-gateway2 Site2

Efter en kort stund har anslutningen upprättats.

10. Kontrollera VPN-anslutningen

Du kan kontrollera att anslutningen har utförts med hjälp av följande kommandot az network vpn-connection show. I exemplet refererar "--name" till namnet på den anslutning som du vill testa. När anslutningen håller på att upprättas visas status Ansluter. När anslutningen har upprättats ändras status till ”Ansluten”. Ändra följande exempel med värdena för din miljö.

az network vpn-connection show --name <connection-name> --resource-group <resource-group-name>

Om du vill använda en annan metod för att verifiera anslutningen kan du läsa Verifiera en anslutning till VPN Gateway.

Ansluta till en virtuell dator

Du kan ansluta till en virtuell dator som är distribuerad till ditt VNet genom att skapa en anslutning till fjärrskrivbord till den virtuella datorn. Det bästa sättet att först kontrollera att du kan ansluta till den virtuella datorn är att ansluta via dess privata IP-adress snarare än datornamnet. På så sätt testar du om du kan ansluta, inte huruvida namnmatchningen är korrekt konfigurerad.

  1. Leta upp den privata IP-adressen. Du kan hitta privata IP-adressen för en virtuell dator genom att antingen granska egenskaperna för den virtuella datorn i Azure Portal eller med hjälp av PowerShell.

    • Azure Portal – Leta upp din första virtuella dator på Azure Portal. Visa egenskaperna för den virtuella datorn. Den privata IP-adressen är angiven.

    • PowerShell – Använd exemplet för att visa en lista över virtuella datorer och privata IP-adresser från dina resursgrupper. Du behöver inte ändra exemplet innan du använder det.

      $VMs = Get-AzVM
      $Nics = Get-AzNetworkInterface | Where-Object VirtualMachine -ne $null
      
      foreach ($Nic in $Nics) {
      $VM = $VMs | Where-Object -Property Id -eq $Nic.VirtualMachine.Id
      $Prv = $Nic.IpConfigurations | Select-Object -ExpandProperty PrivateIpAddress
      $Alloc = $Nic.IpConfigurations | Select-Object -ExpandProperty PrivateIpAllocationMethod
      Write-Output "$($VM.Name): $Prv,$Alloc"
      }
      
  2. Kontrollera att du är ansluten till ditt virtuella nätverk.

  3. Öppna Anslutning till fjärrskrivbord genom att skriva "RDP" eller "Anslutning till fjärrskrivbord" i sökrutan i aktivitetsfältet och välj sedan Anslutning till fjärrskrivbord. Du kan även öppna Anslutning till fjärrskrivbord med hjälp av kommandot ”mstsc” i PowerShell.

  4. I fjärrskrivbordsanslutningen anger du den virtuella datorns privata IP-adress. Du kan välja Visa alternativ för att justera ytterligare inställningar och sedan ansluta.

Felsöka en anslutning

Om du har problem med att ansluta till en virtuell dator via VPN-anslutningen kontrollerar du följande:

  • Kontrollera att VPN-anslutningen har genomförts.

  • Kontrollera att du ansluter till den virtuella datorns privata IP-adress.

  • Om du kan ansluta till den virtuella datorn med hjälp av den privata IP-adressen, men inte med namnet på datorn, kontrollerar du att du har konfigurerat DNS korrekt. Mer information om hur namnmatchningen fungerar för virtuella datorer finns i Namnmatchning för virtuella datorer.

  • Mer information finns i Felsöka fjärrskrivbordsanslutningar till en virtuell dator.

Vanliga åtgärder

Det här avsnittet tar upp vanliga kommandon som är användbara när du arbetar med plats-till-plats-konfigurationer. En fullständig lista över CLI-nätverkskommandon finns i Azure CLI - Networking (Azure CLI – nätverk).

Visa lokala nätverksgatewayer

Du kan visa en lista över lokala nätverks-gatewayer med kommandot az network local-gateway list.

az network local-gateway list --resource-group TestRG1

Ändra IP-adressprefix för nätverksgateway – ingen gatewayanslutning

Om du inte har någon gatewayanslutning och du vill lägga till eller ta bort IP-adressprefix använder du samma kommando som du använder för att skapa den lokala nätverksgatewayen, az network local-gateway create. Du kan också använda det här kommandot för att uppdatera gatewayens IP-adress för VPN-enheten. Använd det befintliga namnet på din lokala nätverksgateway när du ska skriva över befintliga inställningar. Om du inte gör det skapar du en ny lokal nätverksgateway i stället för att skriva över den som redan finns.

Varje gång du gör en ändring måste hela listan med prefix specificeras, inte bara de prefix du vill ändra. Ange endast de prefix du vill behålla. I det här fallet 10.0.0.0/24 och 20.0.0.0/24

az network local-gateway create --gateway-ip-address 23.99.221.164 --name Site2 -g TestRG1 --local-address-prefixes 10.0.0.0/24 20.0.0.0/24

Ändra IP-adressprefix för nätverksgateway – existerande gatewayanslutning

Om du har en gatewayanslutning och vill lägga till eller ta bort IP-adressprefix kan du uppdatera prefixen med az network local-gateway update. Det medför en del avbrott för din VPN-anslutning. När du ändrar IP-adressprefixen behöver du inte ta bort VPN-gatewayen.

Varje gång du gör en ändring måste hela listan med prefix specificeras, inte bara de prefix du vill ändra. I det här exemplet är 10.0.0.0/24 och 20.0.0.0/24 redan med. Vi lägger till prefixen 30.0.0.0/24 och 40.0.0.0/24 och anger alla 4 prefixen vid uppdateringen.

az network local-gateway update --local-address-prefixes 10.0.0.0/24 20.0.0.0/24 30.0.0.0/24 40.0.0.0/24 --name VNet1toSite2 -g TestRG1

Så här ändrar du ”gatewayIpAddress” för den lokala nätverksgatewayen

Om VPN-enheten som du vill ansluta till har bytt offentlig IP-adress måste du ändra den lokala nätverksgatewayen så att den återspeglar den ändringen. Du kan ändra gatewayens IP-adress utan att ta bort en befintliga VPN-gatewayanslutning (om du har någon). För att ändra gatewayens IP-adress ersätter du värdena ”Site2” och ”TestRG1” med ditt eget med kommandot az network local-gateway update.

az network local-gateway update --gateway-ip-address 23.99.222.170 --name Site2 --resource-group TestRG1

Verifiera att IP-adressen är rätt i utdata:

"gatewayIpAddress": "23.99.222.170",

Kontrollera delade nyckelvärden

Kontrollera att värdet för den delade nyckeln är samma värde som du använde till VPN-enhetens konfiguration. Om inte ska du antingen köra anslutningen igen med värdet från enheten eller uppdatera enheten med värdet från resultatet. Värdena måste matcha. Om du vill visa den delade nyckeln använder du az network vpn-connection-list.

az network vpn-connection shared-key show --connection-name VNet1toSite2 --resource-group TestRG1

Visa den offentliga IP-adressen för VPN-gatewayen

Använd kommandot az network public-ip list för att hitta den offentliga IP-adressen till din virtuella nätverksgateway. För att läsningen ska gå lätt är utdata formaterade för att visa listan över offentliga IP-adresser i tabellformat.

az network public-ip list --resource-group TestRG1 --output table

Nästa steg