Rozwiązywanie problemów z hybrydowym połączeniem sieci VPN
Ten artykuł zawiera wskazówki dotyczące rozwiązywania problemów z połączeniem bramy sieci VPN między siecią lokalną a platformą Azure. Aby uzyskać ogólne informacje na temat rozwiązywania typowych błędów związanych z siecią VPN, zobacz Rozwiązywanie typowych błędów związanych z siecią VPN.
Sprawdź, czy urządzenie sieci VPN działa prawidłowo
Poniższe zalecenia są przydatne do określenia, czy lokalne urządzenie sieci VPN działa prawidłowo.
Sprawdź wszystkie pliki dziennika wygenerowane przez urządzenie sieci VPN pod kątem błędów lub błędów. Pomoże to określić, czy urządzenie sieci VPN działa prawidłowo. Lokalizacja tych informacji będzie się różnić w zależności od urządzenia. Jeśli na przykład używasz usługi RRAS w systemie Windows Server, możesz użyć następującego polecenia programu PowerShell, aby wyświetlić informacje o zdarzeniu błędu dla usługi RRAS:
Get-EventLog -LogName System -EntryType Error -Source RemoteAccess | Format-List -Property *
Właściwość Message każdego wpisu zawiera opis błędu. Oto kilka typowych przykładów:
Nie można nawiązać połączenia, prawdopodobnie z powodu nieprawidłowego adresu IP określonego dla bramy sieci VPN platformy Azure w konfiguracji interfejsu sieciowego sieci VPN usługi 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/2024 1:26:02 PM TimeWritten : 3/18/2024 1:26:02 PM UserName : Site : Container :
Niewłaściwy klucz współużytkowany określony w konfiguracji interfejsu sieciowego sieci VPN usługi 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/2024 1:34:22 PM TimeWritten : 3/18/2024 1:34:22 PM UserName : Site : Container :
Możesz również uzyskać informacje dziennika zdarzeń o próbach nawiązania połączenia za pośrednictwem usługi RRAS przy użyciu następującego polecenia programu PowerShell:
Get-EventLog -LogName Application -Source RasClient | Format-List -Property *
W przypadku niepowodzenia nawiązania połączenia ten dziennik będzie zawierać błędy, które wyglądają podobnie do następujących:
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/2024 1:29:21 PM
TimeWritten : 3/18/2024 1:29:21 PM
UserName :
Site :
Container :
Weryfikowanie łączności
Zweryfikuj łączność i routing w bramie sieci VPN. Urządzenie sieci VPN może nie być prawidłowo rozsyłane przez usługę Azure VPN Gateway. Użyj narzędzia, takiego jak PsPing, aby zweryfikować łączność i routing w bramie sieci VPN. Aby na przykład przetestować łączność z komputera lokalnego do serwera internetowego znajdującego się w sieci wirtualnej, uruchom następujące polecenie (zastępując <<web-server-address>>
adresem serwera internetowego):
PsPing -t <<web-server-address>>:80
Jeśli maszyna lokalna może kierować ruch do serwera internetowego, powinny zostać wyświetlone dane wyjściowe podobne do następujących:
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
Jeśli maszyna lokalna nie może komunikować się z określonym miejscem docelowym, zostaną wyświetlone następujące komunikaty:
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
Sprawdź, czy zapora lokalna zezwala na przekazywanie ruchu sieci VPN i czy otwarte są poprawne porty.
Sprawdź, czy lokalne urządzenie sieci VPN używa metody szyfrowania zgodnej z bramą sieci VPN platformy Azure. W przypadku routingu opartego na zasadach brama sieci VPN platformy Azure obsługuje algorytmy szyfrowania AES256, AES128 i 3DES. Bramy oparte na trasach obsługują rozwiązania AES256 i 3DES. Aby uzyskać więcej informacji, zobacz About VPN devices and IPsec/IKE parameters for Site-to-Site VPN Gateway connections.
Sprawdzanie problemów z bramą sieci VPN platformy Azure
Poniższe zalecenia są przydatne do określania, czy występuje problem z bramą sieci VPN platformy Azure:
Sprawdź dzienniki diagnostyczne usługi Azure VPN Gateway pod kątem potencjalnych problemów. Aby uzyskać więcej informacji, ee krok po kroku: przechwytywanie dzienników diagnostycznych bramy sieci wirtualnej usługi Azure Resource Manager.
Sprawdź, czy brama sieci VPN platformy Azure i lokalne urządzenie sieci VPN są skonfigurowane przy użyciu tego samego klucza uwierzytelniania współużytkowanego. Klucz wspólny przechowywany przez bramę sieci VPN platformy Azure można wyświetlić przy użyciu następującego polecenia interfejsu wiersza polecenia platformy Azure:
azure network vpn-connection shared-key show <<resource-group>> <<vpn-connection-name>>
Użyj polecenia odpowiedniego dla lokalnego urządzenia sieci VPN, aby wyświetlić klucz współużytkowany skonfigurowany dla tego urządzenia.
Sprawdź, czy podsieć GatewaySubnet zawierająca bramę sieci VPN platformy Azure nie jest skojarzona z sieciową grupą zabezpieczeń.
Szczegóły podsieci można wyświetlić przy użyciu następującego polecenia interfejsu wiersza polecenia platformy Azure:
azure network vnet subnet show -g <<resource-group>> -e <<vnet-name>> -n GatewaySubnet
Upewnij się, że nie ma pola danych o nazwie identyfikator sieciowej grupy zabezpieczeń. Poniższy przykład przedstawia wyniki wystąpienia GatewaySubnet z przypisaną sieciową grupą zabezpieczeń (VPN-Gateway-Group). Może to uniemożliwić poprawne działanie bramy, jeśli istnieją reguły zdefiniowane dla tej sieciowej grupy zabezpieczeń.
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
Sprawdź, czy maszyny wirtualne w sieci wirtualnej platformy Azure są skonfigurowane tak, aby zezwalały na ruch przychodzący spoza sieci wirtualnej. Sprawdź wszystkie reguły sieciowej grupy zabezpieczeń skojarzone z podsieciami zawierającymi te maszyny wirtualne. Wszystkie reguły sieciowej grupy zabezpieczeń można wyświetlić przy użyciu następującego polecenia interfejsu wiersza polecenia platformy Azure:
azure network nsg show -g <<resource-group>> -n <<nsg-name>>
Sprawdź, czy brama sieci VPN platformy Azure jest połączona. Aby sprawdzić bieżący stan połączenia sieci VPN platformy Azure, możesz użyć następującego polecenia programu Azure PowerShell. Parametr <<connection-name>>
to nazwa połączenia sieci VPN platformy Azure, które łączy bramę sieci wirtualnej i bramę lokalną.
Get-AzureRmVirtualNetworkGatewayConnection -Name <<connection-name>> - ResourceGroupName <<resource-group>>
Poniższe fragmenty kodu podkreślają dane wyjściowe wygenerowane, jeśli brama jest połączona (pierwszy przykład) i rozłączona (drugi przykład):
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
...
Różne problemy
Poniższe zalecenia są przydatne do określania, czy występuje problem z konfiguracją maszyny wirtualnej hosta, wykorzystaniem przepustowości sieci lub wydajnością aplikacji:
Sprawdź konfigurację zapory. Sprawdź, czy zapora w systemie operacyjnym gościa uruchomiona na maszynach wirtualnych platformy Azure w podsieci jest poprawnie skonfigurowana tak, aby zezwalała na dozwolony ruch z lokalnych zakresów adresów IP.
Sprawdź, czy liczba ruchu nie jest bliska limitu przepustowości dostępnej dla bramy sieci VPN platformy Azure. Jak to sprawdzić, zależy od lokalnego urządzenia sieci VPN. Jeśli na przykład używasz usługi RRAS w systemie Windows Server, możesz użyć monitora wydajności do śledzenia ilości odbieranych i przesyłanych danych za pośrednictwem połączenia sieci VPN. Korzystając z obiektu RAS Total, wybierz liczniki Bajty odebrane/s i Bajty przesyłane/s liczniki:
liczniki wydajności
Należy porównać wyniki z przepustowością dostępną do bramy sieci VPN (z 100 Mb/s dla jednostki SKU w warstwie Podstawowa do 1,25 Gb/s dla jednostki SKU VpnGw3):
Sprawdź, czy wdrożono odpowiednią liczbę i rozmiar maszyn wirtualnych dla obciążenia aplikacji. Ustal, czy którakolwiek z maszyn wirtualnych w sieci wirtualnej platformy Azure działa wolno. Jeśli tak, mogą być przeciążone, może być zbyt mało do obsługi obciążenia lub moduły równoważenia obciążenia mogą nie być poprawnie skonfigurowane. Aby to ustalić, przechwytywać i analizować informacje diagnostyczne. Wyniki można sprawdzić za pomocą witryny Azure Portal, ale dostępnych jest również wiele narzędzi innych firm, które mogą zapewnić szczegółowy wgląd w dane wydajności.
Za pomocą usługi Azure DDoS Protection można chronić przed złośliwym wyczerpaniem zasobów. usługi Azure DDoS Protection, w połączeniu z najlepszymi rozwiązaniami dotyczącymi projektowania aplikacji, zapewnia ulepszone funkcje ograniczania ryzyka ataków DDoS w celu zapewnienia większej ochrony przed atakami DDoS. Należy włączyć usługi Azure DDOS Protection w dowolnej sieci wirtualnej obwodowej.
Sprawdź, czy aplikacja efektywnie korzysta z zasobów w chmurze. Instrumentacja kodu aplikacji uruchomionego na każdej maszynie wirtualnej w celu określenia, czy aplikacje korzystają z zasobów. Możesz użyć narzędzi, takich jak Application Insights.
Następne kroki
Dokumentacja produktu:
- maszyn wirtualnych z systemem Linux w usłudze Azure
- Co to jest program Azure PowerShell?
- Co to jest usługa Azure Virtual Network?
- Co to jest interfejs wiersza polecenia platformy Azure?
- Co to jest usługa VPN Gateway?
- maszyn wirtualnych z systemem Windows na platformie Azure
Moduły microsoft Learn:
- Konfigurowanie zasobów platformy Azure przy użyciu narzędzi
- Konfigurowanie usługi VPN Gateway
- Tworzenie maszyny wirtualnej z systemem Linux na platformie Azure
- Tworzenie maszyny wirtualnej z systemem Windows na platformie Azure