Ein VPN, zwei Windows-Konten: Warum die andere Sitzung bricht
Routen und Resolver gelten maschinenweit, daher leitet der Tunnel eines Kontos die anderen um. Finden Sie dann heraus, welche Richtlinie oder welches Anmeldemodul den Eintrag Benutzer wechseln entfernt hat.
Zwei Personen sind angemeldet, eine von ihnen verbindet den Unternehmens-Tunnel, und der Browser des anderen Kontos lädt keine Seiten mehr, die vor einer Minute noch funktionierten. Auf derselben Maschine ist auch der Eintrag Benutzer wechseln vom Anmeldebildschirm verschwunden, sodass die zweite Person nicht in ihre eigene Sitzung zurückkehren kann. Das von der zweiten Sitzung aus nach außen zu verfolgen, ist der schnellste Weg, es zu verstehen, denn an der Verbindung des ersten Benutzers ist nichts verborgen, und am Problem des zweiten Benutzers ist nichts rätselhaft, sobald man sieht, welche Objekte gemeinsam genutzt werden.
Beginnen Sie in der Sitzung, die kaputtging
Gehen Sie zum Desktop des zweiten Kontos, nicht des ersten. Öffnen Sie dort ein Terminal und sehen Sie sich die Routing-Tabelle und die Resolver-Liste an, während die andere Sitzung verbunden ist. Alles, was Sie sehen, gehört zur Maschine, nicht zum anderen Benutzer, und das ist der erste Hinweis.
Get-NetRoute -AddressFamily IPv4 | Sort-Object RouteMetric | Select-Object -First 12 DestinationPrefix,NextHop,InterfaceAlias
Get-DnsClientServerAddress -AddressFamily IPv4 | Select-Object InterfaceAlias,ServerAddresses
Get-NetConnectionProfile | Select-Object Name,NetworkCategory,IPv4Connectivity
Wenn die Standardroute jetzt auf die Tunnel-Schnittstelle zeigt, folgt der Datenverkehr des zweiten Benutzers ihr ebenfalls. Wenn die Resolver-Liste einen privaten Server hinzugewonnen hat, gehen ihre Abfragen jetzt an einen Ort, den sie nicht erreichen können, sobald der Tunnel wegfällt. Nichts davon ist ein Fehler im Client; es sind die Folgen eines einzigen, gemeinsam genutzten Netzwerk-Stacks.
Der dritte Befehl erklärt eine zweite Art von Beschwerden. Wenn ein Adapter die Maschine von einer öffentlichen in eine private Netzwerkkategorie umschaltet, ändern sich profilgebundene Firewall-Regeln für alle Konten auf einmal, sodass Anwendungen, die morgens erlaubt waren, nachmittags blockiert werden können, ohne dass jemand eine Regel anfasst.
Die Verbindung gehört dem Benutzer, das Netzwerk nicht
Windows bewahrt das Verbindungsobjekt im Profil des Benutzers auf, der es erstellt hat. Der virtuelle Adapter, den sie erzeugt, die Routen, die sie installiert, und die DNS-Server, die sie registriert, gelten maschinenweit. Diese Trennung ist die Ursache beider Symptome aus der Überschrift.
Das erklärt auch, warum das Abmelden des ersten Benutzers den zweiten normalerweise repariert. Das Entfernen der Verbindung entfernt den Adapter und die Routen mit ihr, und der maschinenweite Zustand kehrt zu dem zurück, der vor dem Einwählen bestand. Das ist eine nützliche Diagnose: Wenn das Abmelden das andere Konto repariert, sehen Sie gemeinsamen Zustand und kein defektes Profil.
Was Sie nicht können, ist der zweiten Sitzung eine andere Routing-Tabelle zu geben. Es gibt eine Tabelle, und zwei beliebige Sitzungen teilen sie. Das ist eine Eigenschaft des Betriebssystems und keine Einschränkung eines bestimmten Clients. Es bedeutet auch, dass jedes Design, das etwas anderes annimmt, weiter scheitern wird, und die Fehler werden wie unzusammenhängende Anwendungsfehler aussehen.
Finden Sie in dieser Reihenfolge, was Benutzer wechseln entfernt hat
Die schnelle Benutzerumschaltung ist aus einem völlig anderen Grund verschwunden, und die Lösung hat nichts mit Routing zu tun. Gehen Sie die vier Kandidaten der Reihe nach durch, denn die ersten beiden sind in Sekunden rückgängig zu machen, und die späteren kosten etwas.
Get-ItemProperty 'HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System' -Name HideFastUserSwitching
gpresult /h $env:TEMP\gp.html
Get-Service | Where-Object { $_.DisplayName -match 'Logon|Access|Credential' } | Select-Object Status,Name,DisplayName
Der Registrierungswert ist die einfachste Erklärung. Wenn er existiert und 1 liest, ist der Eintrag durch Richtlinie verborgen, und der Gruppenrichtlinienpfad ist Computerkonfiguration, Administrative Vorlagen, System, Anmeldung und die Einstellung, die nach dem Ausblenden der Einstiegspunkte für die schnelle Benutzerumschaltung benannt ist. Setzen Sie sie auf Nicht konfiguriert und aktualisieren Sie mit gpupdate /force.
Der zweite Befehl sagt Ihnen, ob diese Richtlinie von einer Domäne geliefert wird, statt lokal geschrieben zu sein. Wenn sie im Bericht mit einer gewinnenden GPO erscheint, ist das Bearbeiten des lokalen Werts eine vorübergehende Lösung, die bei der nächsten Aktualisierung zurückfällt, und das Gespräch gehört dem Eigentümer der Richtlinie.
Der dritte Befehl deckt den anderen Mechanismus ab. Ein Anmeldeinformations- oder Netzwerkzugriffsanbieter, der ein Anmeldemodul installiert, kann den Eintrag unterdrücken, solange er läuft, und manche Clients registrieren auch eine Komponente, die vor der Anmeldung startet und einen Anspruch auf dem Anmeldebildschirm hält. Das Deaktivieren dieses Dienstes stellt das Wechseln wieder her, und es entfernt auch die Voranmeldungs- oder Posture-Funktionen, für die das Modul existiert.
| Cause | How to confirm | Cost of the fix |
|---|---|---|
| HideFastUserSwitching policy | Registry value present and set to 1 | None; remove the policy |
| Logon module service | Service running under a vendor name | Loses pre-logon and posture behaviour |
| GINA-era assumption | Only relevant on very old Windows | Nothing to fix; the mechanism is gone |
Ändern Sie es, ohne sich auszusperren
Halten Sie eine administrative Sitzung offen, während Sie arbeiten, und nehmen Sie niemals eine Änderung am Anmeldebildschirm auf einer Maschine vor, die Sie nur über diesen Bildschirm erreichen. Melden Sie zuerst die anderen Sitzungen ab, wenden Sie die Änderung an, aktualisieren Sie, und testen Sie dann durch Benutzerwechsel statt durch Neustart.
Notieren Sie, welche Posture-Funktionen Sie deaktiviert haben. Ein Client-Update kann das Anmeldemodul neu installieren oder wieder aktivieren, und das Symptom kehrt ohne offensichtliche Ursache zurück, meist mitten in einem Support-Fenster, wenn sich niemand an die frühere Änderung erinnert.
Gehen Sie bei einem verwalteten Gerät davon aus, dass die Einstellung von oben geliefert wird. Den Richtlinienbericht zuerst zu prüfen, spart eine Stunde lokaler Änderungen, die zurückfallen. Er sagt Ihnen auch, wen Sie fragen müssen, wenn die Antwort nein lautet. Ein Ticket, das die gewinnende Richtlinie nennt, wird doppelt so schnell gelöst wie eines, das einen Registrierungsschlüssel beschreibt, den jemand bereits geändert hat.
Prüfen Sie beide Konten und wählen Sie das Modell
Testen Sie das Ergebnis in der Reihenfolge, in der die beiden Benutzer es erleben. Melden Sie sich als das zweite Konto an, während das erste getrennt ist, bestätigen Sie den normalen Zugriff, verbinden Sie dann den Tunnel des ersten Kontos und bestätigen Sie, dass der erwartete Pfad des zweiten Kontos noch der ist, den Sie beabsichtigt hatten.
qwinsta
Get-NetRoute -DestinationPrefix 0.0.0.0/0 | Select-Object InterfaceAlias,NextHop,RouteMetric
Test-NetConnection -ComputerName intranet.example.internal -Port 443
Wenn beide Konten wirklich gleichzeitig unterschiedliche Netzwerkpfade brauchen, ist die ehrliche Antwort zwei Maschinen, zwei virtuelle Maschinen oder eine Richtlinie, bei der nur ein Pfad erforderlich ist. Ein Split-Tunnel über die gemeinsame Verbindung kann einschränken, was sich bewegt, aber er kann nicht jeder Sitzung ihre eigene Tabelle geben. Früh dorthin zu kommen ist billiger, als es nach drei versuchten Umgehungen zu entdecken.
Das ist die Entscheidung, die ausdrücklich zu treffen ist, statt darum herumzuflicken. Eine Routing-Tabelle, eine Resolver-Liste, ein Firewall-Profil: alles andere folgt daraus, und die Lösung, die das respektiert, wird auch nächsten Monat noch funktionieren.