Windows VPN: sparad profil kontra det aktiva gränssnittets tillstånd
Den ena vyn är konfiguration, den andra är vad stacken har tillämpat. Jämför index, familjer och rutter medan tunneln är uppe, och sluta ta bort adaptrar.
En Windows VPN dyker upp på två ställen som svarar på olika frågor, och att blanda ihop dem ger en självsäker men felaktig diagnos. Den sparade profilen säger vad någon konfigurerade; det aktiva gränssnittet säger vad stacken just tillämpade. När en anslutning upprättas och trafiken ändå tar fel väg måste båda vyerna läsas, i just den ordningen. Ingen av dem ensam säger om applikationens paket lämnade tunneln.
Två vyer av samma tunnel
Profilvyn är konfiguration: serveradress, tunneltyp, autentiseringsmetod, inställningar för delad tunnel. Den kan vara korrekt medan anslutningen ignorerar den, och den kan vara inaktuell medan anslutningen fungerar perfekt, eftersom en klient som ansluter igen kanske inte läser om det du redigerade. Gränssnittsvyn är tillämpat tillstånd: vilka adaptrar som finns, vilka adressfamiljer de bär, deras mätvärden och deras anslutningstillstånd. Den ändras när tunnlar kommer och går, vilket gör den till rätt plats för en fråga om levande routning och fel plats för en konfigurationsfråga.
Att läsa dem tillsammans är hela metoden, och att läsa en av dem ensam är hur folk till slut tar bort en frisk adapter. Kommandona nedan ger båda vyerna utan att ändra något.
Läs båda vyerna utan att ändra något
Börja med de sparade profilerna, eftersom det är det billigaste faktumet att bekräfta. Notera tunneltypen och värdet för delad tunnel, eftersom båda avgör vilka destinationer som alls ska in i tunneln. Om profilen är fel, rätta den via dess stödda konfigurationsyta, eftersom inget i gränssnittslistan reparerar en profil som pekar på en felaktig gateway.
Get-VpnConnection | Select-Object Name,ServerAddress,TunnelType,SplitTunneling,ConnectionStatusGränssnittsvyn har en annan form: en tunnel kan uppta två rader när den bär båda adressfamiljerna. Läs indexet som identiteten och aliaset som en etikett någon valde, och förvänta dig att aliaset ändras mellan klientversioner.
Get-NetIPInterface | Select-Object InterfaceIndex,InterfaceAlias,AddressFamily,ConnectionState,InterfaceMetricNärvaro är inte bevis på användning, eftersom ett gränssnitt kan finnas, vara anslutet och ändå inte vara det som rutten till din destination väljer. Ha det i åtanke innan du behandlar en okänd adapter som felet. Dessa två fel ser identiska ut utifrån: en korrekt profil med en rutt som aldrig använder den, och en felaktig profil med en rutt som använder den. De har helt olika rättelser, och därför finns nästa avsnitt.
Följ rutten till destinationen
Fråga stacken vilken väg den skulle ta för adressen som applikationen faktiskt kontaktar. Det är frågan som gränssnittslistan inte kan svara på ensam.
Find-NetRoute -RemoteIPAddress 10.60.20.10 | Select-Object -First 1
Get-NetIPAddress -InterfaceIndex 37 | Select-Object IPAddress,AddressFamily,PrefixLengthDet första kommandot rapporterar två fält som är värda att läsa: gränssnittsaliaset för den valda källan och nästa hopp för den destinationen. Indexet 37 i det andra kommandot är vad den första utdata skrev ut, inte en konstant att kopiera, och adressen 10.60.20.10 är illustrativ. Om den valda källan tillhör den fysiska adaptern medan destinationen borde ligga inuti tunneln, har du hittat urvalsproblemet, eftersom VPN-gränssnittet kan vara helt friskt och bara inte föredraget. Ett mätvärde är bara en del av det beslutet, eftersom rutspecificitet, policy och gränssnittstillstånd alla deltar.
Jämför tre tillstånd under samma förhållanden
Registrera gränssnittslistan och den valda rutten före anslutning, medan du är ansluten och efter frånkoppling, med samma destination och samma kommandon varje gång. Den jämförelsen skiljer ett aktuellt tunnelgränssnitt från en gammal dold adapter som lämnats av en avinstallation, och från en andra klient som också körs. Den berättar också om tunnelgränssnittet försvinner rent, eftersom en adapter som består efter frånkoppling är ett annat problem än en som aldrig dök upp. Utan de tre ögonblicksbilderna ser varje okänt alias ut som boven.
Spara de tre utdata tillsammans med ärendet, eftersom två kommando utdata slår ett stycke beskrivning. En kollega kan jämföra dem utan att upprepa din session alls.
Ta inte bort det du inte har identifierat
Okända adaptrar tillhör vanligtvis något: en hanterad klient, en virtuell switch, ett containernätverk eller en säkerhetsagent. Att ta bort en kan avlägsna en fungerande komponent och lämna det ursprungliga symptomet precis där det var. Om rutten är inaktuell, hitta ruttens ägare och rätta den där; om profilen är fel, redigera profilen. Dokumentationen för Get-NetIPInterface listar fälten som används ovan, inklusive mätvärdes- och tillståndskolumnerna som gör jämförelsen meningsfull.
Namnge objektet, hitta dess ägare och agera sedan på den ägaren. Allt annat är att byta namn på problemet i stället för att läsa det.