Skip to content

Commit 9cd8bc0

Browse files
authored
Merge pull request #222813 from duongau/ers2sms
ExpressRoute - S2S over MS peering - freshness review
2 parents bb5a545 + 4a02118 commit 9cd8bc0

File tree

9 files changed

+23
-29
lines changed

9 files changed

+23
-29
lines changed
63 KB
Loading
15.2 KB
Loading

articles/expressroute/site-to-site-vpn-over-microsoft-peering.md

Lines changed: 23 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,13 @@
11
---
22
title: 'Azure ExpressRoute: Configure S2S VPN over Microsoft peering'
3-
description: Configure IPsec/IKE connectivity to Azure over an ExpressRoute Microsoft peering circuit using a site-to-site VPN gateway.
3+
description: Learn how to set up IPsec/IKE connectivity to Azure over an ExpressRoute Microsoft peering circuit using a site-to-site VPN gateway.
44
services: expressroute
55
author: duongau
6-
76
ms.service: expressroute
87
ms.topic: how-to
9-
ms.date: 02/25/2019
8+
ms.date: 01/03/2023
109
ms.author: duau
11-
ms.custom: seodec18, devx-track-azurepowershell
12-
10+
ms.custom: seodec18, devx-track-azurepowershell, FY23 content-maintenance
1311
---
1412

1513
# Configure a site-to-site VPN over ExpressRoute Microsoft peering
@@ -19,26 +17,23 @@ This article helps you configure secure encrypted connectivity between your on-p
1917
>[!NOTE]
2018
>When you set up site-to-site VPN over Microsoft peering, you are charged for the VPN gateway and VPN egress. For more information, see [VPN Gateway pricing](https://azure.microsoft.com/pricing/details/vpn-gateway).
2119
>
22-
>
2320
2421
[!INCLUDE [updated-for-az](../../includes/hybrid-az-ps.md)]
2522

2623
## <a name="architecture"></a>Architecture
2724

28-
29-
![connectivity overview](./media/site-to-site-vpn-over-microsoft-peering/IPsecER_Overview.png)
25+
:::image type="content" source="./media/site-to-site-vpn-over-microsoft-peering/ipsec-expressroute-overview.png" alt-text="Diagram of two IPsec tunnels over an ExpressRoute Microsoft peering connection.":::
3026

3127

3228
For high availability and redundancy, you can configure multiple tunnels over the two MSEE-PE pairs of a ExpressRoute circuit and enable load balancing between the tunnels.
3329

34-
![high availability options](./media/site-to-site-vpn-over-microsoft-peering/HighAvailability.png)
30+
:::image type="content" source="./media/site-to-site-vpn-over-microsoft-peering/high-availability.png" alt-text="Diagram of multiple IPsec tunnels to create high availability over an ExpressRoute Microsoft peering connection.":::
3531

3632
VPN tunnels over Microsoft peering can be terminated either using VPN gateway, or using an appropriate Network Virtual Appliance (NVA) available through Azure Marketplace. You can exchange routes statically or dynamically over the encrypted tunnels without exposing the route exchange to the underlying Microsoft peering. In the examples in this article, BGP (different from the BGP session used to create the Microsoft peering) is used to dynamically exchange prefixes over the encrypted tunnels.
3733

3834
>[!IMPORTANT]
3935
>For the on-premises side, typically Microsoft peering is terminated on the DMZ and private peering is terminated on the core network zone. The two zones would be segregated using firewalls. If you are configuring Microsoft peering exclusively for enabling secure tunneling over ExpressRoute, remember to filter through only the public IPs of interest that are getting advertised via Microsoft peering.
4036
>
41-
>
4237
4338
## <a name="workflow"></a>Workflow
4439

@@ -52,21 +47,21 @@ VPN tunnels over Microsoft peering can be terminated either using VPN gateway, o
5247

5348
## <a name="peering"></a>1. Configure Microsoft peering
5449

55-
To configure a site-to-site VPN connection over ExpressRoute, you must leverage ExpressRoute Microsoft peering.
50+
To configure a site-to-site VPN connection over ExpressRoute, you must use ExpressRoute Microsoft peering.
5651

5752
* To configure a new ExpressRoute circuit, start with the [ExpressRoute prerequisites](expressroute-prerequisites.md) article, and then [Create and modify an ExpressRoute circuit](expressroute-howto-circuit-arm.md).
5853

59-
* If you already have an ExpressRoute circuit, but do not have Microsoft peering configured, configure Microsoft peering using the [Create and modify peering for an ExpressRoute circuit](expressroute-howto-routing-arm.md#msft) article.
54+
* If you already have an ExpressRoute circuit, but don't have Microsoft peering configured, configure Microsoft peering using the [Create and modify peering for an ExpressRoute circuit](expressroute-howto-routing-arm.md#msft) article.
6055

61-
Once you have configured your circuit and Microsoft peering, you can easily view it using the **Overview** page in the Azure portal.
56+
Once you've configured your circuit and Microsoft peering, you can easily view it using the **Overview** page in the Azure portal.
6257

63-
![circuit](./media/site-to-site-vpn-over-microsoft-peering/ExpressRouteCkt.png)
58+
:::image type="content" source="./media/site-to-site-vpn-over-microsoft-peering/circuit.png" alt-text="Screenshot of the overview page of an ExpressRoute circuit.":::
6459

6560
## <a name="routefilter"></a>2. Configure route filters
6661

67-
A route filter lets you identify services you want to consume through your ExpressRoute circuit's Microsoft peering. It is essentially an allow list of all the BGP community values.
62+
A route filter lets you identify services you want to consume through your ExpressRoute circuit's Microsoft peering. It's essentially an allowlist of all the BGP community values.
6863

69-
![route filter](./media/site-to-site-vpn-over-microsoft-peering/route-filter.png)
64+
:::image type="content" source="./media/site-to-site-vpn-over-microsoft-peering/route-filter.png" alt-text="Screenshot of a route filter overview page.":::
7065

7166
In this example, the deployment is only in the *Azure West US 2* region. A route filter rule is added to allow only the advertisement of Azure West US 2 regional prefixes, which has the BGP community value *12076:51026*. You specify the regional prefixes that you want to allow by selecting **Manage rule**.
7267

@@ -103,7 +98,7 @@ To see the list of prefixes received from the neighbor, use the following exampl
10398
sh ip bgp vpnv4 vrf 10 neighbors X.243.229.34 received-routes
10499
```
105100

106-
To confirm that you are receiving the correct set of prefixes, you can cross-verify. The following Azure PowerShell command output lists the prefixes advertised via Microsoft peering for each of the services and for each of the Azure region:
101+
To confirm that you're receiving the correct set of prefixes, you can cross-verify. The following Azure PowerShell command output lists the prefixes advertised via Microsoft peering for each of the services and for each of the Azure region:
107102

108103
```azurepowershell-interactive
109104
Get-AzBgpServiceCommunity
@@ -113,26 +108,25 @@ Get-AzBgpServiceCommunity
113108

114109
In this section, IPsec VPN tunnels are created between the Azure VPN gateway and the on-premises VPN device. The examples use Cisco Cloud Service Router (CSR1000) VPN devices.
115110

116-
The following diagram shows the IPsec VPN tunnels established between on-premises VPN device 1, and the Azure VPN gateway instance pair. The two IPsec VPN tunnels established between the on-premises VPN device 2 and the Azure VPN gateway instance pair isn't illustrated in the diagram, and the configuration details are not listed. However, having additional VPN tunnels improves high availability.
111+
The following diagram shows the IPsec VPN tunnels established between on-premises VPN device 1, and the Azure VPN gateway instance pair. The two IPsec VPN tunnels established between the on-premises VPN device 2 and the Azure VPN gateway instance pair isn't illustrated in the diagram. The configuration details aren't listed. However, having more VPN tunnels improves high availability.
117112

118-
![VPN tunnels](./media/site-to-site-vpn-over-microsoft-peering/EstablishTunnels.png)
113+
:::image type="content" source="./media/site-to-site-vpn-over-microsoft-peering/establish-tunnels.png" alt-text="Diagram of an established VPN tunnel over ExpressRoute.":::
119114

120115
Over the IPsec tunnel pair, an eBGP session is established to exchange private network routes. The following diagram shows the eBGP session established over the IPsec tunnel pair:
121116

122-
![eBGP sessions over tunnel pair](./media/site-to-site-vpn-over-microsoft-peering/TunnelBGP.png)
117+
:::image type="content" source="./media/site-to-site-vpn-over-microsoft-peering/tunnel-bgp.png" alt-text="Diagram of an established eBGP session over the IPsec tunnel.":::
123118

124119
The following diagram shows the abstracted overview of the example network:
125120

126-
![example network](./media/site-to-site-vpn-over-microsoft-peering/OverviewRef.png)
121+
:::image type="content" source="./media/site-to-site-vpn-over-microsoft-peering/overview-reference.png" alt-text="Diagram of a network environment once VPN gets established between on-premises and Azure.":::
127122

128123
### About the Azure Resource Manager template examples
129124

130-
In the examples, the VPN gateway and the IPsec tunnel terminations are configured using an Azure Resource Manager template. If you are new to using Resource Manager templates, or to understand the Resource Manager template basics, see [Understand the structure and syntax of Azure Resource Manager templates](../azure-resource-manager/templates/syntax.md). The template in this section creates a greenfield Azure environment (VNet). However, if you have an existing VNet, you can reference it in the template. If you are not familiar with VPN gateway IPsec/IKE site-to-site configurations, see [Create a site-to-site connection](../vpn-gateway/vpn-gateway-create-site-to-site-rm-powershell.md).
125+
In the examples, the VPN gateway and the IPsec tunnel terminations are configured using an Azure Resource Manager template. If you're new to using Resource Manager templates, or to understand the Resource Manager template basics, see [Understand the structure and syntax of Azure Resource Manager templates](../azure-resource-manager/templates/syntax.md). The template in this section creates a green field Azure environment (VNet). However, if you have an existing VNet, you can reference it in the template. If you aren't familiar with VPN gateway IPsec/IKE site-to-site configurations, see [Create a site-to-site connection](../vpn-gateway/vpn-gateway-create-site-to-site-rm-powershell.md).
131126

132127
>[!NOTE]
133128
>You do not need to use Azure Resource Manager templates in order to create this configuration. You can create this configuration using the Azure portal, or PowerShell.
134129
>
135-
>
136130
137131
### <a name="variables3"></a>3.1 Declare the variables
138132

@@ -174,7 +168,7 @@ In this example, the variable declarations correspond to the example network. Wh
174168

175169
### <a name="vnet"></a>3.2 Create virtual network (VNet)
176170

177-
If you are associating an existing VNet with the VPN tunnels, you can skip this step.
171+
If you're associating an existing VNet with the VPN tunnels, you can skip this step.
178172

179173
```json
180174
{
@@ -265,7 +259,7 @@ This section of the template configures the VPN gateway with the required settin
265259

266260
* Create the VPN gateway with a **"RouteBased"** VpnType. This setting is mandatory if you want to enable the BGP routing between the VPN gateway, and the VPN on-premises.
267261
* To establish VPN tunnels between the two instances of the VPN gateway and a given on-premises device in active-active mode, the **"activeActive"** parameter is set to **true** in the Resource Manager template. To understand more about highly available VPN gateways, see [Highly available VPN gateway connectivity](../vpn-gateway/vpn-gateway-highlyavailable.md).
268-
* To configure eBGP sessions between the VPN tunnels, you must specify two different ASNs on either side. It is preferable to specify private ASN numbers. For more information, see [Overview of BGP and Azure VPN gateways](../vpn-gateway/vpn-gateway-bgp-overview.md).
262+
* To configure eBGP sessions between the VPN tunnels, you must specify two different ASNs on either side. It's preferable to specify private ASN numbers. For more information, see [Overview of BGP and Azure VPN gateways](../vpn-gateway/vpn-gateway-bgp-overview.md).
269263

270264
```json
271265
{
@@ -357,10 +351,10 @@ The Azure VPN gateway is compatible with many VPN devices from different vendors
357351

358352
When configuring your VPN device, you need the following items:
359353

360-
* A shared key. This is the same shared key that you specify when creating your site-to-site VPN connection. The examples use a basic shared key. We recommend that you generate a more complex key to use.
361-
* The Public IP address of your VPN gateway. You can view the public IP address by using the Azure portal, PowerShell, or CLI. To find the Public IP address of your VPN gateway using the Azure portal, navigate to Virtual network gateways, then click the name of your gateway.
354+
* A shared key. This value is the same shared key that you specify when creating your site-to-site VPN connection. The examples use a basic shared key. We recommend that you generate a more complex key to use.
355+
* The Public IP address of your VPN gateway. You can view the public IP address by using the Azure portal, PowerShell, or CLI. To find the Public IP address of your VPN gateway using the Azure portal, navigate to Virtual network gateways, then select the name of your gateway.
362356

363-
Typically eBGP peers are directly connected (often over a WAN connection). However, when you are configuring eBGP over IPsec VPN tunnels via ExpressRoute Microsoft peering, there are multiple routing domains between the eBGP peers. Use the **ebgp-multihop** command to establish the eBGP neighbor relationship between the two not-directly connected peers. The integer that follows ebgp-multihop command specifies the TTL value in the BGP packets. The command **maximum-paths eibgp 2** enables load balancing of traffic between the two BGP paths.
357+
Typically eBGP peers are directly connected (often over a WAN connection). However, when you're configuring eBGP over IPsec VPN tunnels via ExpressRoute Microsoft peering, there are multiple routing domains between the eBGP peers. Use the **ebgp-multihop** command to establish the eBGP neighbor relationship between the two not-directly connected peers. The integer that follows ebgp-multihop command specifies the TTL value in the BGP packets. The command **maximum-paths eibgp 2** enables load balancing of traffic between the two BGP paths.
364358

365359
### <a name="cisco1"></a>Cisco CSR1000 example
366360

@@ -568,7 +562,7 @@ Peer: 52.175.253.112 port 4500 fvrf: (none) ivrf: (none)
568562
Outbound: #pkts enc'ed 477 drop 0 life (KB/Sec) 4607953/437
569563
```
570564

571-
The line protocol on the Virtual Tunnel Interface (VTI) does not change to "up" until IKE phase 2 has completed. The following command verifies the security association:
565+
The line protocol on the Virtual Tunnel Interface (VTI) doesn't change to "up" until IKE phase 2 has completed. The following command verifies the security association:
572566

573567
```
574568
csr1#show crypto ikev2 sa

0 commit comments

Comments
 (0)