Dela via


Snabbstart: Skapa en NAT-gateway med Azure PowerShell

I den här snabbstarten lär du dig hur du skapar en NAT-gateway med hjälp av PowerShell. NAT Gateway-tjänsten tillhandahåller utgående anslutning för virtuella datorer i Azure.

Diagram över resurser som skapats i nat gateway-snabbstarten.

Förutsättningar

  • Ett Azure-konto med en aktiv prenumeration. Skapa ett konto utan kostnad.

  • Azure Cloud Shell eller Azure PowerShell.

    Stegen i den här snabbstarten kör Azure PowerShell-cmdletarna interaktivt i Azure Cloud Shell. Om du vill köra kommandona i Cloud Shell väljer du Öppna Cloudshell i det övre högra hörnet i ett kodblock. Välj Kopiera för att kopiera koden och klistra sedan in den i Cloud Shell för att köra den. Du kan också köra Cloud Shell från Azure-portalen.

    Du kan också installera Azure PowerShell lokalt för att köra cmdletarna. Stegen i den här artikeln kräver Azure PowerShell-modulversion 5.4.1 eller senare. Kör Get-Module -ListAvailable Az för att hitta den installerade versionen. Om du behöver uppgradera kan du läsa Uppdatera Azure PowerShell-modulen.

Skapa en resursgrupp

Skapa en resursgrupp med New-AzResourceGroup. En Azure-resursgrupp är en logisk container där Azure-resurser distribueras och hanteras.

I följande exempel skapas en resursgrupp med namnet test-rgplatsen eastus2 :

$rsg = @{
    Name = 'test-rg'
    Location = 'eastus2'
}
New-AzResourceGroup @rsg

Skapa NAT-gatewayen

I det här avsnittet skapar vi NAT-gatewayen och stödresurser.

  • För att få åtkomst till Internet behöver du en eller flera offentliga IP-adresser för NAT-gatewayen. Använd New-AzPublicIpAddress för att skapa en offentlig IP-adressresurs med namnet public-ip-nat i test-rg.

  • Skapa en global Azure NAT-gateway med New-AzNatGateway. Resultatet av det här kommandot skapar en gatewayresurs med namnet nat-gateway som använder den offentliga IP-adressen public-ip-nat. Tidsgränsen för inaktivitet är inställd på 10 minuter.

  • Skapa ett virtuellt nätverk med namnet vnet-1 med undernätet subnet-1 med New-AzVirtualNetworkSubnetConfigi test-rg med New-AzVirtualNetwork. IP-adressutrymmet för det virtuella nätverket är 10.0.0.0/16. Undernätet i det virtuella nätverket är 10.0.0.0/24.

  • Skapa en Azure Bastion-värd med namnet bastion för att få åtkomst till den virtuella datorn. Använd New-AzBastion för att skapa skyddsvärden. Skapa en offentlig IP-adress för skyddsvärden med New-AzPublicIpAddress.

## Create public IP address for NAT gateway ##
$ip = @{
    Name = 'public-ip-nat'
    ResourceGroupName = 'test-rg'
    Location = 'eastus2'
    Sku = 'Standard'
    AllocationMethod = 'Static'
    Zone = 1,2,3
}
$publicIP = New-AzPublicIpAddress @ip

## Create NAT gateway resource ##
$nat = @{
    ResourceGroupName = 'test-rg'
    Name = 'nat-gateway'
    IdleTimeoutInMinutes = '10'
    Sku = 'Standard'
    Location = 'eastus2'
    PublicIpAddress = $publicIP
}
$natGateway = New-AzNatGateway @nat

## Create subnet config and associate NAT gateway to subnet##
$subnet = @{
    Name = 'subnet-1'
    AddressPrefix = '10.0.0.0/24'
    NatGateway = $natGateway
}
$subnetConfig = New-AzVirtualNetworkSubnetConfig @subnet 

## Create Azure Bastion subnet. ##
$bastsubnet = @{
    Name = 'AzureBastionSubnet' 
    AddressPrefix = '10.0.1.0/26'
}
$bastsubnetConfig = New-AzVirtualNetworkSubnetConfig @bastsubnet

## Create the virtual network ##
$net = @{
    Name = 'vnet-1'
    ResourceGroupName = 'test-rg'
    Location = 'eastus2'
    AddressPrefix = '10.0.0.0/16'
    Subnet = $subnetConfig,$bastsubnetConfig
}
$vnet = New-AzVirtualNetwork @net

## Create public IP address for bastion host. ##
$ip = @{
    Name = 'public-ip'
    ResourceGroupName = 'test-rg'
    Location = 'eastus2'
    Sku = 'Standard'
    AllocationMethod = 'Static'
    Zone = 1,2,3
}
$publicip = New-AzPublicIpAddress @ip

## Create bastion host ##
$bastion = @{
    Name = 'bastion'
    ResourceGroupName = 'test-rg'
    PublicIpAddressRgName = 'test-rg'
    PublicIpAddressName = 'public-ip'
    VirtualNetworkRgName = 'test-rg'
    VirtualNetworkName = 'vnet-1'
    Sku = 'Basic'
}
New-AzBastion @bastion

Bastion-värden kan ta flera minuter att distribuera. Vänta tills skyddsvärden har distribuerats innan du går vidare till nästa avsnitt.

Virtuell maskin

I det här avsnittet skapar du en virtuell dator för att testa NAT-gatewayen och verifiera den offentliga IP-adressen för den utgående anslutningen.

# Set the administrator and password for the VMs. ##
$cred = Get-Credential

## Place the virtual network into a variable. ##
$vnet = Get-AzVirtualNetwork -Name 'vnet-1' -ResourceGroupName 'test-rg'

## Create network interface for virtual machine. ##
$nic = @{
    Name = "nic-1"
    ResourceGroupName = 'test-rg'
    Location = 'eastus2'
    Subnet = $vnet.Subnets[0]
}
$nicVM = New-AzNetworkInterface @nic

## Create a virtual machine configuration for VMs ##
$vmsz = @{
    VMName = 'vm-1'
    VMSize = 'Standard_DS1_v2'  
}
$vmos = @{
    ComputerName = 'vm-1'
    Credential = $cred
}
$vmimage = @{
    PublisherName = 'Canonical'
    Offer = '0001-com-ubuntu-server-jammy'
    Skus = '22_04-lts-gen2'
    Version = 'latest'     
}
$vmConfig = New-AzVMConfig @vmsz `
    | Set-AzVMOperatingSystem @vmos -Linux `
    | Set-AzVMSourceImage @vmimage `
    | Add-AzVMNetworkInterface -Id $nicVM.Id

## Create the virtual machine for VMs ##
$vm = @{
    ResourceGroupName = 'test-rg'
    Location = 'eastus2'
    VM = $vmConfig
}
New-AzVM @vm

Vänta tills den virtuella datorn har skapats innan du går vidare till nästa avsnitt.

Testa NAT-gateway

I det här avsnittet testar du NAT-gatewayen. Du identifierar först den offentliga IP-adressen för NAT-gatewayen. Sedan ansluter du till den virtuella testdatorn och verifierar den utgående anslutningen via NAT-gatewayen.

  1. Logga in på Azure-portalen.

  2. I sökrutan överst i portalen anger du Offentlig IP-adress. Välj Offentliga IP-adresser i sökresultatet.

  3. Välj public-ip-nat.

  4. Anteckna den offentliga IP-adressen:

    Identifiera den offentliga IP-adressen för NAT-gatewayen

  5. I sökrutan överst i portalen anger du Virtuell dator. Välj Virtuella datorer i sökresultaten.

  6. Välj vm-1.

  7. På sidan Översikt väljer du Anslut och sedan fliken Bastion.

  8. Välj Använd Bastion.

  9. Ange användarnamnet och lösenordet som angavs när den virtuella datorn skapades. Välj Anslut.

  10. I bash-prompten anger du följande kommando:

    curl ifconfig.me
    
  11. Kontrollera att IP-adressen som returneras av kommandot matchar nat-gatewayens offentliga IP-adress.

    azureuser@vm-1:~$ curl ifconfig.me
    20.7.200.36
    

Rensa resurser

Om du inte kommer att fortsätta att använda det här programmet tar du bort det virtuella nätverket, den virtuella datorn och NAT-gatewayen med följande steg:

Remove-AzResourceGroup -Name 'test-rg' -Force

Nästa steg

Mer information om Azure NAT Gateway finns i: