Een site-naar-site-VPN configureren via ExpressRoute Microsoft-peering

Dit artikel helpt u bij het configureren van beveiligde versleutelde connectiviteit tussen uw on-premises netwerk en uw virtuele Azure-netwerken (VNets) via een persoonlijke ExpressRoute-verbinding. U kunt Microsoft-peering gebruiken om een site-naar-site IPsec-/IKE VPN-tunnel tot stand te brengen tussen uw geselecteerde on-premises netwerken en Azure VNets. Door een beveiligde tunnel via ExpressRoute te configureren, kunnen gegevens worden uitgewisseld met vertrouwelijkheid, anti-herhaling, authenticiteit en integriteit.

Notitie

Wanneer u site-naar-site-VPN instelt via Microsoft-peering, worden kosten in rekening gebracht voor de VPN-gateway en vpn-uitgaand verkeer. Zie prijzen voor VPN Gateway voor meer informatie.

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.

Architectuur

Diagram van twee IPsec-tunnels via een ExpressRoute Microsoft-peeringverbinding.

Voor hoge beschikbaarheid en redundantie kunt u meerdere tunnels configureren via de twee MSEE-PE-paren van een ExpressRoute-circuit en taakverdeling tussen de tunnels inschakelen.

Diagram van meerdere IPsec-tunnels om hoge beschikbaarheid te creëren via een ExpressRoute Microsoft-peeringverbinding.

VPN-tunnels via Microsoft-peering kunnen worden beëindigd met behulp van VPN-gateway of met behulp van een geschikt NVA (Network Virtual Appliance) dat beschikbaar is via Azure Marketplace. U kunt routes statisch of dynamisch uitwisselen via de versleutelde tunnels zonder de routeuitwisseling bloot te stellen aan de onderliggende Microsoft-peering. In de voorbeelden in dit artikel wordt BGP (anders dan de BGP-sessie die wordt gebruikt om de Microsoft-peering te maken) gebruikt voor het dynamisch uitwisselen van voorvoegsels via de versleutelde tunnels.

Belangrijk

Voor de on-premises zijde wordt Doorgaans Microsoft-peering beëindigd op de DMZ en wordt persoonlijke peering beëindigd in de kernnetwerkzone. De twee zones worden gescheiden met behulp van firewalls. Als u Microsoft-peering exclusief configureert voor het inschakelen van beveiligde tunneling via ExpressRoute, moet u alleen filteren op de openbare IP-adressen die via Microsoft-peering worden geadverteerd.

Workflow

  1. Configureer Microsoft-peering voor uw ExpressRoute-circuit.
  2. Public-voorvoegsels van Azure adverteren naar uw on-premises netwerk via Microsoft-peering.
  3. Een VPN-gateway configureren en IPsec-tunnels tot stand brengen
  4. Configureer het on-premises VPN-apparaat.
  5. Maak de site-naar-site-IPsec-/IKE-verbinding.
  6. (Optioneel) Configureer firewalls/filteren op het on-premises VPN-apparaat.
  7. Test en valideer de IPsec-communicatie via het ExpressRoute-circuit.

1. Microsoft-peering configureren

Als u een site-naar-site-VPN-verbinding via ExpressRoute wilt configureren, moet u ExpressRoute Microsoft-peering gebruiken.

Zodra u uw circuit en Microsoft-peering hebt geconfigureerd, kunt u het eenvoudig weergeven met behulp van de pagina Overzicht in Azure Portal.

Schermopname van de overzichtspagina van een ExpressRoute-circuit.

2. Routefilters configureren

Via een routefilter kunt u services identificeren die u wilt gebruiken via Microsoft-peering op uw ExpressRoute-circuit. Het is in feite een acceptatielijst van alle BGP-communitywaarden.

Schermopname van een overzichtspagina van een routefilter.

In dit voorbeeld bevindt de implementatie zich alleen in de regio Azure - west US 2 . Er wordt een routefilterregel toegevoegd om alleen de aankondiging van regionale voorvoegsels van Azure - west US 2 toe te staan, met de BGP-communitywaarde 12076:51026. U geeft de regionale voorvoegsels op die u wilt toestaan door de regel Beheren te selecteren.

Binnen het routefilter moet u ook de ExpressRoute-circuits kiezen waarvoor het routefilter van toepassing is. U kunt de ExpressRoute-circuits kiezen door het circuit toevoegen te selecteren. In de vorige afbeelding is het routefilter gekoppeld aan het ExpressRoute-voorbeeldcircuit.

2.1 Het routefilter configureren

Configureer een routefilter. Zie Routefilters configureren voor Microsoft-peering voor stappen.

2.2 BGP-routes controleren

Zodra u de Microsoft-peering hebt gemaakt via uw ExpressRoute-circuit en een routefilter hebt gekoppeld aan het circuit, kunt u controleren of de BGP-routes die zijn ontvangen van Microsoft Enterprise Edge (MSEEs) op de PE-apparaten die peering met de MSEEs hebben. De verificatieopdracht varieert, afhankelijk van het besturingssysteem van uw PE-apparaten.

Cisco-voorbeelden

In dit voorbeeld wordt een Cisco IOS-XE-opdracht gebruikt. In het voorbeeld wordt een VRF-exemplaar (virtual routing and forwarding) gebruikt om het peeringverkeer te isoleren.

show ip bgp vpnv4 vrf 10 summary

In de volgende gedeeltelijke uitvoer ziet u dat 68 voorvoegsels zijn ontvangen van de buur *.243.229.34 met het autonome systeemnummer (ASN) 12076 (MSEE):

...

Neighbor        V           AS MsgRcvd MsgSent   TblVer  InQ OutQ Up/Down  State/PfxRcd
X.243.229.34    4        12076   17671   17650    25228    0    0 1w4d           68

Gebruik het volgende voorbeeld om de lijst met voorvoegsels te zien die van de buurman zijn ontvangen:

sh ip bgp vpnv4 vrf 10 neighbors X.243.229.34 received-routes

Als u wilt bevestigen dat u de juiste set voorvoegsels ontvangt, kunt u kruislings verifiëren. De volgende Azure PowerShell-opdrachtuitvoer bevat de voorvoegsels die worden geadverteerd via Microsoft-peering voor elk van de services en voor elke Azure-regio:

Get-AzBgpServiceCommunity

3. De VPN-gateway en IPsec-tunnels configureren

In deze sectie worden IPsec VPN-tunnels gemaakt tussen de Azure VPN-gateway en het on-premises VPN-apparaat. In de voorbeelden worden VPN-apparaten van Cisco Cloud Service Router (CSR1000) gebruikt.

In het volgende diagram ziet u de IPsec VPN-tunnels die zijn ingesteld tussen on-premises VPN-apparaat 1 en het exemplaarpaar van de Azure VPN-gateway. De twee IPsec VPN-tunnels die tussen het on-premises VPN-apparaat 2 en het paar azure VPN-gatewayexemplaren tot stand zijn gebracht, worden niet geïllustreerd in het diagram. De configuratiegegevens worden niet vermeld. Het hebben van meer VPN-tunnels verbetert echter de hoge beschikbaarheid.

Diagram van een bestaande VPN-tunnel via ExpressRoute.

Via het IPsec-tunnelpaar wordt een eBGP-sessie tot stand gebracht om privénetwerkroutes uit te wisselen. In het volgende diagram ziet u de eBGP-sessie die is ingesteld via het IPsec-tunnelpaar:

Diagram van een tot stand gebrachte eBGP-sessie via de IPsec-tunnel.

In het volgende diagram ziet u het abstracte overzicht van het voorbeeldnetwerk:

Diagram van een netwerkomgeving zodra VPN tot stand is gebracht tussen on-premises en Azure.

Voorbeelden van Azure Resource Manager-sjablonen

In de voorbeelden worden de VPN-gateway en de IPsec-tunnelbeëindigingen geconfigureerd met behulp van een Azure Resource Manager-sjabloon. Als u geen ervaring hebt met het gebruik van Resource Manager-sjablonen of als u de basisbeginselen van de Resource Manager-sjabloon wilt begrijpen, raadpleegt u Inzicht in de structuur en syntaxis van Azure Resource Manager-sjablonen. Met de sjabloon in deze sectie maakt u een groene Azure-omgeving (virtueel netwerk). Als u echter een bestaand virtueel netwerk hebt, kunt u ernaar verwijzen in de sjabloon. Als u niet bekend bent met IPsec-/IKE-siteconfiguraties voor VPN-gateways, raadpleegt u Een site-naar-site-verbinding maken.

Notitie

U hoeft geen Azure Resource Manager-sjablonen te gebruiken om deze configuratie te maken. U kunt deze configuratie maken met behulp van Azure Portal of PowerShell.

3.1 Declareer de variabelen

In dit voorbeeld komen de declaraties van variabelen overeen met het voorbeeldnetwerk. Wanneer u variabelen declareren, wijzigt u deze sectie zodat deze overeenkomt met uw omgeving.

"variables": {
  "virtualNetworkName": "SecureVNet",       // Name of the Azure VNet
  "azureVNetAddressPrefix": "10.2.0.0/24",  // Address space assigned to the VNet
  "subnetName": "Tenant",                   // subnet name in which tenants exists
  "subnetPrefix": "10.2.0.0/25",            // address space of the tenant subnet
  "gatewaySubnetPrefix": "10.2.0.224/27",   // address space of the gateway subnet
  "localGatewayName": "localGW1",           // name of remote gateway (on-premises)
  "localGatewayIpAddress": "X.243.229.110", // public IP address of the on-premises VPN device
  "localAddressPrefix": [
    "172.16.0.1/32",                        // termination of IPsec tunnel-1 on-premises 
    "172.16.0.2/32"                         // termination of IPsec tunnel-2 on-premises 
  ],
  "gatewayPublicIPName1": "vpnGwVIP1",    // Public address name of the first VPN gateway instance
  "gatewayPublicIPName2": "vpnGwVIP2",    // Public address name of the second VPN gateway instance 
  "gatewayName": "vpnGw",                 // Name of the Azure VPN gateway
  "gatewaySku": "VpnGw1",                 // Azure VPN gateway SKU
  "vpnType": "RouteBased",                // type of VPN gateway
  "sharedKey": "string",                  // shared secret needs to match with on-premises configuration
  "asnVpnGateway": 65000,                 // BGP Autonomous System number assigned to the VPN Gateway 
  "asnRemote": 65010,                     // BGP Autonmous Syste number assigned to the on-premises device
  "bgpPeeringAddress": "172.16.0.3",      // IP address of the remote BGP peer on-premises
  "connectionName": "vpn2local1",
  "vnetID": "[resourceId('Microsoft.Network/virtualNetworks', variables('virtualNetworkName'))]",
  "gatewaySubnetRef": "[concat(variables('vnetID'),'/subnets/','GatewaySubnet')]",
  "subnetRef": "[concat(variables('vnetID'),'/subnets/',variables('subnetName'))]",
  "api-version": "2017-06-01"
},

3.2 Virtueel netwerk maken (virtueel netwerk)

Als u een bestaand virtueel netwerk aan de VPN-tunnels wilt koppelen, kunt u deze stap overslaan.

{
  "apiVersion": "[variables('api-version')]",
  "type": "Microsoft.Network/virtualNetworks",
  "name": "[variables('virtualNetworkName')]",
  "location": "[resourceGroup().location]",
  "properties": {
    "addressSpace": {
      "addressPrefixes": [
        "[variables('azureVNetAddressPrefix')]"
      ]
    },
    "subnets": [
      {
        "name": "[variables('subnetName')]",
        "properties": {
          "addressPrefix": "[variables('subnetPrefix')]"
        }
      },
      {
        "name": "GatewaySubnet",
        "properties": {
          "addressPrefix": "[variables('gatewaySubnetPrefix')]"
        }
      }
    ]
  },
  "comments": "Create a Virtual Network with Subnet1 and Gatewaysubnet"
},

3.3 Openbare IP-adressen toewijzen aan VPN-gatewayexemplaren

Wijs een openbaar IP-adres toe voor elk exemplaar van een VPN-gateway.

{
  "apiVersion": "[variables('api-version')]",
  "type": "Microsoft.Network/publicIPAddresses",
    "name": "[variables('gatewayPublicIPName1')]",
    "location": "[resourceGroup().location]",
    "properties": {
      "publicIPAllocationMethod": "Dynamic"
    },
    "comments": "Public IP for the first instance of the VPN gateway"
  },
  {
    "apiVersion": "[variables('api-version')]",
    "type": "Microsoft.Network/publicIPAddresses",
    "name": "[variables('gatewayPublicIPName2')]",
    "location": "[resourceGroup().location]",
    "properties": {
      "publicIPAllocationMethod": "Dynamic"
    },
    "comments": "Public IP for the second instance of the VPN gateway"
  },

3.4 Geef de beëindiging van de on-premises VPN-tunnel op (lokale netwerkgateway)

De on-premises VPN-apparaten worden de lokale netwerkgateway genoemd. In het volgende json-fragment worden ook externe BGP-peerdetails opgegeven:

{
  "apiVersion": "[variables('api-version')]",
  "type": "Microsoft.Network/localNetworkGateways",
  "name": "[variables('localGatewayName')]",
  "location": "[resourceGroup().location]",
  "properties": {
    "localNetworkAddressSpace": {
      "addressPrefixes": "[variables('localAddressPrefix')]"
    },
    "gatewayIpAddress": "[variables('localGatewayIpAddress')]",
    "bgpSettings": {
      "asn": "[variables('asnRemote')]",
      "bgpPeeringAddress": "[variables('bgpPeeringAddress')]",
      "peerWeight": 0
    }
  },
  "comments": "Local Network Gateway (referred to your on-premises location) with IP address of remote tunnel peering and IP address of remote BGP peer"
},

3.5 De VPN-gateway maken

In deze sectie van de sjabloon wordt de VPN-gateway geconfigureerd met de vereiste instellingen voor een actief-actief-configuratie. Houd rekening met de volgende vereisten:

  • Maak de VPN-gateway met een 'RouteBased' VpnType. Deze instelling is verplicht als u de BGP-routering tussen de VPN-gateway en de on-premises VPN-gateway wilt inschakelen.
  • Als u VPN-tunnels tussen de twee exemplaren van de VPN-gateway en een bepaald on-premises apparaat in de actief-actieve modus wilt instellen, wordt de parameter 'activeActive' ingesteld op true in de Resource Manager-sjabloon. Zie de maximaal beschikbare VPN-gatewayconnectiviteit voor meer informatie over maximaal beschikbare VPN-gateways.
  • Als u eBGP-sessies tussen de VPN-tunnels wilt configureren, moet u twee verschillende ASN's aan beide zijden opgeven. Het verdient de voorkeur om privé-ASN-nummers op te geven. Zie Overzicht van BGP- en Azure VPN-gateways voor meer informatie.
{
"apiVersion": "[variables('api-version')]",
"type": "Microsoft.Network/virtualNetworkGateways",
"name": "[variables('gatewayName')]",
"location": "[resourceGroup().location]",
"dependsOn": [
  "[concat('Microsoft.Network/publicIPAddresses/', variables('gatewayPublicIPName1'))]",
  "[concat('Microsoft.Network/publicIPAddresses/', variables('gatewayPublicIPName2'))]",
  "[concat('Microsoft.Network/virtualNetworks/', variables('virtualNetworkName'))]"
],
"properties": {
  "ipConfigurations": [
    {
      "properties": {
        "privateIPAllocationMethod": "Dynamic",
        "subnet": {
          "id": "[variables('gatewaySubnetRef')]"
        },
        "publicIPAddress": {
          "id": "[resourceId('Microsoft.Network/publicIPAddresses',variables('gatewayPublicIPName1'))]"
        }
      },
      "name": "vnetGtwConfig1"
    },
    {
      "properties": {
        "privateIPAllocationMethod": "Dynamic",
        "subnet": {
          "id": "[variables('gatewaySubnetRef')]"
        },
        "publicIPAddress": {
          "id": "[resourceId('Microsoft.Network/publicIPAddresses',variables('gatewayPublicIPName2'))]"
        }
      },
          "name": "vnetGtwConfig2"
        }
      ],
      "sku": {
        "name": "[variables('gatewaySku')]",
        "tier": "[variables('gatewaySku')]"
      },
      "gatewayType": "Vpn",
      "vpnType": "[variables('vpnType')]",
      "enableBgp": true,
      "activeActive": true,
      "bgpSettings": {
        "asn": "[variables('asnVpnGateway')]"
      }
    },
    "comments": "VPN Gateway in active-active configuration with BGP support"
  },

3.6 Stel de IPsec-tunnels in

Met de laatste actie van het script worden IPsec-tunnels gemaakt tussen de Azure VPN-gateway en het on-premises VPN-apparaat.

{
  "apiVersion": "[variables('api-version')]",
  "name": "[variables('connectionName')]",
  "type": "Microsoft.Network/connections",
  "location": "[resourceGroup().location]",
  "dependsOn": [
    "[concat('Microsoft.Network/virtualNetworkGateways/', variables('gatewayName'))]",
    "[concat('Microsoft.Network/localNetworkGateways/', variables('localGatewayName'))]"
  ],
  "properties": {
    "virtualNetworkGateway1": {
      "id": "[resourceId('Microsoft.Network/virtualNetworkGateways', variables('gatewayName'))]"
    },
    "localNetworkGateway2": {
      "id": "[resourceId('Microsoft.Network/localNetworkGateways', variables('localGatewayName'))]"
    },
    "connectionType": "IPsec",
    "routingWeight": 0,
    "sharedKey": "[variables('sharedKey')]",
    "enableBGP": "true"
  },
  "comments": "Create a Connection type site-to-site (IPsec) between the Azure VPN Gateway and the VPN device on-premises"
  }

4. Het on-premises VPN-apparaat configureren

De Azure VPN-gateway is compatibel met veel VPN-apparaten van verschillende leveranciers. Zie Informatie over VPN-apparaten voor configuratie-informatie en apparaten die zijn gevalideerd voor gebruik met VPN-gateway.

Bij het configureren van uw VPN-apparaat hebt u het volgende nodig:

  • Een gedeelde sleutel. Deze waarde is dezelfde gedeelde sleutel die u opgeeft bij het maken van uw site-naar-site-VPN-verbinding. In de voorbeelden wordt een eenvoudige gedeelde sleutel gebruikt. We raden u aan een complexere sleutel te genereren.
  • Het openbare IP-adres van uw VPN-gateway. U kunt het openbare IP-adres weergeven met behulp van Azure Portal, PowerShell of de CLI. Navigeer naar Virtuele netwerkgateways en selecteer de naam van uw VPN-gateway om het openbare IP-adres dat gebruikmaakt van Azure Portal te achterhalen.

Doorgaans zijn eBGP-peers rechtstreeks verbonden (vaak via een WAN-verbinding). Wanneer u echter eBGP configureert via IPsec VPN-tunnels via ExpressRoute Microsoft-peering, zijn er meerdere routeringsdomeinen tussen de eBGP-peers. Gebruik de opdracht ebgp-multihop om de eBGP-burenrelatie tot stand te brengen tussen de twee niet-rechtstreeks verbonden peers. Het gehele getal dat volgt op de opdracht ebgp-multihop geeft de TTL-waarde (Time to Live) op in de BGP-pakketten. De opdracht maximumpaden eibgp 2 maakt taakverdeling van verkeer tussen de twee BGP-paden mogelijk.

Voorbeeld van Cisco CSR1000

In het volgende voorbeeld ziet u de configuratie voor Cisco CSR1000 in een virtuele Hyper-V-machine als het on-premises VPN-apparaat:

!
crypto ikev2 proposal az-PROPOSAL
 encryption aes-cbc-256 aes-cbc-128 3des
 integrity sha1
 group 2
!
crypto ikev2 policy az-POLICY
 proposal az-PROPOSAL
!
crypto ikev2 keyring key-peer1
 peer azvpn1
  address 52.175.253.112
  pre-shared-key secret*1234
 !
!
crypto ikev2 keyring key-peer2
 peer azvpn2
  address 52.175.250.191
  pre-shared-key secret*1234
 !
!
!
crypto ikev2 profile az-PROFILE1
 match address local interface GigabitEthernet1
 match identity remote address 52.175.253.112 255.255.255.255
 authentication remote pre-share
 authentication local pre-share
 keyring local key-peer1
!
crypto ikev2 profile az-PROFILE2
 match address local interface GigabitEthernet1
 match identity remote address 52.175.250.191 255.255.255.255
 authentication remote pre-share
 authentication local pre-share
 keyring local key-peer2
!
crypto ikev2 dpd 10 2 on-demand
!
!
crypto ipsec transform-set az-IPSEC-PROPOSAL-SET esp-aes 256 esp-sha-hmac
 mode tunnel
!
crypto ipsec profile az-VTI1
 set transform-set az-IPSEC-PROPOSAL-SET
 set ikev2-profile az-PROFILE1
!
crypto ipsec profile az-VTI2
 set transform-set az-IPSEC-PROPOSAL-SET
 set ikev2-profile az-PROFILE2
!
!
interface Loopback0
 ip address 172.16.0.3 255.255.255.255
!
interface Tunnel0
 ip address 172.16.0.1 255.255.255.255
 ip tcp adjust-mss 1350
 tunnel source GigabitEthernet1
 tunnel mode ipsec ipv4
 tunnel destination 52.175.253.112
 tunnel protection ipsec profile az-VTI1
!
interface Tunnel1
 ip address 172.16.0.2 255.255.255.255
 ip tcp adjust-mss 1350
 tunnel source GigabitEthernet1
 tunnel mode ipsec ipv4
 tunnel destination 52.175.250.191
 tunnel protection ipsec profile az-VTI2
!
interface GigabitEthernet1
 description External interface
 ip address x.243.229.110 255.255.255.252
 negotiation auto
 no mop enabled
 no mop sysid
!
interface GigabitEthernet2
 ip address 10.0.0.1 255.255.255.0
 negotiation auto
 no mop enabled
 no mop sysid
!
router bgp 65010
 bgp router-id interface Loopback0
 bgp log-neighbor-changes
 network 10.0.0.0 mask 255.255.255.0
 network 10.1.10.0 mask 255.255.255.128
 neighbor 10.2.0.228 remote-as 65000
 neighbor 10.2.0.228 ebgp-multihop 5
 neighbor 10.2.0.228 update-source Loopback0
 neighbor 10.2.0.228 soft-reconfiguration inbound
 neighbor 10.2.0.228 filter-list 10 out
 neighbor 10.2.0.229 remote-as 65000	
 neighbor 10.2.0.229 ebgp-multihop 5
 neighbor 10.2.0.229 update-source Loopback0
 neighbor 10.2.0.229 soft-reconfiguration inbound
 maximum-paths eibgp 2
!
ip route 0.0.0.0 0.0.0.0 10.1.10.1
ip route 10.2.0.228 255.255.255.255 Tunnel0
ip route 10.2.0.229 255.255.255.255 Tunnel1
!

5. Vpn-apparaatfilters en firewalls configureren (optioneel)

Configureer uw firewall en filter op basis van uw vereisten.

6. De IPsec-tunnel testen en valideren

De status van IPsec-tunnels kan worden geverifieerd op de Azure VPN-gateway door PowerShell-opdrachten:

Get-AzVirtualNetworkGatewayConnection -Name vpn2local1 -ResourceGroupName myRG | Select-Object  ConnectionStatus,EgressBytesTransferred,IngressBytesTransferred | fl

Voorbeelduitvoer:

ConnectionStatus        : Connected
EgressBytesTransferred  : 17734660
IngressBytesTransferred : 10538211

Als u de status van de tunnels op de Exemplaren van de Azure VPN-gateway onafhankelijk wilt controleren, gebruikt u het volgende voorbeeld:

Get-AzVirtualNetworkGatewayConnection -Name vpn2local1 -ResourceGroupName myRG | Select-Object -ExpandProperty TunnelConnectionStatus

Voorbeelduitvoer:

Tunnel                           : vpn2local1_52.175.250.191
ConnectionStatus                 : Connected
IngressBytesTransferred          : 4877438
EgressBytesTransferred           : 8754071
LastConnectionEstablishedUtcTime : 11/04/2017 17:03:30

Tunnel                           : vpn2local1_52.175.253.112
ConnectionStatus                 : Connected
IngressBytesTransferred          : 5660773
EgressBytesTransferred           : 8980589
LastConnectionEstablishedUtcTime : 11/04/2017 17:03:13

U kunt ook de tunnelstatus controleren op uw on-premises VPN-apparaat.

Voorbeeld van Cisco CSR1000:

show crypto session detail
show crypto ikev2 sa
show crypto ikev2 session detail
show crypto ipsec sa

Voorbeelduitvoer:

csr1#show crypto session detail

Crypto session current status

Code: C - IKE Configuration mode, D - Dead Peer Detection
K - Keepalives, N - NAT-traversal, T - cTCP encapsulation
X - IKE Extended Authentication, F - IKE Fragmentation
R - IKE Auto Reconnect

Interface: Tunnel1
Profile: az-PROFILE2
Uptime: 00:52:46
Session status: UP-ACTIVE
Peer: 52.175.250.191 port 4500 fvrf: (none) ivrf: (none)
      Phase1_id: 52.175.250.191
      Desc: (none)
  Session ID: 3
  IKEv2 SA: local 10.1.10.50/4500 remote 52.175.250.191/4500 Active
          Capabilities:DN connid:3 lifetime:23:07:14
  IPSEC FLOW: permit ip 0.0.0.0/0.0.0.0 0.0.0.0/0.0.0.0
        Active SAs: 2, origin: crypto map
        Inbound:  #pkts dec'ed 279 drop 0 life (KB/Sec) 4607976/433
        Outbound: #pkts enc'ed 164 drop 0 life (KB/Sec) 4607992/433

Interface: Tunnel0
Profile: az-PROFILE1
Uptime: 00:52:43
Session status: UP-ACTIVE
Peer: 52.175.253.112 port 4500 fvrf: (none) ivrf: (none)
      Phase1_id: 52.175.253.112
      Desc: (none)
  Session ID: 2
  IKEv2 SA: local 10.1.10.50/4500 remote 52.175.253.112/4500 Active
          Capabilities:DN connid:2 lifetime:23:07:17
  IPSEC FLOW: permit ip 0.0.0.0/0.0.0.0 0.0.0.0/0.0.0.0
        Active SAs: 2, origin: crypto map
        Inbound:  #pkts dec'ed 668 drop 0 life (KB/Sec) 4607926/437
        Outbound: #pkts enc'ed 477 drop 0 life (KB/Sec) 4607953/437

Het regelprotocol op de Virtual Tunnel Interface (VTI) verandert pas in 'up' totdat IKE fase 2 is voltooid. Met de volgende opdracht wordt de beveiligingskoppeling gecontroleerd:

csr1#show crypto ikev2 sa

IPv4 Crypto IKEv2  SA

Tunnel-id Local                 Remote                fvrf/ivrf            Status
2         10.1.10.50/4500       52.175.253.112/4500   none/none            READY
      Encr: AES-CBC, keysize: 256, PRF: SHA1, Hash: SHA96, DH Grp:2, Auth sign: PSK, Auth verify: PSK
      Life/Active Time: 86400/3277 sec

Tunnel-id Local                 Remote                fvrf/ivrf            Status
3         10.1.10.50/4500       52.175.250.191/4500   none/none            READY
      Encr: AES-CBC, keysize: 256, PRF: SHA1, Hash: SHA96, DH Grp:2, Auth sign: PSK, Auth verify: PSK
      Life/Active Time: 86400/3280 sec

IPv6 Crypto IKEv2  SA

csr1#show crypto ipsec sa | inc encaps|decaps
    #pkts encaps: 177, #pkts encrypt: 177, #pkts digest: 177
    #pkts decaps: 296, #pkts decrypt: 296, #pkts verify: 296
    #pkts encaps: 554, #pkts encrypt: 554, #pkts digest: 554
    #pkts decaps: 746, #pkts decrypt: 746, #pkts verify: 746

End-to-end-connectiviteit tussen het on-premises netwerk en het virtuele Azure-netwerk controleren

Als de IPsec-tunnels zijn ingesteld en de statische routes correct zijn ingesteld, moet u het IP-adres van de externe BGP-peer kunnen pingen:

csr1#ping 10.2.0.228
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 10.2.0.228, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 5/5/5 ms

#ping 10.2.0.229
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 10.2.0.229, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 4/5/6 ms

De BGP-sessies via IPsec controleren

Controleer op de Azure VPN-gateway de status van BGP-peer:

Get-AzVirtualNetworkGatewayBGPPeerStatus -VirtualNetworkGatewayName vpnGtw -ResourceGroupName SEA-C1-VPN-ER | ft

Voorbeelduitvoer:

  Asn ConnectedDuration LocalAddress MessagesReceived MessagesSent Neighbor    RoutesReceived State    
  --- ----------------- ------------ ---------------- ------------ --------    -------------- -----    
65010 00:57:19.9003584  10.2.0.228               68           72   172.16.0.10              2 Connected
65000                   10.2.0.228                0            0   10.2.0.228               0 Unknown  
65000 07:13:51.0109601  10.2.0.228              507          500   10.2.0.229               6 Connected

Als u wilt controleren of de lijst met netwerkvoorvoegsels die zijn ontvangen via eBGP van de VPN-concentrator on-premises, kunt u filteren op kenmerk "Origin":

Get-AzVirtualNetworkGatewayLearnedRoute -VirtualNetworkGatewayName vpnGtw -ResourceGroupName myRG  | Where-Object Origin -eq "EBgp" |ft

In de voorbeelduitvoer is de ASN 65010 het autonome BGP-systeemnummer in de on-premises VPN.

AsPath LocalAddress Network      NextHop     Origin SourcePeer  Weight
------ ------------ -------      -------     ------ ----------  ------
65010  10.2.0.228   10.1.10.0/25 172.16.0.10 EBgp   172.16.0.10  32768
65010  10.2.0.228   10.0.0.0/24  172.16.0.10 EBgp   172.16.0.10  32768

De lijst met geadverteerde routes bekijken:

Get-AzVirtualNetworkGatewayAdvertisedRoute -VirtualNetworkGatewayName vpnGtw -ResourceGroupName myRG -Peer 10.2.0.228 | ft

Voorbeelduitvoer:

AsPath LocalAddress Network        NextHop    Origin SourcePeer Weight
------ ------------ -------        -------    ------ ---------- ------
       10.2.0.229   10.2.0.0/24    10.2.0.229 Igp                  0
       10.2.0.229   172.16.0.10/32 10.2.0.229 Igp                  0
       10.2.0.229   172.16.0.5/32  10.2.0.229 Igp                  0
       10.2.0.229   172.16.0.1/32  10.2.0.229 Igp                  0
65010  10.2.0.229   10.1.10.0/25   10.2.0.229 Igp                  0
65010  10.2.0.229   10.0.0.0/24    10.2.0.229 Igp                  0

Voorbeeld voor de on-premises Cisco-CSR1000:

csr1#show ip bgp neighbors 10.2.0.228 routes
BGP table version is 7, local router ID is 172.16.0.10
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal,
              r RIB-failure, S Stale, m multipath, b backup-path, f RT-Filter,
              x best-external, a additional-path, c RIB-compressed,
              t secondary path,
Origin codes: i - IGP, e - EGP, ? - incomplete
RPKI validation codes: V valid, I invalid, N Not found

     Network          Next Hop            Metric LocPrf Weight Path
 *>   10.2.0.0/24      10.2.0.228                             0 65000 i
 r>   172.16.0.1/32    10.2.0.228                             0 65000 i
 r>   172.16.0.2/32    10.2.0.228                             0 65000 i
 r>   172.16.0.3/32   10.2.0.228                             0 65000 i

Total number of prefixes 4

De lijst met netwerken die zijn geadverteerd van de on-premises Cisco CSR1000 naar de Azure VPN-gateway, kan worden weergegeven met behulp van de volgende opdracht:

csr1#show ip bgp neighbors 10.2.0.228 advertised-routes
BGP table version is 7, local router ID is 172.16.0.10
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal,
              r RIB-failure, S Stale, m multipath, b backup-path, f RT-Filter,
              x best-external, a additional-path, c RIB-compressed,
              t secondary path,
Origin codes: i - IGP, e - EGP, ? - incomplete
RPKI validation codes: V valid, I invalid, N Not found

     Network          Next Hop            Metric LocPrf Weight Path
 *>   10.0.0.0/24      0.0.0.0                  0         32768 i
 *>   10.1.10.0/25     0.0.0.0                  0         32768 i

Total number of prefixes 2

Volgende stappen