Verbinding maken virtuele netwerken met peering van 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
  • Communicatie tussen virtuele machines

Als u geen Azure-abonnement hebt, maakt u een gratis account voordat u begint.

Azure Cloud Shell

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 Cloud Shell-opdrachten 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 Uitproberen in de rechterbovenhoek van een code- of opdrachtblok. Als u Try It selecteert, wordt de code of opdracht niet automatisch gekopieerd naar Cloud Shell. Schermopname van een voorbeeld van Probeer het nu 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. Knop om Azure Cloud Shell te starten.
Klik op de knop Cloud Shell in het menu in de balk rechtsboven in de Azure-portal. Schermopname van de knop Cloud Shell in Azure Portal

Azure Cloud Shell gebruiken:

  1. Start Cloud Shell.

  2. Selecteer de knop Kopiëren op een codeblok (of opdrachtblok) om de code of opdracht te kopiëren.

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

  4. Selecteer Enter om de code of opdracht uit te voeren.

Als u PowerShell lokaal wilt installeren en gebruiken, is voor dit artikel versie 1.0.0 of hoger van de Azure PowerShell-module 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 gemaakt met de naam myVirtualNetwork1 met het adresvoorvoegsel 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 een adresvoorvoegsel 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 een adresvoorvoegsel 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 gekoppeld aan myVirtualNetwork2.

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 de PeeringState is gestart. De peering blijft 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 de PeeringState is Verbinding maken ed. Azure heeft ook de peeringstatus van de peering myVirtualNetwork1-myVirtualNetwork2 gewijzigd in Verbinding maken ed. Controleer of de peeringstatus voor de peering myVirtualNetwork1-myVirtualNetwork2 is gewijzigd in Verbinding maken ed 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 is Verbinding maken.

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 maakt u de VIRTUELE machine op de achtergrond, zodat u verder kunt gaan met de volgende stap. Voer desgevraagd de gebruikersnaam en het wachtwoord in waarmee u zich wilt aanmelden bij de virtuele machine.

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 VIRTUELE machine maakt en uitvoer retourneert naar PowerShell.

Notitie

Azure biedt een standaard ip-adres voor uitgaande toegang voor VM's waaraan geen openbaar IP-adres is toegewezen of zich in de back-endpool van een interne Azure-load balancer bevinden. Het standaard ip-mechanisme voor uitgaande toegang biedt een uitgaand IP-adres dat niet kan worden geconfigureerd.

Het standaard IP-adres voor uitgaande toegang is uitgeschakeld wanneer een van de volgende gebeurtenissen plaatsvindt:

  • Er wordt een openbaar IP-adres toegewezen aan de VIRTUELE machine.
  • De VIRTUELE machine wordt in de back-endpool van een standaard load balancer geplaatst, met of zonder uitgaande regels.
  • Er wordt een Azure NAT Gateway-resource toegewezen aan het subnet van de VIRTUELE machine.

Virtuele machines die u maakt met behulp van virtuele-machineschaalsets in de flexibele indelingsmodus, hebben geen standaardtoegang voor uitgaand verkeer.

Zie Voor meer informatie over uitgaande verbindingen in Azure standaard uitgaande toegang in Azure en SNAT (Source Network Address Translation) gebruiken voor uitgaande verbindingen.

Communicatie tussen virtuele machines

U kunt verbinding maken met het openbare IP-adres van een virtuele machine via internet. 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 een sessie met extern bureaublad te maken met de vm myVm1 vanaf uw lokale computer. Vervang <publicIpAddress> door het IP-adres dat is geretourneerd met de vorige opdracht.

mstsc /v:<publicIpAddress>

Er wordt een Remote Desktop Protocol-bestand (.rdp) gemaakt, gedownload naar uw computer en geopend. Voer de gebruikersnaam en het wachtwoord in (mogelijk moet u meer opties selecteren, vervolgens een ander account gebruiken, de referenties opgeven die u hebt ingevoerd bij het maken van de virtuele machine) en vervolgens op OK klikken. 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 het ICMP (Internet Control Message Protocol) via de Windows-firewall in, zodat u deze VM in een latere stap vanuit 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 de Windows Firewall voor productie-implementaties toe te staan.

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 hebt ingeschakeld op myVm1, kunt u deze nu pingen via een 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

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

Remove-AzResourceGroup -Name myResourceGroup -Force

Volgende stappen

In dit artikel hebt u geleerd hoe u twee netwerken in dezelfde Azure-regio verbindt met peering van 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 gekoppelde virtuele netwerken. Zie scriptvoorbeelden voor herbruikbare scripts voor het voltooien van veel van de taken die worden behandeld in de artikelen over het virtuele netwerk.