Omówienie rozwiązywania problemów z siecią VPN

Bramy sieci wirtualnej zapewniają łączność między zasobami lokalnymi a sieciami wirtualnymi platformy Azure. Monitorowanie bram sieci wirtualnej i ich połączeń ma kluczowe znaczenie dla zapewnienia, że komunikacja nie zostanie przerwana. Usługa Azure Network Watcher umożliwia rozwiązywanie problemów z bramami sieci wirtualnej i ich połączeniami. Tę funkcję można wywołać za pośrednictwem witryny Azure Portal, programu Azure PowerShell, interfejsu wiersza polecenia platformy Azure lub interfejsu API REST. Po wywołaniu usługa Network Watcher diagnozuje kondycję bramy lub połączenia i zwraca odpowiednie wyniki. Żądanie jest długotrwałą transakcją. Wyniki są zwracane po zakończeniu diagnostyki.

Screenshot of Azure Network Watcher VPN troubleshoot in the Azure portal.

Obsługiwane typy bram

W poniższej tabeli wymieniono, które bramy i połączenia są obsługiwane w przypadku rozwiązywania problemów z usługą Network Watcher:

Brama lub połączenie Obsługiwane
Typy bram
VPN Obsługiwane
ExpressRoute Nieobsługiwany
Typy sieci VPN
Oparte na trasach Obsługiwane
Oparte na zasadach Nieobsługiwany
Typy Połączenie ion
IPsec Obsługiwane
VNet2VNet Obsługiwane
ExpressRoute Nieobsługiwany
VPNClient Nieobsługiwany

Wyniki

Zwrócone wstępne wyniki dają ogólny obraz kondycji zasobu. Bardziej szczegółowe informacje można podać dla zasobów, jak pokazano w poniższej sekcji:

Poniższa lista to wartości zwracane za pomocą interfejsu API rozwiązywania problemów:

  • startTime — ta wartość to czas rozpoczęcia wywołania interfejsu API rozwiązywania problemów.
  • endTime — ta wartość jest czasem zakończenia rozwiązywania problemów.
  • code — ta wartość to UnHealthy, jeśli występuje pojedynczy błąd diagnostyki.
  • results — wyniki są kolekcją wyników zwracanych na Połączenie ion lub bramę sieci wirtualnej.
    • id — ta wartość jest typem błędu.
    • summary — ta wartość jest podsumowaniem błędu.
    • szczegółowe — ta wartość zawiera szczegółowy opis błędu.
    • recommendedActions — ta właściwość jest kolekcją zalecanych akcji do wykonania.
      • actionText — ta wartość zawiera tekst opisujący akcję do wykonania.
      • actionUri — ta wartość zawiera identyfikator URI do dokumentacji dotyczącej sposobu działania.
      • actionUriText — ta wartość jest krótkim opisem tekstu akcji.

W poniższych tabelach przedstawiono różne typy błędów (identyfikator poniżej wyników z poprzedniej listy), które są dostępne i jeśli błąd tworzy dzienniki.

Brama

Typ błędu Przyczyna Dziennik
NoFault (brak błędów) Gdy nie zostanie wykryty błąd Tak
GatewayNotFound (nie znaleziono bramy) Nie można znaleźć bramy lub bramy nie jest aprowizowana Nie.
PlannedMaintenance Wystąpienie bramy jest w toku konserwacji Nie.
UserDrivenUpdate (aktualizacja sterowana przez użytkownika) Ten błąd występuje, gdy trwa aktualizacja użytkownika. Aktualizacja może być operacją zmiany rozmiaru. Nie.
VipUnResponsive (wirtualny adres IP nie odpowiada) Ten błąd występuje, gdy nie można skontaktować się z podstawowym wystąpieniem bramy z powodu błędu sondowania kondycji. Nie.
PlatformInActive (nieaktywna platforma) Wystąpił problem z platformą. Nie.
ServiceNotRunning Podstawowa usługa nie jest uruchomiona. Nie.
No Połączenie ionsFoundForGateway W bramie nie istnieją żadne połączenia. Ten błąd jest tylko ostrzeżeniem. Nie.
Połączenie ionsNot Połączenie ed Połączenie nie są połączone. Ten błąd jest tylko ostrzeżeniem. Tak
GatewayCPUUsageExceed Bieżące użycie procesora CPU bramy wynosi > 95%. Tak

Połączenie

Typ błędu Przyczyna Dziennik
NoFault (brak błędów) Gdy nie zostanie wykryty błąd Tak
GatewayNotFound (nie znaleziono bramy) Nie można znaleźć bramy lub bramy nie jest aprowizowana Nie.
PlannedMaintenance Wystąpienie bramy jest w toku konserwacji Nie.
UserDrivenUpdate (aktualizacja sterowana przez użytkownika) Ten błąd występuje, gdy trwa aktualizacja użytkownika. Aktualizacja może być operacją zmiany rozmiaru. Nie.
VipUnResponsive (wirtualny adres IP nie odpowiada) Ten błąd występuje, gdy nie można skontaktować się z podstawowym wystąpieniem bramy z powodu błędu sondowania kondycji. Nie.
Połączenie ionEntityNotFound Brak konfiguracji Połączenie ion Nie.
Połączenie ionIsMarkedDisconnected Połączenie jest oznaczone jako "rozłączone" Nie.
Połączenie ionNotConfiguredOnGateway Podstawowa usługa nie ma skonfigurowanego połączenia. Tak
Połączenie ionMarkedStandby Podstawowa usługa jest oznaczona jako rezerwowa. Tak
Uwierzytelnianie Niezgodność klucza wstępnego Tak
PeerReachability Brama równorzędna nie jest osiągalna. Tak
IkePolicyMismatch Brama równorzędna ma zasady IKE, które nie są obsługiwane przez platformę Azure. Tak
Błąd WfpParse Wystąpił błąd podczas analizowania dziennika programu WFP. Tak

Plik dzienników

Pliki dziennika rozwiązywania problemów z zasobami są przechowywane na koncie magazynu po zakończeniu rozwiązywania problemów z zasobami. Na poniższej ilustracji przedstawiono przykładową zawartość wywołania, które spowodowało błąd.

Screenshot shows the content of the downloaded zipped log files.

Uwaga

  1. W niektórych przypadkach tylko podzbiór plików dzienników jest zapisywany w magazynie.
  2. W przypadku nowszych wersji bramy pliki IkeErrors.txt, Scrubbed-wfpdiag.txt i wfpdiag.txt.sum zostały zastąpione plikiem IkeLogs.txt zawierającym całą aktywność IKE (nie tylko błędy).

Aby uzyskać instrukcje dotyczące pobierania plików z kont usługi Azure Storage, zobacz Pobieranie blokowego obiektu blob. Innym narzędziem, którego można użyć, jest Eksplorator usługi Storage. Aby uzyskać informacje o Eksplorator usługi Azure Storage, zobacz Pobieranie obiektów blob przy użyciu Eksplorator usługi Azure Storage

Połączenie ionStats.txt

Plik Połączenie ionStats.txt zawiera ogólne statystyki Połączenie ion, w tym bajty ruchu przychodzącego i wychodzącego, stan Połączenie ion oraz czas ustanowienia Połączenie ion.

Uwaga

Jeśli wywołanie interfejsu API rozwiązywania problemów zwróci wartość w dobrej kondycji, jedyną rzeczą zwróconą w pliku zip jest plik Połączenie ionStats.txt.

Zawartość tego pliku jest podobna do następującego przykładu:

Connectivity State : Connected
Remote Tunnel Endpoint :
Ingress Bytes (since last connected) : 288 B
Egress Bytes (Since last connected) : 288 B
Connected Since : 2/1/2017 8:22:06 PM

CPUStats.txt

Plik CPUStats.txt zawiera użycie procesora CPU i pamięć dostępną w czasie testowania. Zawartość tego pliku jest podobna do następującego przykładu:

Current CPU Usage : 0 % Current Memory Available : 641 MBs

IKElogs.txt

Plik IKElogs.txt zawiera wszelkie działania IKE znalezione podczas monitorowania.

Poniższy przykład przedstawia zawartość pliku IKElogs.txt.

Remote <IPaddress>:500: Local <IPaddress>:500: [RECEIVED][SA_AUTH] Received IKE AUTH message
Remote <IPaddress>:500: Local <IPaddress>:500: Received Traffic Selector payload request- [Tsid 0x729  ]Number of TSIs 2: StartAddress 10.20.0.0 EndAddress 10.20.255.255 PortStart 0 PortEnd 65535 Protocol 0, StartAddress 192.168.100.0 EndAddress 192.168.100.255 PortStart 0 PortEnd 65535 Protocol 0 Number of TSRs 1:StartAddress 0.0.0.0 EndAddress 255.255.255.255 PortStart 0 PortEnd 65535 Protocol 0
Remote <IPaddress>:500: Local <IPaddress>:500: [SEND] Proposed Traffic Selector payload will be (Final Negotiated) - [Tsid 0x729  ]Number of TSIs 2: StartAddress 10.20.0.0 EndAddress 10.20.255.255 PortStart 0 PortEnd 65535 Protocol 0, StartAddress 192.168.100.0 EndAddress 192.168.100.255 PortStart 0 PortEnd 65535 Protocol 0 Number of TSRs 1:StartAddress 0.0.0.0 EndAddress 255.255.255.255 PortStart 0 PortEnd 65535 Protocol 0
Remote <IPaddress>:500: Local <IPaddress>:500: [RECEIVED]Received IPSec payload: Policy1:Cipher=DESIntegrity=Md5
IkeCleanupQMNegotiation called with error 13868 and flags a
Remote <IPaddress>:500: Local <IPaddress>:500: [SEND][NOTIFY] Sending Notify Message - Policy Mismatch

IKEErrors.txt

Plik IKEErrors.txt zawiera wszelkie błędy IKE, które zostały znalezione podczas monitorowania.

Poniższy przykład przedstawia zawartość pliku IKEErrors.txt. Błędy mogą się różnić w zależności od problemu.

Error: Authentication failed. Check shared key. Check crypto. Check lifetimes. 
	 based on log : Peer failed with Windows error 13801(ERROR_IPSEC_IKE_AUTH_FAIL)
Error: On-prem device sent invalid payload. 
	 based on log : IkeFindPayloadInPacket failed with Windows error 13843(ERROR_IPSEC_IKE_INVALID_PAYLOAD)

Scrubbed-wfpdiag.txt

Plik dziennika Scrubbed-wfpdiag.txt zawiera dziennik wfp. Ten dziennik zawiera rejestrowanie błędów upuszczania pakietów i IKE/AuthIP.

Poniższy przykład przedstawia zawartość pliku Scrubbed-wfpdiag.txt. W tym przykładzie klucz wstępny Połączenie ion nie był poprawny, ponieważ można go zobaczyć z trzeciego wiersza z dołu. Poniższy przykład to tylko fragment całego dziennika, ponieważ dziennik może być długi w zależności od problemu.

...
[0]0368.03A4::02/02/2017-17:36:01.496 [ikeext] 3038|52.161.24.36|Deleted ICookie from the high priority thread pool list
[0]0368.03A4::02/02/2017-17:36:01.496 [ikeext] 3038|52.161.24.36|IKE diagnostic event:
[0]0368.03A4::02/02/2017-17:36:01.496 [ikeext] 3038|52.161.24.36|Event Header:
[0]0368.03A4::02/02/2017-17:36:01.496 [ikeext] 3038|52.161.24.36|  Timestamp: 1601-01-01T00:00:00.000Z
[0]0368.03A4::02/02/2017-17:36:01.496 [ikeext] 3038|52.161.24.36|  Flags: 0x00000106
[0]0368.03A4::02/02/2017-17:36:01.496 [ikeext] 3038|52.161.24.36|    Local address field set
[0]0368.03A4::02/02/2017-17:36:01.496 [ikeext] 3038|52.161.24.36|    Remote address field set
[0]0368.03A4::02/02/2017-17:36:01.496 [ikeext] 3038|52.161.24.36|    IP version field set
[0]0368.03A4::02/02/2017-17:36:01.496 [ikeext] 3038|52.161.24.36|  IP version: IPv4
[0]0368.03A4::02/02/2017-17:36:01.496 [ikeext] 3038|52.161.24.36|  IP protocol: 0
[0]0368.03A4::02/02/2017-17:36:01.496 [ikeext] 3038|52.161.24.36|  Local address: 13.78.238.92
[0]0368.03A4::02/02/2017-17:36:01.496 [ikeext] 3038|52.161.24.36|  Remote address: 52.161.24.36
[0]0368.03A4::02/02/2017-17:36:01.496 [ikeext] 3038|52.161.24.36|  Local Port: 0
[0]0368.03A4::02/02/2017-17:36:01.496 [ikeext] 3038|52.161.24.36|  Remote Port: 0
[0]0368.03A4::02/02/2017-17:36:01.496 [ikeext] 3038|52.161.24.36|  Application ID:
[0]0368.03A4::02/02/2017-17:36:01.496 [ikeext] 3038|52.161.24.36|  User SID: <invalid>
[0]0368.03A4::02/02/2017-17:36:01.496 [ikeext] 3038|52.161.24.36|Failure type: IKE/Authip Main Mode Failure
[0]0368.03A4::02/02/2017-17:36:01.496 [ikeext] 3038|52.161.24.36|Type specific info:
[0]0368.03A4::02/02/2017-17:36:01.496 [ikeext] 3038|52.161.24.36|  Failure error code:0x000035e9
[0]0368.03A4::02/02/2017-17:36:01.496 [ikeext] 3038|52.161.24.36|    IKE authentication credentials are unacceptable
[0]0368.03A4::02/02/2017-17:36:01.496 [ikeext] 3038|52.161.24.36|
[0]0368.03A4::02/02/2017-17:36:01.496 [ikeext] 3038|52.161.24.36|  Failure point: Remote
...

wfpdiag.txt.sum

Plik wfpdiag.txt.sum to dziennik pokazujący przetworzone bufory i zdarzenia.

Poniższy przykład to zawartość pliku wfpdiag.txt.sum.

Files Processed:
	C:\Resources\directory\924336c47dd045d5a246c349b8ae57f2.GatewayTenantWorker.DiagnosticsStorage\2017-02-02T17-34-23\wfpdiag.etl
Total Buffers Processed 8
Total Events  Processed 2169
Total Events  Lost      0
Total Format  Errors    0
Total Formats Unknown   486
Elapsed Time            330 sec
+-----------------------------------------------------------------------------------+
|EventCount    EventName            EventType   TMF                                 |
+-----------------------------------------------------------------------------------+
|        36    ikeext               ike_addr_utils_c844  a0c064ca-d954-350a-8b2f-1a7464eef8b6|
|        12    ikeext               ike_addr_utils_c857  a0c064ca-d954-350a-8b2f-1a7464eef8b6|
|        96    ikeext               ike_addr_utils_c832  a0c064ca-d954-350a-8b2f-1a7464eef8b6|
|         6    ikeext               ike_bfe_callbacks_c133  1dc2d67f-8381-6303-e314-6c1452eeb529|
|         6    ikeext               ike_bfe_callbacks_c61  1dc2d67f-8381-6303-e314-6c1452eeb529|
|        12    ikeext               ike_sa_management_c5698  7857a320-42ee-6e90-d5d9-3f414e3ea2d3|
|         6    ikeext               ike_sa_management_c8447  7857a320-42ee-6e90-d5d9-3f414e3ea2d3|
|        12    ikeext               ike_sa_management_c494  7857a320-42ee-6e90-d5d9-3f414e3ea2d3|
|        12    ikeext               ike_sa_management_c642  7857a320-42ee-6e90-d5d9-3f414e3ea2d3|
|         6    ikeext               ike_sa_management_c3162  7857a320-42ee-6e90-d5d9-3f414e3ea2d3|
|        12    ikeext               ike_sa_management_c3307  7857a320-42ee-6e90-d5d9-3f414e3ea2d3|

Kwestie wymagające rozważenia

  • Na subskrypcję można uruchomić tylko jedną operację rozwiązywania problemów z siecią VPN. Aby uruchomić inną operację rozwiązywania problemów z siecią VPN, zaczekaj na ukończenie poprzedniej operacji. Wyzwolenie nowej operacji, gdy poprzednia operacja nie została ukończona, powoduje niepowodzenie kolejnych operacji.
  • Usterka interfejsu wiersza polecenia: jeśli używasz interfejsu wiersza polecenia platformy Azure do uruchomienia polecenia, usługa VPN Gateway i konto magazynu muszą znajdować się w tej samej grupie zasobów. Klienci z zasobami w różnych grupach zasobów mogą zamiast tego używać programu PowerShell lub witryny Azure Portal.

Następny krok

Aby dowiedzieć się, jak zdiagnozować problem z bramą sieci wirtualnej lub połączeniem bramy, zobacz Diagnozowanie problemów z komunikacją między sieciami wirtualnymi.