Lär dig hur du skapar och tar bort en NAT-gatewayresurs från ett virtuellt nätverksundernät. En NAT-gateway möjliggör utgående anslutning för resurser i ett virtuellt Azure-nätverk. Du kan ändra de offentliga IP-adresser och offentliga IP-adressprefix som är associerade med NAT-gatewayen som ändrats efter distributionen.
Den här artikeln beskriver hur du hanterar följande aspekter av NAT-gatewayen:
Skapa en NAT-gateway och associera den med ett befintligt undernät.
Ta bort en NAT-gateway från ett befintligt undernät och ta bort NAT-gatewayen.
Lägg till eller ta bort en offentlig IP-adress eller ett offentligt IP-prefix.
Det virtuella exempelnätverk som används i den här artikeln heter myVNet.
Exempelundernätet heter mySubnet.
Nat-exempelgatewayen heter myNATgateway.
Om du vill använda Azure PowerShell för den här artikeln behöver du:
Azure PowerShell installerat lokalt eller Azure Cloud Shell.
Om du väljer att installera och använda PowerShell lokalt kräver den här artikeln version 5.4.1 eller senare av Azure PowerShell-modulen. Kör Get-Module -ListAvailable Az för att hitta den installerade versionen. Om du behöver uppgradera kan du läsa Install Azure PowerShell module (Installera Azure PowerShell-modul).
Om du kör PowerShell lokalt måste du också köra Connect-AzAccount för att skapa en anslutning till Azure.
Kontrollera att modulen Az.Network är 4.3.0 eller senare. Om du vill verifiera den installerade modulen använder du kommandot Get-InstalledModule -Name "Az.Network". Om modulen kräver en uppdatering använder du kommandot Update-Module -Name Az.Network.
Om du använder en lokal installation loggar du in på Azure CLI med hjälp av kommandot az login. Slutför autentiseringsprocessen genom att följa stegen som visas i terminalen. Andra inloggningsalternativ finns i Logga in med Azure CLI.
När du uppmanas att installera Azure CLI-tillägget vid första användningen. Mer information om tillägg finns i Använda tillägg med Azure CLI.
Kör az version om du vill hitta versionen och de beroende bibliotek som är installerade. Om du vill uppgradera till den senaste versionen kör du az upgrade.
I sökrutan överst i Azure-portalen anger du NAT-gateway. Välj NAT-gatewayer i sökresultaten.
Välj Skapa.
Ange följande information på fliken Grundläggande i NAT-gatewayen (Create network address translation).
Välj din prenumeration.
Välj din resursgrupp eller välj Skapa ny för att skapa en ny resursgrupp.
NAT-gatewayens namn. Ange myNATgateway.
Välj din Region. I det här exemplet används USA, östra 2.
Välj en tillgänglighetszon. I det här exemplet används Ingen zon. Mer information om TILLGÄNGLIGHET för NAT-gateway finns i NAT-gateway och tillgänglighetszoner. |
Välj en TCP-timeout för inaktivitet (minuter).. I det här exemplet används standardvärdet 4.
Välj fliken Utgående IP eller välj Nästa: Utgående IP-adress.
Du kan välja en befintlig offentlig IP-adress eller prefix eller båda för att associera med NAT-gatewayen och aktivera utgående anslutning.
Om du vill skapa en ny offentlig IP-adress för NAT-gatewayen väljer du Skapa en ny offentlig IP-adress. Ange myPublicIP-NAT i Namn. Välj OK.
Om du vill skapa ett nytt offentligt IP-prefix för NAT-gatewayen väljer du Skapa ett nytt offentligt IP-prefix. Ange myPublicIPPrefix-NAT i Namn. Välj en prefixstorlek. Välj OK.
Välj fliken Undernät eller välj Nästa: Undernät.
Välj ditt virtuella nätverk. I det här exemplet väljer du myVNet i listrutan.
Markera kryssrutan bredvid mySubnet.
Välj Granska + skapa.
Välj Skapa.
Offentlig IP-adress
Om du vill skapa en NAT-gateway med en offentlig IP-adress kör du följande PowerShell-kommandon.
Använd cmdleten New-AzPublicIpAddress för att skapa en offentlig IP-adress för NAT-gatewayen.
## Create public IP address for NAT gateway ##
$ip = @{
Name = 'myPublicIP-NAT'
ResourceGroupName = 'myResourceGroup'
Location = 'eastus2'
Sku = 'Standard'
AllocationMethod = 'Static'
}
New-AzPublicIpAddress @ip
Använd cmdleten New-AzNatGateway för att skapa en NAT-gatewayresurs och associera den offentliga IP-adress som du skapade. Använd cmdleten Set-AzVirtualNetworkSubnetConfig för att konfigurera NAT-gatewayen för ditt virtuella nätverksundernät.
## Place the virtual network into a variable. ##
$net = @{
Name = 'myVNet'
ResourceGroupName = 'myResourceGroup'
}
$vnet = Get-AzVirtualNetwork @net
## Place the public IP address you created previously into a variable. ##
$pip = @{
Name = 'myPublicIP-NAT'
ResourceGroupName = 'myResourceGroup'
}
$publicIP = Get-AzPublicIPAddress @pip
## Create NAT gateway resource ##
$nat = @{
ResourceGroupName = 'myResourceGroupNAT'
Name = 'myNATgateway'
IdleTimeoutInMinutes = '10'
Sku = 'Standard'
Location = 'eastus2'
PublicIpAddress = $publicIP
}
$natGateway = New-AzNatGateway @nat
## Create the subnet configuration. ##
$sub = @{
Name = 'mySubnet'
VirtualNetwork = $vnet
NatGateway = $natGateway
AddressPrefix = '10.0.2.0/24'
}
Set-AzVirtualNetworkSubnetConfig @sub
## Save the configuration to the virtual network. ##
$vnet | Set-AzVirtualNetwork
Offentligt IP-prefix
Om du vill skapa en NAT-gateway med ett offentligt IP-prefix använder du dessa kommandon.
Använd cmdleten New-AzPublicIpPrefix för att skapa ett offentligt IP-prefix för NAT-gatewayen.
## Create public IP prefix for NAT gateway ##
$ip = @{
Name = 'myPublicIPPrefix-NAT'
ResourceGroupName = 'myResourceGroup'
Location = 'eastus2'
Sku = 'Standard'
PrefixLength ='29'
}
New-AzPublicIpPrefix @ip
Använd cmdleten New-AzNatGateway för att skapa en NAT-gatewayresurs och associera det offentliga IP-prefixet som du skapade. Använd cmdleten Set-AzVirtualNetworkSubnetConfig för att konfigurera NAT-gatewayen för ditt virtuella nätverksundernät.
## Place the virtual network into a variable. ##
$net = @{
Name = 'myVNet'
ResourceGroupName = 'myResourceGroup'
}
$vnet = Get-AzVirtualNetwork @net
## Place the public IP prefix you created previously into a variable. ##
$pip = @{
Name = 'myPublicIPPrefix-NAT'
ResourceGroupName = 'myResourceGroup'
}
$publicIPprefix = Get-AzPublicIPPrefix @pip
## Create NAT gateway resource ##
$nat = @{
ResourceGroupName = 'myResourceGroupNAT'
Name = 'myNATgateway'
IdleTimeoutInMinutes = '10'
Sku = 'Standard'
Location = 'eastus2'
PublicIpPrefix = $publicIPprefix
}
$natGateway = New-AzNatGateway @nat
## Create the subnet configuration. ##
$sub = @{
Name = 'mySubnet'
VirtualNetwork = $vnet
NatGateway = $natGateway
}
Set-AzVirtualNetworkSubnetConfig @sub
## Save the configuration to the virtual network. ##
$vnet | Set-AzVirtualNetwork
Offentlig IP-adress
Om du vill skapa en NAT-gateway med en offentlig IP-adress använder du följande kommandon.
I sökrutan överst i Azure-portalen anger du NAT-gateway. Välj NAT-gatewayer i sökresultaten.
Välj myNATgateway.
Under Inställningar väljer du Undernät.
Välj Koppla från för att ta bort NAT-gatewayen från det konfigurerade undernätet.
Du kan nu associera NAT-gatewayen med ett annat undernät eller virtuellt nätverk i din prenumeration. Slutför följande steg för att ta bort NAT-gatewayresursen.
I sökrutan överst i Azure-portalen anger du NAT-gateway. Välj NAT-gatewayer i sökresultaten.
Välj myNATgateway.
Välj Ta bort.
Välj Ja.
Det finns för närvarande inte stöd för att ta bort NAT-gatewayen från ett undernät med hjälp av Azure PowerShell.
I sökrutan överst i Azure-portalen anger du Offentlig IP-adress. Välj Offentliga IP-adresser i sökresultatet.
Välj Skapa.
Ange följande information i Skapa offentlig IP-adress.
Inställning
Värde
Prenumeration
Välj din prenumeration.
Resursgrupp
Välj din resursgrupp. I exemplet används myResourceGroup.
Region
Välj en region. I det här exemplet används USA, östra 2.
Name
Ange myPublicIP-NAT2.
IP-version
Välj IPv4.
SKU
Välj Standard.
Availability zone
Välj standardvärdet zonredundant.
Nivå
Välj Regional.
Välj Granska + skapa och välj sedan Skapa.
I sökrutan överst i Azure-portalen anger du NAT-gateway. Välj NAT-gatewayer i sökresultaten.
Välj myNATgateway.
Under Inställningar väljer du Utgående IP-adress.
IP-adresserna och prefixen som är associerade med NAT-gatewayen visas. Bredvid Offentliga IP-adresser väljer du Ändra.
Bredvid Offentliga IP-adresser väljer du listrutan för IP-adresser. Välj den IP-adress som du skapade för att lägga till i NAT-gatewayen. Om du vill ta bort en adress avmarkerar du den.
Välj OK.
Välj Spara.
Lägga till offentlig IP-adress
Om du vill lägga till en offentlig IP-adress i NAT-gatewayen lägger du till den i ett matrisobjekt tillsammans med de aktuella IP-adresserna. PowerShell-cmdletarna ersätter alla adresser.
I det här exemplet heter den befintliga IP-adressen som är associerad med NAT-gatewayen myPublicIP-NAT. Ersätt det här värdet med en matris som innehåller både myPublicIP-NAT och en ny IP-adress. Om du redan har konfigurerat flera IP-adresser måste du också lägga till dem i matrisen.
## Create public IP address for NAT gateway ##
$ip = @{
Name = 'myPublicIP-NAT2'
ResourceGroupName = 'myResourceGroup'
Location = 'eastus2'
Sku = 'Standard'
AllocationMethod = 'Static'
}
New-AzPublicIpAddress @ip
Använd Set-AzNatGateway för att lägga till den offentliga IP-adressen till NAT-gatewayen.
## Place NAT gateway into a variable. ##
$ng = @{
Name = 'myNATgateway'
ResourceGroupName = 'myResourceGroup'
}
$nat = Get-AzNatGateway @ng
## Place the existing public IP address associated with the NAT gateway into a variable. ##
$ip = @{
Name = 'myPublicIP-NAT'
ResourceGroupName = 'myResourceGroup'
}
$publicIP1 = Get-AzPublicIPaddress @ip
## Place the public IP address you created previously into a variable. ##
$ip = @{
Name = 'myPublicIP-NAT2'
ResourceGroupName = 'myResourceGroup'
}
$publicIP2 = Get-AzPublicIPaddress @ip
## Place the public IP address variables into an array. ##
$pipArray = $publicIP1,$publicIP2
## Add the IP address to the NAT gateway. ##
$nt = @{
NatGateway = $nat
PublicIpAddress = $pipArray
}
Set-AzNatGateway @nt
Ta bort offentlig IP-adress
Om du vill ta bort en offentlig IP-adress från en NAT-gateway skapar du ett matrisobjekt som inte innehåller den IP-adress som du vill ta bort. Du har till exempel en NAT-gateway konfigurerad med två offentliga IP-adresser. Du vill ta bort en av IP-adresserna. IP-adresserna som är associerade med NAT-gatewayen heter myPublicIP-NAT och myPublicIP-NAT2. Om du vill ta bort myPublicIP-NAT2 skapar du ett matrisobjekt för PowerShell-kommandot som endast innehåller myPublicIP-NAT. När du använder kommandot tillämpas matrisen igen på NAT-gatewayen och myPublicIP-NAT är den enda associerade offentliga IP-adressen.
Använd Set-AzNatGateway för att ta bort en offentlig IP-adress från NAT-gatewayen.
## Place NAT gateway into a variable. ##
$ng = @{
Name = 'myNATgateway'
ResourceGroupName = 'myResourceGroup'
}
$nat = Get-AzNatGateway @ng
## Place the existing public IP address associated with the NAT gateway into a variable. ##
$ip = @{
Name = 'myPublicIP-NAT'
ResourceGroupName = 'myResourceGroup'
}
$publicIP1 = Get-AzPublicIPaddress @ip
## Place the second public IP address into a variable. ##
$ip = @{
Name = 'myPublicIP-NAT2'
ResourceGroupName = 'myResourceGroup'
}
$publicIP2 = Get-AzPublicIPAddress @ip
## Place ONLY the public IP you wish to keep in the array. ##
$pipArray = $publicIP1
## Add the public IP address to the NAT gateway. ##
$nt = @{
NatGateway = $nat
PublicIpAddress = $pipArray
}
Set-AzNatGateway @nt
Lägga till offentlig IP-adress
I det här exemplet heter den befintliga offentliga IP-adressen som är associerad med NAT-gatewayen myPublicIP-NAT.
az network public-ip create \
--resource-group myResourceGroup \
--location eastus2 \
--name myPublicIP-NAT2 \
--sku standard
Använd az network nat gateway update för att lägga till den offentliga IP-adress som du skapade i NAT-gatewayen. Azure CLI-kommandot ersätter värdena. Det lägger inte till något nytt värde. Om du vill lägga till den nya IP-adressen till NAT-gatewayen måste du även inkludera andra IP-adresser som är associerade med NAT-gatewayen.
Använd az network nat gateway update för att ta bort en offentlig IP-adress från NAT-gatewayen. Azure CLI-kommandot ersätter värdena. Det tar inte bort något värde. Om du vill ta bort en offentlig IP-adress tar du med alla IP-adresser i kommandot som du vill behålla. Utelämna det värde som du vill ta bort. Du har till exempel en NAT-gateway konfigurerad med två offentliga IP-adresser. Du vill ta bort en av IP-adresserna. IP-adresserna som är associerade med NAT-gatewayen heter myPublicIP-NAT och myPublicIP-NAT2. Om du vill ta bort myPublicIP-NAT2 utelämnar du namnet på IP-adressen från kommandot . Kommandot återskapar IP-adresserna som anges i kommandot till NAT-gatewayen. Den tar bort alla IP-adresser som inte visas.
I sökrutan överst i Azure-portalen anger du offentligt IP-prefix. Välj Offentliga IP-prefix i sökresultaten.
Välj Skapa.
Ange följande information på fliken Grundläggande i Skapa ett offentligt IP-prefix.
Inställning
Värde
Projektinformation
Prenumeration
Välj din prenumeration.
Resursgrupp
Välj din resursgrupp. I det här exemplet används myResourceGroup.
Instansinformation
Name
Ange myPublicIPPrefix-NAT.
Region
Välj din region. I det här exemplet används USA, östra 2.
IP-version
Välj IPv4.
Ägarskap för prefix
Välj Microsoft-ägd.
Prefixstorlek
Välj en prefixstorlek. I det här exemplet används /28 (16 adresser).
Välj Granska + skapa och välj sedan Skapa.
I sökrutan överst i Azure-portalen anger du NAT-gateway. Välj NAT-gatewayer i sökresultaten.
Välj myNATgateway.
Under Inställningar väljer du Utgående IP-adress.
Sidan visar IP-adresser och prefix som är associerade med NAT-gatewayen. Bredvid Offentliga IP-prefix väljer du Ändra.
Bredvid Offentliga IP-prefix väljer du listrutan. Välj det IP-adressprefix som du skapade för att lägga till prefixet i NAT-gatewayen. Om du vill ta bort ett prefix avmarkerar du det.
Välj OK.
Välj Spara.
Lägga till offentligt IP-prefix
Om du vill lägga till ett offentligt IP-prefix i NAT-gatewayen lägger du till det i ett matrisobjekt tillsammans med de aktuella IP-prefixen. PowerShell-cmdletarna ersätter alla IP-prefix.
I det här exemplet heter det befintliga offentliga IP-prefixet som är associerat med NAT-gatewayen myPublicIPprefix-NAT. Ersätt det här värdet med en matris som innehåller både myPublicIPprefix-NAT och ett nytt IP-adressprefix. Om du redan har konfigurerat flera IP-prefix måste du även lägga till dem i matrisen.
Använd New-AzPublicIpPrefix för att skapa ett nytt offentligt IP-prefix för NAT-gatewayen.
## Create public IP prefix for NAT gateway ##
$ip = @{
Name = 'myPublicIPPrefix-NAT2'
ResourceGroupName = 'myResourceGroup'
Location = 'eastus2'
Sku = 'Standard'
PrefixLength = '29'
}
New-AzPublicIpPrefix @ip
Använd Set-AzNatGateway för att lägga till det offentliga IP-prefixet i NAT-gatewayen.
## Place NAT gateway into a variable. ##
$ng = @{
Name = 'myNATgateway'
ResourceGroupName = 'myResourceGroup'
}
$nat = Get-AzNatGateway @ng
## Place the existing public IP prefix associated with the NAT gateway into a variable. ##
$ip = @{
Name = 'myPublicIPprefix-NAT'
ResourceGroupName = 'myResourceGroup'
}
$prefixIP1 = Get-AzPublicIPPrefix @ip
## Place the public IP prefix you created previously into a variable. ##
$ip = @{
Name = 'myPublicIPprefix-NAT2'
ResourceGroupName = 'myResourceGroup'
}
$prefixIP2 = Get-AzPublicIPprefix @ip
## Place the public IP address variables into an array. ##
$preArray = $prefixIP1,$prefixIP2
## Add the IP address prefix to the NAT gateway. ##
$nt = @{
NatGateway = $nat
PublicIpPrefix = $preArray
}
Set-AzNatGateway @nt
Ta bort offentligt IP-prefix
Om du vill ta bort ett offentligt IP-prefix från en NAT-gateway skapar du ett matrisobjekt som inte innehåller det IP-adressprefix som du vill ta bort. Du har till exempel en NAT-gateway konfigurerad med två offentliga IP-prefix. Du vill ta bort ett av IP-prefixen. IP-prefixen som är associerade med NAT-gatewayen heter myPublicIPprefix-NAT och myPublicIPprefix-NAT2. Om du vill ta bort myPublicIPprefix-NAT2 skapar du ett matrisobjekt för PowerShell-kommandot som endast innehåller myPublicIPprefix-NAT. När du använder kommandot tillämpas matrisen igen på NAT-gatewayen och myPublicIPprefix-NAT är det enda prefix som är associerat.
Använd cmdleten Set-AzNatGateway för att ta bort ett offentligt IP-prefix från NAT-gatewayen.
## Place NAT gateway into a variable. ##
$ng = @{
Name = 'myNATgateway'
ResourceGroupName = 'myResourceGroup'
}
$nat = Get-AzNatGateway @ng
## Place the existing public IP prefix associated with the NAT gateway into a variable. ##
$ip = @{
Name = 'myPublicIPprefix-NAT'
ResourceGroupName = 'myResourceGroup'
}
$prefixIP1 = Get-AzPublicIPPrefix @ip
## Place the secondary public IP prefix into a variable. ##
$ip = @{
Name = 'myPublicIPprefix-NAT2'
ResourceGroupName = 'myResourceGroup'
}
$prefixIP2 = Get-AzPublicIPprefix @ip
## Place ONLY the prefix you wish to keep in the array. DO NOT ADD THE SECONDARY VARIABLE ##
$preArray = $prefixIP1
## Add the IP address prefix to the NAT gateway. ##
$nt = @{
NatGateway = $nat
PublicIpPrefix = $preArray
}
Set-AzNatGateway @nt
Lägga till offentligt IP-prefix
I det här exemplet heter det befintliga offentliga IP-prefixet som är associerat med NAT-gatewayen myPublicIPprefix-NAT.
Använd az network nat gateway update för att lägga till det offentliga IP-prefixet som du skapade i NAT-gatewayen. Azure CLI-kommandot ersätter värden. Det lägger inte till något värde. Om du vill lägga till det nya IP-adressprefixet i NAT-gatewayen måste du även inkludera andra IP-prefix som är associerade till NAT-gatewayen.
Använd az network nat gateway update för att ta bort ett offentligt IP-prefix från NAT-gatewayen. Azure CLI-kommandot ersätter värdena. Det tar inte bort något värde. Om du vill ta bort ett offentligt IP-prefix tar du med alla prefix i kommandot som du vill behålla. Utelämna den som du vill ta bort. Du har till exempel en NAT-gateway konfigurerad med två offentliga IP-prefix. Du vill ta bort ett av prefixen. IP-prefixen som är associerade med NAT-gatewayen heter myPublicIPprefix-NAT och myPublicIPprefix-NAT2. Om du vill ta bort myPublicIPprefix-NAT2 utelämnar du namnet på IP-prefixet från kommandot . Kommandot återskapar DE IP-prefix som anges i kommandot till NAT-gatewayen. Den tar bort alla IP-adresser som inte visas.
Kommer snart: Under hela 2024 kommer vi att fasa ut GitHub-problem som feedbackmekanism för innehåll och ersätta det med ett nytt feedbacksystem. Mer information finns i: https://aka.ms/ContentUserFeedback.