Virtuele netwerken verbinden met peering voor virtuele netwerken met behulp van PowerShell

U kunt virtuele netwerken met elkaar verbinden met virtueel-netwerk peering. Wanneer virtuele netwerken als peers zijn gekoppeld, kunnen resources in beide virtuele netwerken met elkaar communiceren met dezelfde latentie en bandbreedte als wanneer de resources zich in hetzelfde virtuele netwerk zouden bevinden. In dit artikel leert u het volgende:

  • Twee virtuele netwerken maken
  • Twee virtuele netwerken koppelen met virtueel-netwerkpeering
  • Een virtuele machine (VM) implementeren op elk van de virtuele netwerken
  • Communiceren tussen VM's

Als u nog geen abonnement op Azure hebt, maak dan een gratis account aan voordat u begint.

Azure Cloud Shell gebruiken

Azure host Azure Cloud Shell, een interactieve shell-omgeving die u via uw browser kunt gebruiken. U kunt Bash of PowerShell gebruiken met Cloud Shell om met Azure-services te werken. U kunt de vooraf geïnstalleerde opdrachten van Cloud Shell gebruiken om de code in dit artikel uit te voeren zonder dat u iets hoeft te installeren in uw lokale omgeving.

Om Azure Cloud Shell op te starten:

Optie Voorbeeld/koppeling
Selecteer Nu proberen in de rechterbovenhoek van een codeblok. Als u Uitproberen selecteert, wordt de code niet automatisch gekopieerd naar Cloud Shell. Voorbeeld van Uitproberen voor Azure Cloud Shell
Ga naar https://shell.azure.com, of selecteer de knop Cloud Shell starten om Cloud Shell in uw browser te openen. Cloud Shell starten in een nieuw venster
Klik op de knop Cloud Shell in het menu in de balk rechtsboven in de Azure-portal. Knop Cloud Shell in de Azure Portal

Om de code in dit artikel in Azure Cloud Shell uit te voeren:

  1. Start Cloud Shell.

  2. Selecteer de knop Kopiëren op een codeblok om de code te kopiëren.

  3. Plak de code in de Cloud Shell-sessie door CTRL+Shift+V te selecteren in Windows en Linux of door Cmd+Shift+V op macOS te selecteren.

  4. Selecteer Invoeren om de code uit te voeren.

Als u PowerShell lokaal wilt installeren en gebruiken, is voor dit artikel Azure PowerShell moduleversie 1.0.0 of hoger vereist. Voer Get-Module -ListAvailable Az uit om te kijken welke versie is geïnstalleerd. Als u PowerShell wilt upgraden, raadpleegt u De Azure PowerShell-module installeren. Als u PowerShell lokaal uitvoert, moet u ook Connect-AzAccount uitvoeren om verbinding te kunnen maken met Azure.

Virtuele netwerken maken

Voordat u een virtueel netwerk maakt, moet u een resourcegroep maken voor het virtuele netwerk en alle andere resources die in dit artikel zijn gemaakt. Maak een resourcegroep met behulp van de opdracht New-AzResourceGroup. In het volgende voorbeeld wordt een resourcegroep met de naam myResourceGroup gemaakt op de locatie VS - oost.

New-AzResourceGroup -ResourceGroupName myResourceGroup -Location EastUS

Maak een virtueel netwerk met New-AzVirtualNetwork. In het volgende voorbeeld wordt een virtueel netwerk met de naam myVirtualNetwork1 gemaakt met het adres voorvoegsel 10.0.0.0/16.

$virtualNetwork1 = New-AzVirtualNetwork `
  -ResourceGroupName myResourceGroup `
  -Location EastUS `
  -Name myVirtualNetwork1 `
  -AddressPrefix 10.0.0.0/16

Maak een subnetconfiguratie met Add-AzVirtualNetworkSubnetConfig. In het volgende voorbeeld wordt een subnetconfiguratie gemaakt met het adres prefix 10.0.0.0/24:

$subnetConfig = Add-AzVirtualNetworkSubnetConfig `
  -Name Subnet1 `
  -AddressPrefix 10.0.0.0/24 `
  -VirtualNetwork $virtualNetwork1

Schrijf de subnetconfiguratie naar het virtuele netwerk met Set-AzVirtualNetwork, waarmee het subnet wordt gemaakt:

$virtualNetwork1 | Set-AzVirtualNetwork

Maak een virtueel netwerk met het adres voor 10.1.0.0/16 en één subnet:

# Create the virtual network.
$virtualNetwork2 = New-AzVirtualNetwork `
  -ResourceGroupName myResourceGroup `
  -Location EastUS `
  -Name myVirtualNetwork2 `
  -AddressPrefix 10.1.0.0/16

# Create the subnet configuration.
$subnetConfig = Add-AzVirtualNetworkSubnetConfig `
  -Name Subnet1 `
  -AddressPrefix 10.1.0.0/24 `
  -VirtualNetwork $virtualNetwork2

# Write the subnet configuration to the virtual network.
$virtualNetwork2 | Set-AzVirtualNetwork

Peering van virtuele netwerken

Maak een peering met Add-AzVirtualNetworkPeering. In het volgende voorbeeld wordt myVirtualNetwork1 aan myVirtualNetwork2 ge peerd.

Add-AzVirtualNetworkPeering `
  -Name myVirtualNetwork1-myVirtualNetwork2 `
  -VirtualNetwork $virtualNetwork1 `
  -RemoteVirtualNetworkId $virtualNetwork2.Id

In de uitvoer die wordt geretourneerd nadat de vorige opdracht is uitgevoerd, ziet u dat PeeringState Gestart is. De peering blijft in de status Gestart totdat u de peering maakt van myVirtualNetwork2 naar myVirtualNetwork1. Maak een peering van myVirtualNetwork2 naar myVirtualNetwork1.

Add-AzVirtualNetworkPeering `
  -Name myVirtualNetwork2-myVirtualNetwork1 `
  -VirtualNetwork $virtualNetwork2 `
  -RemoteVirtualNetworkId $virtualNetwork1.Id

In de uitvoer die wordt geretourneerd nadat de vorige opdracht is uitgevoerd, ziet u dat PeeringState Verbonden is. Azure heeft ook de peering-status van de peering myVirtualNetwork1-myVirtualNetwork2 gewijzigd in Connected. Controleer of de peering-status voor de peering myVirtualNetwork1-myVirtualNetwork2 is gewijzigd in Verbonden met Get-AzVirtualNetworkPeering.

Get-AzVirtualNetworkPeering `
  -ResourceGroupName myResourceGroup `
  -VirtualNetworkName myVirtualNetwork1 `
  | Select PeeringState

Resources in het ene virtuele netwerk kunnen pas communiceren met resources in het andere virtuele netwerk als de PeeringState voor de peerings in beide virtuele netwerken Verbonden is.

Virtuele machines maken

Maak een VM in elk virtueel netwerk, zodat u er in een latere stap tussen kunt communiceren.

De eerste VM maken

Maak een VM met New-AzVM. In het volgende voorbeeld wordt een virtuele machine met de naam myVm1 gemaakt in het virtuele netwerk myVirtualNetwork1. Met -AsJob de optie wordt de VM op de achtergrond gemaakt, zodat u verder kunt gaan met de volgende stap. Wanneer u hier om wordt gevraagd, voert u de gebruikersnaam en het wachtwoord in die u wilt gebruiken om u aan te melden bij de VM.

New-AzVm `
  -ResourceGroupName "myResourceGroup" `
  -Location "East US" `
  -VirtualNetworkName "myVirtualNetwork1" `
  -SubnetName "Subnet1" `
  -ImageName "Win2016Datacenter" `
  -Name "myVm1" `
  -AsJob

De tweede VM maken

New-AzVm `
  -ResourceGroupName "myResourceGroup" `
  -Location "East US" `
  -VirtualNetworkName "myVirtualNetwork2" `
  -SubnetName "Subnet1" `
  -ImageName "Win2016Datacenter" `
  -Name "myVm2"

Het maken van de virtuele machine duurt een paar minuten. Ga pas verder met latere stappen als Azure de VM heeft gemaakt en uitvoer retourneert naar PowerShell.

Notitie

Azure biedt een standaard ip-adres voor uitgaande toegang voor Azure Virtual Machines dat niet is toegewezen aan een openbaar IP-adres of zich in de back-endpool van een interne Basic-Azure Load Balancer. Het standaardmechanisme voor uitgaand toegangs-IP biedt een uitgaand IP-adres dat niet kan worden geconfigureerd.

Zie Standaard uitgaande toegang in Azure voor meer informatie over standaard uitgaande toegang

Het standaard-IP-adres voor uitgaande toegang wordt uitgeschakeld wanneer een openbaar IP-adres wordt toegewezen aan de virtuele machine of als de virtuele machine met of zonder uitgaande regels in de back-Standard Load Balancer van een Standard Load Balancer wordt geplaatst. Als een Azure Virtual Network NAT-gatewayresource wordt toegewezen aan het subnet van de virtuele machine, wordt het standaard IP-adres voor uitgaande toegang uitgeschakeld.

Virtuele machines die zijn gemaakt door virtuele-machineschaalsets in de modus Flexibele orchestration hebben geen standaard uitgaande toegang.

Zie Using Source Network Address Translation (SNAT) for outbound connections (Bronnetwerkadresvertaling (SNAT) gebruiken voor uitgaande verbindingen) voormeer informatie over uitgaande verbindingen in Azure.

Communiceren tussen VM's

U kunt vanaf internet verbinding maken met het openbare IP-adres van een VM. Gebruik Get-AzPublicIpAddress om het openbare IP-adres van een virtuele machine op te halen. In het volgende voorbeeld wordt het openbare IP-adres van de VM myVm1 opgehaald:

Get-AzPublicIpAddress `
  -Name myVm1 `
  -ResourceGroupName myResourceGroup | Select IpAddress

Gebruik de volgende opdracht om vanaf uw lokale computer een extern-bureaubladsessie te maken met de VM myVm1. Vervang <publicIpAddress> door het IP-adres dat is geretourneerd met de vorige opdracht.

mstsc /v:<publicIpAddress>

Er Remote Desktop Protocol een RDP-bestand gemaakt, gedownload naar uw computer en geopend. Voer de gebruikersnaam en het wachtwoord in (mogelijk moet u Meer opties selecteren en vervolgens Een ander account gebruiken om de referenties op te geven die u hebt ingevoerd tijdens het maken van de VM) en klik vervolgens op OK. Er wordt mogelijk een certificaatwaarschuwing weergegeven tijdens het aanmelden. Klik op Ja of Doorgaan om door te gaan met de verbinding.

Schakel op de VM myVm1 de Internet Control Message Protocol (ICMP) in via de Windows-firewall, zodat u deze VM in een latere stap vanaf myVm2 kunt pingen met behulp van PowerShell:

New-NetFirewallRule –DisplayName "Allow ICMPv4-In" –Protocol ICMPv4

Hoewel ping wordt gebruikt om te communiceren tussen VM's in dit artikel, wordt het niet aanbevolen ICMP via Windows Firewall toe te staan voor productie-implementaties.

Maak verbinding met myVm2 door op myVm1 de volgende opdracht in te voeren vanaf een opdrachtprompt:

mstsc /v:10.1.0.4

Omdat u ping op myVm1 hebt ingeschakeld, kunt u deze nu pingen met ip-adres vanaf een opdrachtprompt op de VM myVm2:

ping 10.0.0.4

U ontvangt vier antwoorden. Verbreek de RDP-sessies met zowel myVm1 als myVm2.

Resources opschonen

Gebruik Remove-AzResourcegroup om de resourcegroep en alle resources die deze bevat te verwijderen wanneer u deze niet meer nodig hebt.

Remove-AzResourceGroup -Name myResourceGroup -Force

Volgende stappen

In dit artikel hebt u geleerd hoe u twee netwerken in dezelfde Azure-regio verbindt met peering voor virtuele netwerken. U kunt ook virtuele netwerken in verschillende ondersteunde regio's en in verschillende Azure-abonnementen 'peeren', en peering gebruiken om netwerkontwerpen met een stertopologie te maken. Zie voor meer informatie over virtueel-netwerkpeering Peering op virtueel netwerk en Virtueel-netwerkpeerings beheren.

U kunt uw eigen computer verbinden met een virtueel netwerk via een VPN en communiceren met resources in een virtueel netwerk of in virtuele peernetwerken. Zie scriptvoorbeelden voor herbruikbare scripts voor het voltooien van veel van de taken die worden behandeld in de artikelen over virtuele netwerken.