Quickstart: Een NAT-gateway maken met behulp van Azure PowerShell
In deze quickstart leert u hoe u een NAT-gateway maakt met behulp van PowerShell. De NAT Gateway-service biedt uitgaande connectiviteit voor virtuele machines in Azure.
Vereisten
Een Azure-account met een actief abonnement. Gratis een account maken
Azure Cloud Shell of Azure PowerShell.
Met de stappen in deze quickstart worden de Azure PowerShell-cmdlets interactief uitgevoerd in Azure Cloud Shell. Als u de opdrachten in Cloud Shell wilt uitvoeren, selecteert u CloudShell openen in de rechterbovenhoek van een codeblok. Selecteer Kopiëren om de code te kopiëren en plak deze in Cloud Shell om deze uit te voeren. U kunt Cloud Shell ook uitvoeren vanuit Azure Portal.
U kunt Azure PowerShell ook lokaal installeren om de cmdlets uit te voeren. Voor de stappen in dit artikel is Azure PowerShell-moduleversie 5.4.1 of hoger vereist. Voer deze opdracht
Get-Module -ListAvailable Az
uit om uw geïnstalleerde versie te vinden. Zie De Azure PowerShell-module bijwerken als u een upgrade moet uitvoeren.
Een brongroep maken
Maak een resourcegroep met behulp van de opdracht New-AzResourceGroup. Een Azure-resourcegroep is een logische container waarin Azure-resources worden geïmplementeerd en beheerd.
In het volgende voorbeeld wordt een resourcegroep met de naam test-rg gemaakt op de locatie eastus2 :
$rsg = @{
Name = 'test-rg'
Location = 'eastus2'
}
New-AzResourceGroup @rsg
De NAT-gateway maken
In deze sectie maken we de NAT-gateway en ondersteunende resources.
Voor toegang tot het internet hebt u een of meer openbare IP-adressen nodig voor de NAT-gateway. Gebruik New-AzPublicIpAddress om een openbare IP-adresresource te maken met de naam public-ip-nat in test-rg.
Maak een globale Azure NAT-gateway met New-AzNatGateway. Het resultaat van deze opdracht maakt een gatewayresource met de naam nat-gateway die gebruikmaakt van het openbare IP-adres public-ip-nat. De time-out voor inactiviteit is ingesteld op 10 minuten.
Maak een virtueel netwerk met de naam vnet-1 met een subnet met de naam subnet-1 met behulp van New-AzVirtualNetworkSubnetConfig in de test-rg met behulp van New-AzVirtualNetwork. De IP-adresruimte voor het virtuele netwerk is 10.0.0.0/16. Het subnet in het virtuele netwerk is 10.0.0.0/24.
Maak een Azure Bastion-host met de naam Bastion voor toegang tot de virtuele machine. Gebruik New-AzBastion om de bastionhost te maken. Maak een openbaar IP-adres voor de bastionhost met 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
Het implementeren van de bastionhost kan enkele minuten duren. Wacht tot de bastionhost is geïmplementeerd voordat u verdergaat met de volgende sectie.
Virtuele machine
In deze sectie maakt u een virtuele machine om de NAT-gateway te testen en het openbare IP-adres van de uitgaande verbinding te verifiëren.
Maak een netwerkinterface met New-AzNetworkInterface.
Stel een gebruikersnaam en wachtwoord voor de beheerder in voor de virtuele machine met Get-Credential.
Maak de virtuele machine met:
# 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
Wacht totdat het maken van de virtuele machine is voltooid voordat u verdergaat met de volgende sectie.
NAT-gateway testen
In deze sectie test u de NAT-gateway. U ontdekt eerst het openbare IP-adres van de NAT-gateway. Vervolgens maakt u verbinding met de virtuele testmachine en controleert u de uitgaande verbinding via de NAT-gateway.
Meld u aan bij het Azure-portaal.
Voer in het zoekvak boven aan de portal een openbaar IP-adres in. Selecteer Openbare IP-adressen in de zoekresultaten.
Selecteer public-ip-nat.
Noteer het openbare IP-adres:
Voer in het zoekvak boven aan de portal virtuele machine in. Selecteer Virtuele machines in de zoekresultaten.
Selecteer vm-1.
Selecteer op de pagina Overzicht Verbinding maken en selecteer vervolgens het tabblad Bastion.
Selecteer Azure Bastion gebruiken.
Voer de gebruikersnaam en het wachtwoord in die zijn ingevoerd tijdens het maken van de VM. Selecteer Verbinding maken.
Voer in de bash-prompt de volgende opdracht in:
curl ifconfig.me
Controleer of het IP-adres dat door de opdracht wordt geretourneerd, overeenkomt met het openbare IP-adres van de NAT-gateway.
azureuser@vm-1:~$ curl ifconfig.me 20.7.200.36
Resources opschonen
Als u deze toepassing niet wilt blijven gebruiken, verwijdert u het virtuele netwerk, de virtuele machine en de NAT-gateway met de volgende stappen:
Remove-AzResourceGroup -Name 'test-rg' -Force
Volgende stappen
Zie voor meer informatie over Azure NAT Gateway: