Ustawiasz serwer DNS na karcie VPN, łączysz się ponownie, a nazwa prywatna wciąż wraca z firmowego resolvera, którego nikt nie skonfigurował na tym laptopie. Wynik wygląda tak, jakby ustawienie zignorowano, i w pewnym sensie tak było, bo lista kart to zbiór kandydatów, a nie decyzja. Windows rozwiązuje nazwy przez zasady przestrzeni nazw, która może wskazać inny serwer dla konkretnego sufiksu, i ta zasada jest stosowana, zanim ustawienie karty zostanie wzięte pod uwagę. Znalezienie reguły, która wygrała, to praca na pięć minut, gdy wiesz, którą tabelę czytać.

Co zmieniłeś i co naprawdę decyduje

Adres DNS na karcie mówi klientowi, dokąd to interfejs mógłby wysyłać zapytania. Tabela zasad rozwiązywania nazw mówi klientowi, dokąd musi wysyłać zapytania dla danej przestrzeni nazw, i jest oceniana według nazwy, a nie według karty. Gdy reguła pasuje do wpisanego sufiksu, używane są serwery tej reguły, a lista kart przestaje mieć znaczenie dla tego wyszukiwania.

Dlatego dwie nazwy na tym samym laptopie mogą w tej samej chwili iść różnymi drogami. Host w domenie firmowego sufiksu idzie zgodnie ze swoją regułą; nazwa publiczna idzie ścieżką domyślną, co zwykle oznacza kartę, która odpowie pierwsza.

Jak tabela dopasowuje nazwę

Reguły są kluczowane przestrzenią nazw i wygrywa najbardziej szczegółowe dopasowanie. Reguła dla corp.example dotyczy vpn.corp.example i nie dotyczy example.net. Reguła z przestrzenią nazw . obejmuje wszystko, czego nie obejmują inne reguły, co czyni ją najniebezpieczniejszym wpisem na liście i tym, który warto sprawdzić, gdy niepowiązana witryna jest rozwiązywana przez tunel.

Reguła może też nieść komentarz, zasady wyłączające wpis oraz ustawienia zabezpieczeń, które nie mają nic wspólnego z adresami DNS. Wyłączona reguła pozostaje widoczna w konfiguracji, ale nie działa, więc wpis, który na papierze wygląda poprawnie, może po zmianie profilu pozostać martwy.

Czytaj tabelę obowiązującą, a nie listę życzeń

Reguły skonfigurowane i reguły obowiązujące to dwa różne pytania. Get-DnsClientNrptRule wylicza, co istnieje na maszynie. Get-DnsClientNrptPolicy -Effective pokazuje, co klient rzeczywiście zastosuje, z wartościami scalonymi z zasad i ustawień lokalnych.

Porównaj sufiks w tym wyniku z testowaną nazwą, znak po znaku. Reguła dla corp.example nie wychwytuje nazwy kończącej się na corp.example.com, a kropka na końcu w jednym miejscu i brak jej w drugim wystarczą, by zmienić dopasowanie.

Bez reguły Windows pyta więcej niż jedną kartę

Gdy nic w tabeli nie rości sobie prawa do nazwy, klient może wysłać zapytanie przez kilka interfejsów i wziąć pierwszą odpowiedź, która dotrze. Wynik zależy od czasu: ta sama nazwa może zostać rozwiązana z karty przewodowej w poniedziałek i z tunelu we wtorek, a nic w konfiguracji którejkolwiek karty nie wyjaśnia różnicy.

Istnieją dwa wyjścia. Dodaj regułę dla przestrzeni nazw, aby decyzja przestała być wyścigiem, albo wyłącz równoległe zachowanie przez zasady klienta DNS i zaakceptuj wolniejsze, deterministyczne rozwiązywanie. Pierwsze zwykle lepiej pasuje do VPN z dzielonym tunelem, bo dokumentuje intencję zamiast polegać na kolejności.

Ścieżki, które całkowicie omijają resolver

Przeglądarka z włączonym bezpiecznym DNS rozwiązuje sama i przekazuje Windows tylko adres, więc tabela reguł nigdy nie widzi nazwy. Klienci zbudowani na środowiskach z własnym resolverem mogą zachowywać się tak samo. Gdy nazwa rozwiązuje się w jednej aplikacji, a w innej na tej samej maszynie zawodzi, porównaj obie ścieżki rozwiązywania, zanim dotkniesz zasad.

Sprawdź też, czy aplikacja łączy się z adresem z pamięci podręcznej z wcześniejszej sesji. Clear-DnsClientCache, a potem to samo wyszukiwanie daje czystszą odpowiedź niż wnioskowanie z nieaktualnego wyniku.

Testuj z nazwą, która zawiodła

Rozwiąż dokładną nazwę hosta z raportu, a nie publiczną domenę testu prędkości, i zanotuj, który serwer odpowiedział. Następnie zmień jedną rzecz: regułę, listę kart lub przypisanie zasad, i po ponownym połączeniu powtórz to samo wyszukiwanie, aby zastosowany stan został odbudowany.

Jeśli nazwa się rozwiązuje, a usługa nadal odmawia, przestań edytować DNS. Następnym użytecznym krokiem jest adres i trasa do niego, bo rozwiązywanie nazw już wykonało swoją pracę.

Powiązane artykuły