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. Het configureren van beide verbindingen heeft verschillende voordelen:

  • U kunt een site-naar-site-VPN instellen 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 of /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 instelling is alleen van toepassing op virtuele netwerken die zijn gekoppeld aan het privépeeringspad van Azure. Er is geen op VPN gebaseerde failoveroplossing voor services die toegankelijk zijn via Azure Microsoft-peering. Het ExpressRoute-circuit is altijd de primaire koppeling en gegevens stromen alleen via het site-naar-site-VPN-pad als het ExpressRoute-circuit mislukt. Als u asymmetrische routering wilt voorkomen, configureert u uw lokale netwerk om de voorkeur te geven aan het ExpressRoute-circuit via de site-naar-site-VPN door een hogere lokale voorkeur in te stellen voor de routes die via ExpressRoute worden 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, configureert u uw on-premises netwerk zodat 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 van 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 zo configureren dat sommige sites rechtstreeks verbinding maken met Azure via een site-naar-site-VPN, terwijl anderen verbinding maken via ExpressRoute.

Naast elkaar gebruiken

De stappen selecteren die u gaat gebruiken

Er zijn twee verschillende procedures waaruit u kunt kiezen. De configuratieprocedure die u selecteert, is afhankelijk van of u een bestaand virtueel netwerk hebt of een nieuw netwerk moet maken.

  • Ik heb geen virtueel netwerk 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 virtueel resource manager-implementatiemodelnetwerk.

    Als u al een virtueel netwerk hebt met een bestaande site-naar-site-VPN- of ExpressRoute-verbinding en het gatewaysubnetvoorvoegsel /28 of langer is (/29, /30, enzovoort), moet u de bestaande gateway verwijderen. De stappen voor het configureren van naast elkaar bestaande verbindingen voor een bestaand virtueel netwerk begeleiden u bij het verwijderen van de gateway en het maken van nieuwe ExpressRoute- en site-naar-site-VPN-verbindingen.

    Het verwijderen en opnieuw maken van uw gateway veroorzaakt 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 ingesteld.

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 begeleidt u bij het maken van een virtueel netwerk en het configureren van naast elkaar bestaande site-naar-site-VPN- en ExpressRoute-verbindingen. De cmdlets die in deze configuratie worden gebruikt, kunnen verschillen van de cmdlets waarmee u bekend bent, dus zorg ervoor dat u de opgegeven cmdlets gebruikt.

  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 subnetten.

    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 uw site-naar-site-VPN-gateway. Zie Een virtueel netwerk configureren met een site-naar-site-verbinding voor meer informatie over de configuratie van de VPN-gateway. De GatewaySku wordt ondersteund voor VPNGw1-, VpnGw2-, VpnGw3-, Standard- en HighPerformance VPN-gateways. 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 de 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. In plaats daarvan kunt u de instellingen van 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, configureert u de statische routes als volgt:

    $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 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 ExpressRoute-circuits.

  9. Configureer Azure Privépeering via het ExpressRoute-circuit. Zie Peering configureren voor meer informatie over het configureren van persoonlijke Azure-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
  1. Koppel de ExpressRoute-gateway aan het ExpressRoute-circuit. Nadat u deze stap hebt 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