Delen via


Gelijktijdige ExpressRoute- en site-naar-site-verbindingen configureren met behulp van PowerShell

Dit artikel helpt u bij het configureren van ExpressRoute- en site-naar-site-VPN-verbindingen die naast elkaar bestaan. De mogelijkheid om site-naar-site-VPN en ExpressRoute te configureren heeft verschillende voordelen. U kunt site-naar-site-VPN configureren als een beveiligd failoverpad voor ExpressRoute of site-naar-site-VPN's gebruiken om verbinding te maken met sites die niet zijn verbonden via ExpressRoute. In dit artikel gaan we in op de stappen voor het configureren van beide scenario's. Dit artikel is van toepassing op het Resource Manager-implementatiemodel.

Het configureren van naast elkaar bestaande site-naar-site-VPN- en ExpressRoute-verbindingen heeft verschillende voordelen:

  • U kunt een site-naar-site-VPN configureren als een beveiligd failoverpad voor ExpressRoute.
  • U kunt ook site-naar-site-VPN's gebruiken om verbinding te maken met sites die niet zijn verbonden via ExpressRoute.

In dit artikel worden de stappen beschreven voor het configureren van beide scenario's. Dit artikel is van toepassing op het Resource Manager-implementatiemodel en maakt gebruik van PowerShell. U kunt deze scenario's ook configureren met behulp van Azure Portal, hoewel de documentatie nog niet beschikbaar is. U kunt beide gateways eerst configureren. Normaal gesproken ondervindt u geen downtime bij het toevoegen van een nieuwe gateway of gatewayverbinding.

Notitie

Als u een site-naar-site-VPN wilt maken via een ExpressRoute-circuit, raadpleegt u site-naar-site-VPN via Microsoft-peering.

Limieten en beperkingen

  • Alleen een op route gebaseerde VPN-gateway wordt ondersteund. U moet een op route gebaseerde VPN-gateway gebruiken. U kunt ook een op route gebaseerde VPN-gateway gebruiken met een VPN-verbinding die is geconfigureerd voor op beleid gebaseerde verkeersselectors, zoals beschreven in Verbinding maken met meerdere op beleid gebaseerde VPN-apparaten.
  • Co-existentieconfiguraties van ExpressRoute-VPN Gateway worden niet ondersteund met openbare IP-adressen van de Basic-SKU.
  • Als u transitroutering tussen ExpressRoute en VPN wilt gebruiken, moet de ASN van Azure VPN Gateway zijn ingesteld op 65515 en moet Azure Route Server worden gebruikt. Azure VPN Gateway ondersteunt het BGP-routeringsprotocol. Als ExpressRoute en Azure VPN samenwerken, moet u het autonome systeemnummer van uw Azure VPN-gateway behouden op de standaardwaarde 65515. Als u eerder een andere ASN dan 65515 hebt geselecteerd en u de instelling wijzigt in 65515, moet u de VPN-gateway opnieuw instellen om de instelling van kracht te laten worden.
  • Het gatewaysubnet moet /27 of een korter voorvoegsel zijn, zoals /26, /25, of u ontvangt een foutbericht wanneer u de gateway van het virtuele ExpressRoute-netwerk toevoegt.

Configuratie-ontwerpen

Een site-naar-site-VPN configureren als failoverpad voor ExpressRoute

U kunt een site-naar-site-VPN-verbinding configureren als back-up voor uw ExpressRoute-verbinding. Deze verbinding geldt alleen voor virtuele netwerken die zijn gekoppeld aan het pad voor Azure Privépeering. Er is geen op VPN gebaseerde failoveroplossing voor services die toegankelijk zijn via Azure Microsoft-peering. Het ExpressRoute-circuit is altijd de primaire koppeling. Gegevens stromen alleen via het site-naar-site-VPN-pad als het ExpressRoute-circuit uitvalt. Om asymmetrische routering te voorkomen, moet uw lokale netwerkconfiguratie ook de voorkeur geven aan het ExpressRoute-circuit via de site-naar-site-VPN. U kunt het ExpressRoute-pad de voorkeur geven door een hogere lokale voorkeur in te stellen voor de routes die de ExpressRoute heeft ontvangen.

Notitie

  • Als ExpressRoute Microsoft-peering is ingeschakeld, kunt u het openbare IP-adres van uw Azure VPN-gateway ontvangen op de ExpressRoute-verbinding. Als u uw site-naar-site-VPN-verbinding wilt instellen als back-up, moet u uw on-premises netwerk zo configureren dat de VPN-verbinding naar internet wordt gerouteerd.

  • Hoewel het ExpressRoute-circuitpad de voorkeur heeft boven de site-naar-site-VPN wanneer beide routes hetzelfde zijn, gebruikt Azure de langste voorvoegselovereenkomst om de route naar het doel van het pakket te kiezen.

Diagram met een site-naar-site-VPN-verbinding als back-up voor ExpressRoute.

Een site-naar-site-VPN configureren om verbinding te maken met sites die niet zijn verbonden via ExpressRoute

U kunt uw netwerk configureren waarbij sommige sites rechtstreeks verbinding maken met Azure via site-naar-site-VPN en sommige sites verbinding maken via ExpressRoute.

Naast elkaar gebruiken

De stappen selecteren die u gaat gebruiken

Er zijn twee verschillende procedures waaruit u kunt kiezen. Welke configuratieprocedure u selecteert, is afhankelijk van het gegeven of u een nieuw virtueel netwerk wilt maken of een bestaand virtueel netwerk hebt waarmee u verbinding wilt maken.

  • Ik heb geen VNet en moet er een maken.

    Als u nog geen virtueel netwerk hebt, begeleidt deze procedure u bij het maken van een nieuw virtueel netwerk met behulp van het Resource Manager-implementatiemodel en het maken van nieuwe ExpressRoute- en site-naar-site-VPN-verbindingen.

  • Ik heb al een VNet van het Resource Manager-implementatiemodel.

    Mogelijk hebt u al een virtueel netwerk met een bestaande site-naar-site-VPN-verbinding of ExpressRoute-verbinding. In dit scenario moet u de bestaande gateway verwijderen als het voorvoegsel van het gatewaysubnet /28 of langer is (/29, /30, enzovoort). De stappen voor het configureren van naast elkaar bestaande verbindingen voor een al bestaande VNet-sectie helpen u bij het verwijderen van de gateway en het maken van nieuwe ExpressRoute- en site-naar-site-VPN-verbindingen.

    Als u uw gateway verwijdert en opnieuw maakt, ondervindt u downtime voor uw cross-premises verbindingen. Uw VM's en services kunnen echter verbinding maken via internet terwijl u uw gateway configureert als ze hiervoor zijn geconfigureerd.

Voordat u begint

In de stappen en voorbeelden in dit artikel wordt gebruikgemaakt van Azure PowerShell Az-modules. Zie Azure PowerShell installeren als u de Az-modules lokaal op uw computer wilt installeren. Zie Introductie van de nieuwe Az-module van Azure PowerShell voor meer informatie over de Az-module. PowerShell-cmdlets worden regelmatig bijgewerkt. Als u niet de nieuwste versie uitvoert, kunnen de in de instructies opgegeven waarden mislukken. Gebruik de cmdlet Get-Module -ListAvailable Az om de geïnstalleerde versies van PowerShell op uw systeem te vinden.

U kunt Azure Cloud Shell gebruiken om de meeste PowerShell-cmdlets en CLI-opdrachten uit te voeren. U hoeft Azure PowerShell of CLI niet lokaal te installeren. Azure Cloud Shell is een gratis, interactieve shell waarop algemene Azure-hulpprogramma's vooraf zijn geïnstalleerd. Het is geconfigureerd voor gebruik met uw account. Als u een code uit dit artikel wilt uitvoeren in Azure Cloud Shell, opent u een Cloud Shell-sessie, gebruikt u de knop Kopiëren in een codeblok om de code te kopiëren en plakt u deze als volgt in de Cloud Shell-sessie: in Windows en Linux met Ctrl+Shift+V; in macOS met Cmd+Shift+V. Geplakte tekst wordt niet automatisch uitgevoerd. Druk op Enter om code uit te voeren.

U kunt Cloud Shell op verschillende manieren starten:

Optie Koppeling
Klik op Nu uitproberen in de rechterbovenhoek van een codeblok. Cloud Shell in dit artikel
Open Cloud Shell in uw browser. https://shell.azure.com/powershell
Klik op de knop Cloud Shell in het menu rechtsboven in Azure Portal. Cloud Shell in de portal

Deze procedure helpt u bij het maken van een VNet- en site-naar-site- en ExpressRoute-verbindingen die naast elkaar bestaan. De cmdlets die u voor deze configuratie gebruikt, kunnen enigszins afwijken van de cmdlets waarmee u bekend bent. Zorg ervoor dat u de cmdlets gebruikt die in deze instructies worden vermeld.

  1. Meld u aan en selecteer uw abonnement.

    Als u Azure Cloud Shell gebruikt, wordt u automatisch aangemeld bij uw Azure-account nadat u op Probeer het nu hebt geklikt. Als u zich lokaal wil aanmelden, opent u de PowerShell-console met verhoogde rechten en voert u de cmdlet uit om verbinding te maken.

    Connect-AzAccount
    

    Als u meer dan één abonnement hebt, haalt u een lijst met uw abonnementen op.

    Get-AzSubscription
    

    Geef het abonnement op dat u wilt gebruiken.

    Select-AzSubscription -SubscriptionName "Name of subscription"
    
  2. Definieer variabelen en maak een resourcegroep.

    $location = "Central US"
    $resgrp = New-AzResourceGroup -Name "ErVpnCoex" -Location $location
    $VNetASN = 65515
    
  3. Maak een virtueel netwerk met inbegrip van de GatewaySubnet. Zie Een virtueel netwerk maken voor meer informatie over het maken van een virtueel netwerk. Zie Een subnet maken voor meer informatie over het maken van subnets.

    Belangrijk

    Het GatewaySubnet moet een /27 of een korter voorvoegsel zijn, zoals /26 of /25.

    Maak een nieuw virtueel netwerk.

    $vnet = New-AzVirtualNetwork -Name "CoexVnet" -ResourceGroupName $resgrp.ResourceGroupName -Location $location -AddressPrefix "10.200.0.0/16"
    

    Voeg twee subnetten toe met de naam App en GatewaySubnet.

    Add-AzVirtualNetworkSubnetConfig -Name "App" -VirtualNetwork $vnet -AddressPrefix "10.200.1.0/24"
    Add-AzVirtualNetworkSubnetConfig -Name "GatewaySubnet" -VirtualNetwork $vnet -AddressPrefix "10.200.255.0/24"
    

    Sla de configuratie van het virtuele netwerk op.

    $vnet = Set-AzVirtualNetwork -VirtualNetwork $vnet
    
  4. Maak vervolgens uw site-naar-site-VPN-gateway. Zie Een VNet configureren met een site-naar-site-verbinding voor meer informatie over de configuratie van de VPN-gateway. De GatewaySku wordt alleen ondersteund voor de VPN-gateways VpnGw1, VpnGw2, VpnGw3, Standard en HighPerformance. Co-existentieconfiguraties voor ExpressRoute-VPN Gateway worden niet ondersteund in de Basic-SKU. Het VpnType moet RouteBased zijn.

    $gwSubnet = Get-AzVirtualNetworkSubnetConfig -Name "GatewaySubnet" -VirtualNetwork $vnet
    $gwIP = New-AzPublicIpAddress -Name "VPNGatewayIP" -ResourceGroupName $resgrp.ResourceGroupName -Location $location -AllocationMethod Dynamic
    $gwConfig = New-AzVirtualNetworkGatewayIpConfig -Name "VPNGatewayIpConfig" -SubnetId $gwSubnet.Id -PublicIpAddressId $gwIP.Id
    New-AzVirtualNetworkGateway -Name "VPNGateway" -ResourceGroupName $resgrp.ResourceGroupName -Location $location -IpConfigurations $gwConfig -GatewayType "Vpn" -VpnType "RouteBased" -GatewaySku "VpnGw1"
    

    De Azure VPN-gateway ondersteunt het BGP-routeringsprotocol. U kunt ASN (AS-nummer) voor het virtuele netwerk opgeven door de -Asn vlag toe te voegen in de volgende opdracht. Als u de Asn parameter niet opgeeft, wordt het AS-getal ingesteld op 65515.

    $azureVpn = New-AzVirtualNetworkGateway -Name "VPNGateway" -ResourceGroupName $resgrp.ResourceGroupName -Location $location -IpConfigurations $gwConfig -GatewayType "Vpn" -VpnType "RouteBased" -GatewaySku "VpnGw1"
    

    Notitie

    Voor naast elkaar bestaande gateways moet u de standaard-ASN van 65515 gebruiken. Zie limieten en beperkingen voor meer informatie.

    U vindt het BGP-peering-IP-adres en het AS-nummer dat Azure gebruikt voor de VPN-gateway door deze uit te voeren $azureVpn.BgpSettings.BgpPeeringAddress en $azureVpn.BgpSettings.Asn. Zie BGP configureren voor Azure VPN-gateway voor meer informatie.

  5. Maak een lokaal exemplaar van de VPN-gateway van uw site. Deze opdracht wordt niet gebruikt om uw on-premises VPN-gateway te configureren. Met deze opdracht kunt u de instellingen voor de lokale gateway opgeven, zoals het openbare IP-adres en de on-premises-adresruimte, zodat de Azure VPN-gateway er verbinding mee kan maken.

    Als uw lokale VPN-apparaat alleen statische routering ondersteunt, kunt u de statische routes op de volgende manier configureren:

    $MyLocalNetworkAddress = @("10.100.0.0/16","10.101.0.0/16","10.102.0.0/16")
    $localVpn = New-AzLocalNetworkGateway -Name "LocalVPNGateway" -ResourceGroupName $resgrp.ResourceGroupName -Location $location -GatewayIpAddress *<Public IP>* -AddressPrefix $MyLocalNetworkAddress
    

    Als uw lokale VPN-apparaat de BGP ondersteunt en u dynamische routering wilt inschakelen, moet u het IP-adres van de BGP-peering en het AS-nummer van uw lokale VPN-apparaat kennen.

    $localVPNPublicIP = "<Public IP>"
    $localBGPPeeringIP = "<Private IP for the BGP session>"
    $localBGPASN = "<ASN>"
    $localAddressPrefix = $localBGPPeeringIP + "/32"
    $localVpn = New-AzLocalNetworkGateway -Name "LocalVPNGateway" -ResourceGroupName $resgrp.ResourceGroupName -Location $location -GatewayIpAddress $localVPNPublicIP -AddressPrefix $localAddressPrefix -BgpPeeringAddress $localBGPPeeringIP -Asn $localBGPASN
    
  6. Configureer het lokale VPN-apparaat om verbinding te maken met de nieuwe Azure VPN-gateway. Zie VPN-apparaatconfiguratie voor meer informatie over het configureren van een VPN-apparaat.

  7. Koppel de site-naar-site-VPN-gateway in Azure aan de lokale gateway.

    $azureVpn = Get-AzVirtualNetworkGateway -Name "VPNGateway" -ResourceGroupName $resgrp.ResourceGroupName
    New-AzVirtualNetworkGatewayConnection -Name "VPNConnection" -ResourceGroupName $resgrp.ResourceGroupName -Location $location -VirtualNetworkGateway1 $azureVpn -LocalNetworkGateway2 $localVpn -ConnectionType IPsec -SharedKey <yourkey>
    
  8. Als u verbinding maakt met een bestaand ExpressRoute-circuit, slaat u stap 8 & 9 over en gaat u naar stap 10. Configureer ExpressRoute-circuits. Zie Een ExpressRoute-circuit maken voor meer informatie over het configureren van een ExpressRoute-circuit.

  9. Configureer Azure Privépeering via het ExpressRoute-circuit. Zie Peering configureren voor meer informatie over het configureren van Azure Privépeering via het ExpressRoute-circuit

  10. Maak een ExpressRoute-gateway. Zie ExpressRoute-gatewayconfiguratie voor meer informatie over de configuratie van de ExpressRoute-gateway. De GatewaySKU moet Standard, HighPerformance of UltraPerformance zijn.

    $gwSubnet = Get-AzVirtualNetworkSubnetConfig -Name "GatewaySubnet" -VirtualNetwork $vnet
    $gwIP = New-AzPublicIpAddress -Name "ERGatewayIP" -ResourceGroupName $resgrp.ResourceGroupName -Location $location -AllocationMethod Dynamic
    $gwConfig = New-AzVirtualNetworkGatewayIpConfig -Name "ERGatewayIpConfig" -SubnetId $gwSubnet.Id -PublicIpAddressId $gwIP.Id
    $gw = New-AzVirtualNetworkGateway -Name "ERGateway" -ResourceGroupName $resgrp.ResourceGroupName -Location $location -IpConfigurations $gwConfig -GatewayType "ExpressRoute" -GatewaySku Standard
    
  11. Koppel de ExpressRoute-gateway aan het ExpressRoute-circuit. Nadat deze stap is voltooid, wordt de verbinding tussen uw on-premises netwerk en Azure tot stand gebracht via ExpressRoute. Zie VNets koppelen aan ExpressRoute voor meer informatie over de koppelingsbewerking.

    $ckt = Get-AzExpressRouteCircuit -Name "YourCircuit" -ResourceGroupName "YourCircuitResourceGroup"
    New-AzVirtualNetworkGatewayConnection -Name "ERConnection" -ResourceGroupName $resgrp.ResourceGroupName -Location $location -VirtualNetworkGateway1 $gw -PeerId $ckt.Id -ConnectionType ExpressRoute
    

Punt-naar-site-configuratie toevoegen aan de VPN-gateway

U kunt deze stappen volgen om een punt-naar-site-configuratie toe te voegen aan uw VPN-gateway in een co-existentie-installatie. Als u het VPN-basiscertificaat wilt uploaden, moet u PowerShell lokaal installeren op uw computer of Azure Portal gebruiken.

  1. Voeg een VPN-clientadresgroep toe.

    $azureVpn = Get-AzVirtualNetworkGateway -Name "VPNGateway" -ResourceGroupName $resgrp.ResourceGroupName
    Set-AzVirtualNetworkGateway -VirtualNetworkGateway $azureVpn -VpnClientAddressPool "10.251.251.0/24"
    
  2. Upload het VPN-basiscertificaat naar Azure voor uw VPN-gateway. In dit voorbeeld wordt ervan uitgegaan dat het basiscertificaat wordt opgeslagen op de lokale computer waarop de volgende PowerShell-cmdlets worden uitgevoerd en dat u PowerShell lokaal uitvoert. U kunt het certificaat ook uploaden met behulp van Azure Portal.

    $p2sCertFullName = "RootErVpnCoexP2S.cer" 
    $p2sCertMatchName = "RootErVpnCoexP2S" 
    $p2sCertToUpload=get-childitem Cert:\CurrentUser\My | Where-Object {$_.Subject -match $p2sCertMatchName} 
    if ($p2sCertToUpload.count -eq 1){write-host "cert found"} else {write-host "cert not found" exit} 
    $p2sCertData = [System.Convert]::ToBase64String($p2sCertToUpload.RawData) 
    Add-AzVpnClientRootCertificate -VpnClientRootCertificateName $p2sCertFullName -VirtualNetworkGatewayname $azureVpn.Name -ResourceGroupName $resgrp.ResourceGroupName -PublicCertData $p2sCertData
    

Zie Een punt-naar-site-verbinding configureren voor meer informatie over punt-naar-site-VPN.

Transitroutering tussen ExpressRoute en Azure VPN inschakelen

Als u connectiviteit wilt inschakelen tussen een van uw lokale netwerken die is verbonden met ExpressRoute en een ander van uw lokale netwerk dat is verbonden met een site-naar-site-VPN-verbinding, moet u Azure Route Server instellen.

Volgende stappen

Voor meer informatie over ExpressRoute raadpleegt u de Veelgestelde vragen over ExpressRoute.