Este artigo fornece algumas sugestões para resolver problemas de uma ligação de gateway de VPN entre uma rede no local e o Azure. Para obter informações gerais sobre como resolver erros comuns relacionados com a VPN, veja Troubleshooting common VPN related errors (Resolução de erros comuns relacionados com a VPN).
Verifique se a aplicação VPN está a funcionar corretamente
As seguintes recomendações são úteis para determinar se a aplicação VPN no local está a funcionar corretamente.
Verifique a existência de erros ou falhas em quaisquer ficheiros de registo gerados pela aplicação VPN. Este procedimento ajudará a determinar se o dispositivo VPN está a funcionar corretamente. A localização destas informações varia de acordo com a sua aplicação. Por exemplo, se estiver a utilizar o RRAS no Windows Server 2012, poderá utilizar o seguinte comando do PowerShell para apresentar informações de eventos de erro para o serviço RRAS:
Get-EventLog -LogName System -EntryType Error -Source RemoteAccess | Format-List -Property *
A propriedade Mensagem de cada entrada apresenta uma descrição do erro. Alguns exemplos comuns:
Incapacidade de ligar, possivelmente devido a um endereço IP incorreto especificado para o gateway de VPN do Azure na configuração da interface de rede VPN RRAS.
EventID : 20111 MachineName : on-premises-vm Data : {41, 3, 0, 0} Index : 14231 Category : (0) CategoryNumber : 0 EntryType : Error Message : RoutingDomainID- {00000000-0000-0000-0000-000000000000}: A demand dial connection to the remote interface AzureGateway on port VPN2-4 was successfully initiated but failed to complete successfully because of the following error: The network connection between your computer and the VPN server could not be established because the remote server is not responding. This could be because one of the network devices (for example, firewalls, NAT, routers, and so on) between your computer and the remote server is not configured to allow VPN connections. Please contact your Administrator or your service provider to determine which device may be causing the problem. Source : RemoteAccess ReplacementStrings : {{00000000-0000-0000-0000-000000000000}, AzureGateway, VPN2-4, The network connection between your computer and the VPN server could not be established because the remote server is not responding. This could be because one of the network devices (for example, firewalls, NAT, routers, and so on) between your computer and the remote server is not configured to allow VPN connections. Please contact your Administrator or your service provider to determine which device may be causing the problem.} InstanceId : 20111 TimeGenerated : 3/18/2016 1:26:02 PM TimeWritten : 3/18/2016 1:26:02 PM UserName : Site : Container :
A chave partilhada errada que está a ser especificada na configuração da interface de rede VPN RRAS.
EventID : 20111 MachineName : on-premises-vm Data : {233, 53, 0, 0} Index : 14245 Category : (0) CategoryNumber : 0 EntryType : Error Message : RoutingDomainID- {00000000-0000-0000-0000-000000000000}: A demand dial connection to the remote interface AzureGateway on port VPN2-4 was successfully initiated but failed to complete successfully because of the following error: Internet key exchange (IKE) authentication credentials are unacceptable. Source : RemoteAccess ReplacementStrings : {{00000000-0000-0000-0000-000000000000}, AzureGateway, VPN2-4, IKE authentication credentials are unacceptable. } InstanceId : 20111 TimeGenerated : 3/18/2016 1:34:22 PM TimeWritten : 3/18/2016 1:34:22 PM UserName : Site : Container :
Também pode obter informações de registo de eventos sobre tentativas de estabelecer ligação através do serviço RRAS através do seguinte comando do PowerShell:
Get-EventLog -LogName Application -Source RasClient | Format-List -Property *
Em caso de uma falha na ligação, este registo conterá erros semelhantes ao seguinte:
EventID : 20227
MachineName : on-premises-vm
Data : {}
Index : 4203
Category : (0)
CategoryNumber : 0
EntryType : Error
Message : CoId={B4000371-A67F-452F-AA4C-3125AA9CFC78}: The user SYSTEM dialed a connection named
AzureGateway that has failed. The error code returned on failure is 809.
Source : RasClient
ReplacementStrings : {{B4000371-A67F-452F-AA4C-3125AA9CFC78}, SYSTEM, AzureGateway, 809}
InstanceId : 20227
TimeGenerated : 3/18/2016 1:29:21 PM
TimeWritten : 3/18/2016 1:29:21 PM
UserName :
Site :
Container :
Verificar a conectividade
Verifique a conectividade e o encaminhamento em todo o gateway de VPN. A aplicação VPN pode não estar a encaminhar corretamente o tráfego através do Gateway de VPN do Azure. Utilize uma ferramenta como PsPing para verificar a conectividade e o encaminhamento em todo o gateway de VPN. Por exemplo, para testar a conectividade de um computador local para um servidor Web, localizado na VNet, execute o seguinte comando (ao substituir <<web-server-address>>
pelo endereço do servidor Web):
PsPing -t <<web-server-address>>:80
Se o computador local puder encaminhar o tráfego para o servidor Web, deverá ver um resultado semelhante ao seguinte:
D:\PSTools> psping -t 10.20.0.5:80
PsPing v2.01 - PsPing - ping, latency, bandwidth measurement utility
Copyright (C) 2012-2014 Mark Russinovich
Sysinternals - www.sysinternals.com
TCP connect to 10.20.0.5:80:
Infinite iterations (warmup 1) connecting test:
Connecting to 10.20.0.5:80 (warmup): 6.21ms
Connecting to 10.20.0.5:80: 3.79ms
Connecting to 10.20.0.5:80: 3.44ms
Connecting to 10.20.0.5:80: 4.81ms
Sent = 3, Received = 3, Lost = 0 (0% loss),
Minimum = 3.44ms, Maximum = 4.81ms, Average = 4.01ms
Se o computador local não conseguir comunicar com o destino especificado, verá mensagens como esta:
D:\PSTools>psping -t 10.20.1.6:80
PsPing v2.01 - PsPing - ping, latency, bandwidth measurement utility
Copyright (C) 2012-2014 Mark Russinovich
Sysinternals - www.sysinternals.com
TCP connect to 10.20.1.6:80:
Infinite iterations (warmup 1) connecting test:
Connecting to 10.20.1.6:80 (warmup): This operation returned because the timeout period expired.
Connecting to 10.20.1.6:80: This operation returned because the timeout period expired.
Connecting to 10.20.1.6:80: This operation returned because the timeout period expired.
Connecting to 10.20.1.6:80: This operation returned because the timeout period expired.
Connecting to 10.20.1.6:80:
Sent = 3, Received = 0, Lost = 3 (100% loss),
Minimum = 0.00ms, Maximum = 0.00ms, Average = 0.00ms
Verifique se a firewall no local permite que o tráfego de VPN seja transmitido e se estão abertas as portas corretas.
Verifique se a aplicação de VPN no local utiliza um método de encriptação que seja compatível com o gateway de VPN do Azure. Para um encaminhamento baseado em políticas, o gateway de VPN do Azure suporta algoritmos de encriptação AES256, AES128 e 3DES. Os gateways baseados na rota suportam AES256 e 3DES. Para obter mais informações, veja Acerca dos dispositivos VPN e dos parâmetros IPsec/IKE para ligações do Gateway da Rede de VPNs.
Verificar se existem problemas com o gateway de VPN do Azure
As seguintes recomendações são úteis para determinar se existe um problema com o gateway de VPN do Azure:
Examine os registos de diagnóstico do gateway de VPN do Azure para verificar se existem potenciais problemas. Para obter mais informações, ee Passo a Passo: Capturar os Registos de Diagnóstico do Gateway de VNet do Azure Resource Manager.
Verifique se a aplicação VPN no local e o gateway de VPN do Azure estão configurados com a mesma chave de autenticação partilhada. Pode ver a chave partilhada armazenada pelo gateway de VPN do Azure com o seguinte comando da CLI do Azure:
azure network vpn-connection shared-key show <<resource-group>> <<vpn-connection-name>>
Utilize o comando adequado para a sua aplicação VPN no local para mostrar a chave partilhada configurada para essa aplicação.
Garanta que a sub-rede GatewaySubnet, que contém o gateway de VPN do Azure, não está associada a um NSG.
Pode ver os detalhes da sub-rede com o seguinte comando da CLI do Azure:
azure network vnet subnet show -g <<resource-group>> -e <<vnet-name>> -n GatewaySubnet
Certifique-se de que não existe nenhum campo de dados denominado ID do Grupo de Segurança de Rede. O exemplo seguinte mostra os resultados para uma instância do GatewaySubnet que tenha um NSG atribuído (VPN-Gateway-Grupo). Tal poderá impedir que o gateway funcione corretamente se existirem quaisquer regras definidas para este NSG.
C:\>azure network vnet subnet show -g profx-prod-rg -e profx-vnet -n GatewaySubnet
info: Executing command network vnet subnet show
+ Looking up virtual network "profx-vnet"
+ Looking up the subnet "GatewaySubnet"
data: Id : /subscriptions/########-####-####-####-############/resourceGroups/profx-prod-rg/providers/Microsoft.Network/virtualNetworks/profx-vnet/subnets/GatewaySubnet
data: Name : GatewaySubnet
data: Provisioning state : Succeeded
data: Address prefix : 10.20.3.0/27
data: Network Security Group id : /subscriptions/########-####-####-####-############/resourceGroups/profx-prod-rg/providers/Microsoft.Network/networkSecurityGroups/VPN-Gateway-Group
info: network vnet subnet show command OK
Verifique se as máquinas virtuais na VNet do Azure estão configuradas para permitir o tráfego proveniente de fora da VNet. Verifique todas as regras do NSG associadas às sub-redes que contêm estas máquinas virtuais. Pode ver todas as regras do NSG através do seguinte comando da CLI do Azure:
azure network nsg show -g <<resource-group>> -n <<nsg-name>>
Verifique se o gateway de VPN do Azure está ligado. Pode utilizar o seguinte comando do Azure PowerShell para verificar o estado atual da ligação VPN do Azure. O parâmetro <<connection-name>>
é o nome da ligação VPN do Azure que liga o gateway de rede virtual e o gateway local.
Get-AzureRmVirtualNetworkGatewayConnection -Name <<connection-name>> - ResourceGroupName <<resource-group>>
Os seguintes fragmentos realçarão o resultado gerado se o gateway estiver ligado (o primeiro exemplo) e desligado (o segundo exemplo):
PS C:\> Get-AzureRmVirtualNetworkGatewayConnection -Name profx-gateway-connection -ResourceGroupName profx-prod-rg
AuthorizationKey :
VirtualNetworkGateway1 : Microsoft.Azure.Commands.Network.Models.PSVirtualNetworkGateway
VirtualNetworkGateway2 :
LocalNetworkGateway2 : Microsoft.Azure.Commands.Network.Models.PSLocalNetworkGateway
Peer :
ConnectionType : IPsec
RoutingWeight : 0
SharedKey : ####################################
ConnectionStatus : Connected
EgressBytesTransferred : 55254803
IngressBytesTransferred : 32227221
ProvisioningState : Succeeded
...
PS C:\> Get-AzureRmVirtualNetworkGatewayConnection -Name profx-gateway-connection2 -ResourceGroupName profx-prod-rg
AuthorizationKey :
VirtualNetworkGateway1 : Microsoft.Azure.Commands.Network.Models.PSVirtualNetworkGateway
VirtualNetworkGateway2 :
LocalNetworkGateway2 : Microsoft.Azure.Commands.Network.Models.PSLocalNetworkGateway
Peer :
ConnectionType : IPsec
RoutingWeight : 0
SharedKey : ####################################
ConnectionStatus : NotConnected
EgressBytesTransferred : 0
IngressBytesTransferred : 0
ProvisioningState : Succeeded
...
Problemas diversos
As seguintes recomendações são úteis para determinar se existe um problema com a configuração da VM de anfitrião, a utilização da largura de banda da rede ou o desempenho de aplicações:
Verifique a configuração da firewall. Verifique se a firewall no sistema operativo convidado em execução nas VMs do Azure na sub-rede está corretamente configurada para deixar passar o tráfego permitido proveniente de intervalos de IP no local.
Verifique se o volume de tráfego não está próximo do limite da largura de banda disponível para o gateway de VPN do Azure. Esta verificação depende da aplicação VPN em execução no local. Por exemplo, se estiver a utilizar o RRAS no Windows Server 2012, poderá utilizar o Monitor de Desempenho para controlar o volume de dados recebidos e transmitidos através da ligação VPN. Utilize o objeto Total RAS, selecione os contadores Bytes Recebidos/S e Bytes Transmitidos/S:
Deve comparar os resultados com a largura de banda disponível com o gateway de VPN (de 100 Mbps para o SKU Básico a 1,25 Gbps para sKU VpnGw3):
Verifique se implementou o número e tamanho corretos das VMs para a carga de aplicação. Determine se alguma uma das máquinas virtuais na VNet do Azure está com uma execução lenta. Se for o caso, poderão estar sobrecarregadas, poderão não ser suficientes para processar a carga ou os balanceadores de carga poderão não estar corretamente configurados. Para determinar esta situação, capture e analise informações de diagnóstico. Pode examinar os resultados através do portal do Azure, mas muitas ferramentas de terceiros também estão disponíveis para obter informações detalhadas sobre os dados de desempenho.
Pode utilizar o Azure DDoS Protection para ajudar a proteger contra o esgotamento de recursos maliciosos. O Azure DDoS Protection, combinado com as melhores práticas de conceção de aplicações, fornece funcionalidades de mitigação de DDoS melhoradas para fornecer mais defesa contra ataques DDoS. Deve ativar o Azure DDOS Protection em qualquer rede virtual de perímetro.
Verifique se a aplicação está a utilizar de forma eficiente os recursos na cloud. Instrumente o código de aplicação em execução em cada VM para determinar se as aplicações estão a utilizar de forma eficiente os recursos. Pode utilizar ferramentas como Application Insights.
Passos seguintes
Documentação do produto:
- Máquinas virtuais do Linux no Azure
- O que é o Azure PowerShell?
- O que é o Azure Rede Virtual?
- O que é a CLI do Azure?
- O que é um Gateway de VPN?
- Máquinas virtuais do Windows no Azure
Módulos do Microsoft Learn:
- Configurar recursos do Azure com ferramentas
- Configurar Gateway de VPN
- Criar uma máquina virtual do Linux no Azure
- Criar uma máquina virtual do Windows no Azure