Ansluta ett virtuellt nätverk till en ExpressRoute-krets med Hjälp av Azure PowerShell
Den här artikeln hjälper dig att länka virtuella nätverk (VNet) till Azure ExpressRoute-kretsar med hjälp av Resource Manager-distributionsmodellen och PowerShell. Virtuella nätverk kan antingen finnas i samma prenumeration eller en del av en annan prenumeration. Den här självstudien visar också hur du uppdaterar en länk till ett virtuellt nätverk.
Förutsättningar
Granska kraven, routningskraven och arbetsflödena innan du påbörjar konfigurationen.
Du måste ha en aktiv ExpressRoute-krets.
- Följ anvisningarna för att skapa en ExpressRoute-krets och få kretsen aktiverad av anslutningsleverantören.
- Se till att du har konfigurerat azure-privat peering för din krets. Se artikeln konfigurera routning för routningsinstruktioner.
- Se till att privat Azure-peering konfigureras och upprättar BGP-peering mellan ditt nätverk och Microsoft för anslutning från slutpunkt till slutpunkt.
- Se till att du har ett virtuellt nätverk och en virtuell nätverksgateway skapad och helt etablerad. Följ anvisningarna för att skapa en virtuell nätverksgateway för ExpressRoute. En virtuell nätverksgateway för ExpressRoute använder GatewayType
ExpressRoute
, inte VPN.
Du kan länka upp till 10 virtuella nätverk till en ExpressRoute-standardkrets. Alla virtuella nätverk måste finnas i samma geopolitiska region när du använder en ExpressRoute-standardkrets.
Ett enda virtuellt nätverk kan länkas till upp till 16 ExpressRoute-kretsar. Använd stegen i den här artikeln för att skapa ett nytt anslutningsobjekt för varje ExpressRoute-krets som du ansluter till. ExpressRoute-kretsarna kan finnas i samma prenumeration, olika prenumerationer eller en blandning av båda.
Om du aktiverar ExpressRoute Premium-tillägget kan du länka virtuella nätverk utanför den geopolitiska regionen i ExpressRoute-kretsen. Med premiumtillägget kan du ansluta fler än 10 virtuella nätverk till din ExpressRoute-krets beroende på vilken bandbredd som valts. Mer information om premiumtillägget finns i Vanliga frågor och svar .
För att kunna skapa anslutningen från ExpressRoute-kretsen till den virtuella ExpressRoute-målnätverksgatewayen måste antalet adressutrymmen som annonseras från de lokala eller peerkopplade virtuella nätverken vara lika med eller mindre än 200. När anslutningen har skapats kan du lägga till fler adressutrymmen, upp till 1 000, i de lokala eller peerkopplade virtuella nätverken.
Läs vägledningen för anslutning mellan virtuella nätverk via ExpressRoute.
Arbeta med Azure PowerShell
Stegen och exemplen i den här artikeln använder Azure PowerShell Az-moduler. Information om hur du installerar Az-modulerna lokalt på datorn finns i Installera Azure PowerShell. Mer information om den nya Az-modulen finns i Introduktion till den nya Azure PowerShell Az-modulen. PowerShell-cmdletar uppdateras ofta. Om du inte kör den senaste versionen kan de värden som anges i anvisningarna misslyckas. Om du vill hitta de installerade versionerna av PowerShell i systemet använder du cmdleten Get-Module -ListAvailable Az
.
Du kan använda Azure Cloud Shell för att köra de flesta PowerShell-cmdletar och CLI-kommandon i stället för att installera Azure PowerShell eller CLI lokalt. Azure Cloud Shell är ett kostnadsfritt interaktivt gränssnitt som har vanliga Azure-verktyg förinstallerade och är konfigurerade att användas med ditt konto. Om du vill köra kod som finns i den här artikeln i Azure Cloud Shell öppnar du en Cloud Shell-session, använder knappen Kopiera i ett kodblock för att kopiera koden och klistrar in den i Cloud Shell-sessionen med Ctrl+Skift+V i Windows och Linux eller Cmd+Skift+V på macOS. Klistrad text körs inte automatiskt, tryck på Retur för att köra kod.
Det finns flera olika sätt att starta Cloud Shell:
Alternativ | Länk |
---|---|
Klicka på Prova i det övre högra hörnet av ett kodblock. | |
Öppna Cloud Shell i din webbläsare. | |
Klicka på knappen Cloud Shell på menyn längst upp till höger på Azure Portal. | |
Ansluta ett virtuellt nätverk
Maximal återhämtning (rekommenderas): ger den högsta återhämtningsnivån för ditt virtuella nätverk. Den tillhandahåller två redundanta anslutningar från den virtuella nätverksgatewayen till två olika ExpressRoute-kretsar på olika ExpressRoute-platser.
Klona skriptet
Om du vill skapa maximal återhämtningsanslutningar klonar du installationsskriptet från GitHub.
# Clone the setup script from GitHub.
git clone https://github.com/Azure-Samples/azure-docs-powershell-samples/
# Change to the directory where the script is located.
CD azure-docs-powershell-samples/expressroute/
Kör skriptet New-AzHighAvailabilityVirtualNetworkGatewayConnections.ps1 för att skapa anslutningar med hög tillgänglighet. I följande exempel visas hur du skapar två nya anslutningar till två ExpressRoute-kretsar.
$SubscriptionId = Get-AzureSubscription -SubscriptionName "<SubscriptionName>"
$circuit1 = Get-AzExpressRouteCircuit -Name "MyCircuit1" -ResourceGroupName "MyRG"
$circuit2 = Get-AzExpressRouteCircuit -Name "MyCircuit2" -ResourceGroupName "MyRG"
$gw = Get-AzVirtualNetworkGateway -Name "ExpressRouteGw" -ResourceGroupName "MyRG"
highAvailabilitySetup/New-AzHighAvailabilityVirtualNetworkGatewayConnections.ps1 -SubscriptionId $SubscriptionId -ResourceGroupName "MyRG" -Location "West EU" -Name1 "ERConnection1" -Name2 "ERConnection2" -Peer1 $circuit1.Peerings[0] -Peer2 $circuit2.Peerings[0] -RoutingWeight1 10 -RoutingWeight2 10 -VirtualNetworkGateway1 $gw
Om du vill skapa en ny anslutning och använda en befintlig anslutning kan du använda följande exempel. Det här exemplet skapar en ny anslutning till en andra ExpressRoute-krets och använder en befintlig anslutning till den första ExpressRoute-kretsen.
$SubscriptionId = Get-AzureSubscription -SubscriptionName "<SubscriptionName>"
$circuit1 = Get-AzExpressRouteCircuit -Name "MyCircuit1" -ResourceGroupName "MyRG"
$gw = Get-AzVirtualNetworkGateway -Name "ExpressRouteGw" -ResourceGroupName "MyRG"
$connection = Get-AzVirtualNetworkGatewayConnection -Name "ERConnection1" -ResourceGroupName "MyRG"
highAvailabilitySetup/New-AzHighAvailabilityVirtualNetworkGatewayConnections.ps1 -SubscriptionId $SubscriptionId -ResourceGroupName "MyRG" -Location "West EU" -Name2 "ERConnection2" -Peer2 $circuit1.Peerings[0] -RoutingWeight2 10 -VirtualNetworkGateway1 $gw -ExistingVirtualNetworkGatewayConnection $connection
Anslut ett virtuellt nätverk i en annan prenumeration till en krets
Du kan dela en ExpressRoute-krets i flera prenumerationer. Följande bild visar ett enkelt schema över hur delning fungerar för ExpressRoute-kretsar i flera prenumerationer.
Kommentar
Det går inte att ansluta virtuella nätverk mellan nationella Azure-moln och offentliga Azure-moln. Du kan bara länka virtuella nätverk från olika prenumerationer i samma moln.
Vart och ett av de mindre molnen i det stora molnet används för att representera prenumerationer som tillhör olika avdelningar inom en organisation. Var och en av avdelningarna i organisationen använder sin egen prenumeration för att distribuera sina tjänster , men de kan dela en enda ExpressRoute-krets för att ansluta tillbaka till ditt lokala nätverk. En enda avdelning (i det här exemplet: IT) kan äga ExpressRoute-kretsen. Andra prenumerationer inom organisationen kan använda ExpressRoute-kretsen.
Kommentar
Anslutningsavgifter och bandbreddsavgifter för ExpressRoute-kretsen tillämpas på prenumerationsägaren. Alla virtuella nätverk har samma bandbredd.
Administration – kretsägare och kretsanvändare
Kretsägaren är en auktoriserad Power User för ExpressRoute-kretsresursen. Kretsägaren kan skapa auktoriseringar som kan lösas in av "kretsanvändare". Kretsanvändare är ägare till virtuella nätverksgatewayer som inte ingår i samma prenumeration som ExpressRoute-kretsen. Kretsanvändare kan lösa in auktoriseringar (en auktorisering per virtuellt nätverk).
Kretsägaren har behörighet att ändra och återkalla auktoriseringar när som helst. Om du återkallar en auktorisering tas alla länkanslutningar bort från prenumerationen vars åtkomst återkallades.
Kommentar
Kretsägaren är inte en inbyggd RBAC-roll eller definierad på ExpressRoute-resursen. Definitionen av kretsägaren är vilken roll som helst med följande åtkomst:
- Microsoft.Network/expressRouteCircuits/authorizations/write
- Microsoft.Network/expressRouteCircuits/authorizations/read
- Microsoft.Network/expressRouteCircuits/authorizations/delete
Detta inkluderar inbyggda roller som Deltagare, Ägare och Nätverksdeltagare. Detaljerad beskrivning för de olika inbyggda rollerna.
Kretsägaråtgärder
Skapa en auktorisering
Kretsägaren skapar en auktorisering som skapar en auktoriseringsnyckel som ska användas av en kretsanvändare för att ansluta sina virtuella nätverksgatewayer till ExpressRoute-kretsen. En auktorisering är endast giltig för en anslutning.
Följande cmdlet-kodfragment visar hur du skapar en auktorisering:
$circuit = Get-AzExpressRouteCircuit -Name "MyCircuit" -ResourceGroupName "MyRG"
Add-AzExpressRouteCircuitAuthorization -ExpressRouteCircuit $circuit -Name "MyAuthorization1"
Set-AzExpressRouteCircuit -ExpressRouteCircuit $circuit
$circuit = Get-AzExpressRouteCircuit -Name "MyCircuit" -ResourceGroupName "MyRG"
$auth1 = Get-AzExpressRouteCircuitAuthorization -ExpressRouteCircuit $circuit -Name "MyAuthorization1"
Svaret på föregående kommandon innehåller auktoriseringsnyckeln och status:
Name : MyAuthorization1
Id : /subscriptions/&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&/resourceGroups/ERCrossSubTestRG/providers/Microsoft.Network/expressRouteCircuits/CrossSubTest/authorizations/MyAuthorization1
Etag : &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
AuthorizationKey : ####################################
AuthorizationUseStatus : Available
ProvisioningState : Succeeded
Granska auktoriseringar
Kretsägaren kan granska alla auktoriseringar som utfärdas på en viss krets genom att köra följande cmdlet:
$circuit = Get-AzExpressRouteCircuit -Name "MyCircuit" -ResourceGroupName "MyRG"
$authorizations = Get-AzExpressRouteCircuitAuthorization -ExpressRouteCircuit $circuit
Lägga till auktoriseringar
Kretsägaren kan lägga till auktoriseringar med hjälp av följande cmdlet:
$circuit = Get-AzExpressRouteCircuit -Name "MyCircuit" -ResourceGroupName "MyRG"
Add-AzExpressRouteCircuitAuthorization -ExpressRouteCircuit $circuit -Name "MyAuthorization2"
Set-AzExpressRouteCircuit -ExpressRouteCircuit $circuit
$circuit = Get-AzExpressRouteCircuit -Name "MyCircuit" -ResourceGroupName "MyRG"
$authorizations = Get-AzExpressRouteCircuitAuthorization -ExpressRouteCircuit $circuit
Ta bort auktoriseringar
Kretsägaren kan återkalla/ta bort auktoriseringar till användaren genom att köra följande cmdlet:
Remove-AzExpressRouteCircuitAuthorization -Name "MyAuthorization2" -ExpressRouteCircuit $circuit
Set-AzExpressRouteCircuit -ExpressRouteCircuit $circuit
Kretsanvändaråtgärder
Kretsanvändaren behöver peer-ID och en auktoriseringsnyckel från kretsägaren. Auktoriseringsnyckeln är ett GUID.
Peer-ID kan kontrolleras från följande kommando:
Get-AzExpressRouteCircuit -Name "MyCircuit" -ResourceGroupName "MyRG"
Så här löser du in en anslutningsauktorisering
Kretsanvändaren kan köra följande cmdlet för att lösa in en länkauktorisering:
$id = "/subscriptions/********************************/resourceGroups/ERCrossSubTestRG/providers/Microsoft.Network/expressRouteCircuits/MyCircuit"
$gw = Get-AzVirtualNetworkGateway -Name "ExpressRouteGw" -ResourceGroupName "MyRG"
$connection = New-AzVirtualNetworkGatewayConnection -Name "ERConnection" -ResourceGroupName "RemoteResourceGroup" -Location "East US" -VirtualNetworkGateway1 $gw -PeerId $id -ConnectionType ExpressRoute -AuthorizationKey "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^"
Så här släpper du en anslutningsauktorisering
Du kan frigöra en auktorisering genom att ta bort anslutningen som länkar ExpressRoute-kretsen till det virtuella nätverket.
Ändra en anslutning till ett virtuellt nätverk
Du kan uppdatera vissa egenskaper för en virtuell nätverksanslutning.
Uppdatera anslutningsvikten
Det virtuella nätverket kan anslutas till flera ExpressRoute-kretsar. Du kan få samma prefix från mer än en ExpressRoute-krets. Om du vill välja vilken anslutning som ska skicka trafik som är avsedd för det här prefixet kan du ändra RoutingWeight för en anslutning. Trafik skickas på anslutningen med den högsta RoutingWeight.
$connection = Get-AzVirtualNetworkGatewayConnection -Name "MyVirtualNetworkConnection" -ResourceGroupName "MyRG"
$connection.RoutingWeight = 100
Set-AzVirtualNetworkGatewayConnection -VirtualNetworkGatewayConnection $connection
RoutingWeight-intervallet är 0 till 32 000. Standardvärdet är 0.
Configure ExpressRoute FastPath
Du kan aktivera ExpressRoute FastPath om din virtuella nätverksgateway är Ultra Performance eller ErGw3AZ. FastPath förbättrar prestanda för datasökvägar, till exempel paket per sekund och anslutningar per sekund mellan ditt lokala nätverk och ditt virtuella nätverk.
Konfigurera FastPath för en ny anslutning
$circuit = Get-AzExpressRouteCircuit -Name "MyCircuit" -ResourceGroupName "MyRG"
$gw = Get-AzVirtualNetworkGateway -Name "MyGateway" -ResourceGroupName "MyRG"
$connection = New-AzVirtualNetworkGatewayConnection -Name "MyConnection" -ResourceGroupName "MyRG" -ExpressRouteGatewayBypass -VirtualNetworkGateway1 $gw -PeerId $circuit.Id -ConnectionType ExpressRoute -Location "MyLocation"
Uppdatera en befintlig anslutning för att aktivera FastPath
$connection = Get-AzVirtualNetworkGatewayConnection -Name "MyConnection" -ResourceGroupName "MyRG"
$connection.ExpressRouteGatewayBypass = $True
Set-AzVirtualNetworkGatewayConnection -VirtualNetworkGatewayConnection $connection
Stöd för FastPath Virtual Network Peering, User-Defined-Routes (UDR) och Private Link för ExpressRoute-direktanslutningar
Med stöd för peering för virtuella nätverk och UDR skickar FastPath trafik direkt till virtuella datorer som distribuerats i "eker" virtuella nätverk (anslutna via peering för virtuellt nätverk) och respekterar alla UDR:er som konfigurerats i GatewaySubnet. Den här funktionen är nu allmänt tillgänglig (GA).
Med FastPath och Private Link kringgår Private Link-trafik som skickas via ExpressRoute den virtuella ExpressRoute-nätverksgatewayen i datasökvägen. När båda dessa funktioner är aktiverade skickar FastPath direkt trafik till en privat slutpunkt som distribueras i ett virtuellt ekernätverk.
Dessa scenarier är allmänt tillgängliga för begränsade scenarier med anslutningar som är kopplade till ExpressRoute Direct-kretsar på 10 Gbit/s och 100 Gbit/s. Om du vill aktivera följer du vägledningen nedan:
- Fyll i det här Microsoft-formuläret om du vill begära att få registrera din prenumeration. Begäranden kan ta upp till 4 veckor att slutföra, så planera distributioner därefter.
- När du får en bekräftelse från steg 1 kör du följande Azure PowerShell-kommando i azure-målprenumerationen.
$connection = Get-AzVirtualNetworkGatewayConnection -ResourceGroupName <resource-group> -ResourceName <connection-name>
$connection.ExpressRouteGatewayBypass = $true
$connection.EnablePrivateLinkFastPath = $true
Set-AzVirtualNetworkGatewayConnection -VirtualNetworkGatewayConnection $connection
Kommentar
Du kan använda Anslutningsövervakare för att kontrollera att trafiken når målet med FastPath.
Kommentar
Det kan ta upp till 4 veckor att aktivera FastPath Private Link-stöd för begränsade GA-scenarier. Planera distributionerna i förväg.
FastPath-stöd för peering för virtuella nätverk och UDR är endast tillgängligt för ExpressRoute Direct-anslutningar.
Kommentar
Om du redan har Konfigurerat FastPath och vill registrera dig i de begränsade GA-funktionerna måste du göra följande:
- Registrera dig för någon av FastPath-funktionerna med Azure PowerShell-kommandona.
- Inaktivera och återaktivera sedan FastPath på målanslutningen.
- Om du vill växla mellan begränsad GA-funktion registrerar du prenumerationen med PowerShell-kommandot för förhandsversionen och inaktiverar och återaktiverar sedan FastPath på anslutningen.
Rensa resurser
Om du inte längre behöver ExpressRoute-anslutningen använder Remove-AzVirtualNetworkGatewayConnection
du kommandot för att ta bort länken mellan gatewayen och kretsen från prenumerationen där gatewayen finns.
Remove-AzVirtualNetworkGatewayConnection "MyConnection" -ResourceGroupName "MyRG"
Nästa steg
I den här självstudien har du lärt dig hur du ansluter ett virtuellt nätverk till en krets i samma prenumeration och i en annan prenumeration. Mer information om ExpressRoute-gatewayer finns i: Virtuella ExpressRoute-nätverksgatewayer.
Om du vill lära dig hur du konfigurerar dirigerar du filter för Microsoft-peering med hjälp av PowerShell genom att gå vidare till nästa självstudie.