Serwisanci dostępni teraz · czynne całą dobę, także w weekendy i świętaWarszawa i okolice · dojazd bezpłatny
Darmowa diagnoza laptopa

Darmowa diagnoza laptopa

Dojazd do klienta bezpłatnie

Dojazd do klienta bezpłatnie

Laptopy zastępcze bezpłatnie

Laptopy zastępcze bezpłatnie

Odbiór i zwrot sprzętu bezpłatnie

Odbiór i zwrot sprzętu bezpłatnie

Set-DnsClientServerAddress nie zapisuje DNS

Termin Definicja
Set-DnsClientServerAddress nie zapisuje DNS

Set-DnsClientServerAddress niezapisujące DNS wskazuje na brak uprawnień administratora lub błędnie podany identyfikator interfejsu sieciowego.

Set-DnsClientServerAddress nie zapisuje DNS — czym jest ten problem

Polecenie Set-DnsClientServerAddress służy do ustawiania adresów serwerów DNS przypisanych do konkretnego interfejsu sieciowego w systemie Windows. DNS, czyli system nazw domenowych, odpowiada za zamianę nazw takich jak example.com na adresy IP używane podczas nawiązywania połączenia. Gdy polecenie nie zapisuje wskazanej konfiguracji, zmiana może nie być widoczna w ustawieniach karty sieciowej, a po ponownym uruchomieniu komputera może powrócić wcześniejszy adres.

Sam komunikat o nieudanej zmianie nie zawsze oznacza awarię sieci. Często problem dotyczy sposobu wykonania polecenia, uprawnień konta albo identyfikacji interfejsu. W systemie Windows każdy interfejs ma własny numer ifIndex, nazwę oraz zestaw właściwości. Wartości te nie są wymienne. Nazwa wyświetlana jako Wi-Fi, Ethernet lub inna etykieta opisowa nie jest tym samym co numer używany w parametrze InterfaceIndex.

Przykładowa składnia wygląda następująco: Set-DnsClientServerAddress -InterfaceIndex 12 -ServerAddresses ("1.1.1.1","8.8.8.8"). Numer 12 jest wyłącznie przykładem i nie powinien być kopiowany bez sprawdzenia. Na innym komputerze, a nawet po zmianie sprzętu lub kolejności urządzeń, ten sam interfejs może mieć inny indeks. Z tego powodu diagnozę rozpoczyna się od odczytania aktualnych danych, a nie od zgadywania numeru.

Set-DnsClientServerAddress i kontekst techniczny konfiguracji

Zmiana DNS może być wykonywana na kilku poziomach. Adres może pochodzić z DHCP, czyli z automatycznej konfiguracji przekazywanej przez router lub inną usługę sieciową, albo zostać wpisany ręcznie w ustawieniach interfejsu. Polecenie PowerShell zmienia konfigurację klienta DNS dla wskazanej karty, ale nie zawsze usuwa wszystkie czynniki, które wpływają na działanie sieci. Jeżeli aktywne jest automatyczne pobieranie parametrów, późniejsze odświeżenie dzierżawy DHCP może nadpisać wcześniejszą wartość.

Istotne jest także rozróżnienie między adresem DNS a pamięcią podręczną DNS. Polecenie ipconfig /flushdns czyści zapamiętane odpowiedzi, lecz nie ustawia nowego serwera. Z kolei Get-DnsClientServerAddress pokazuje konfigurację przypisaną do interfejsu, ale nie potwierdza jeszcze, że wskazany serwer odpowiada. Do oceny działania potrzebne są osobne testy, na przykład Resolve-DnsName albo próba rozwiązania nazwy po zmianie ustawień.

W porównaniu z graficznym panelem ustawień PowerShell pozwala precyzyjnie wybrać interfejs i powtarzalnie stosować konfigurację. Panel systemowy bywa wygodniejszy przy pojedynczej zmianie, lecz przy wielu kartach łatwiej pomylić aktywne Wi-Fi z wyłączonym Ethernetem, adapterem wirtualnym albo nieużywanym urządzeniem. Właściwa metoda zależy od tego, czy potrzebna jest jednorazowa korekta, czy kontrolowana konfiguracja wykonywana według stałej procedury.

Nie należy też utożsamiać problemu z awarią samego DNS. Jeżeli witryny nie otwierają się po zmianie, przyczyną może być brak trasy, filtr zapory, nieprawidłowy adres bramy, uszkodzony stos TCP/IP albo niedostępność wybranego serwera. Dlatego skuteczna diagnoza obejmuje zarówno zapis wartości, jak i sprawdzenie komunikacji.

Set-DnsClientServerAddress nie zapisuje DNS — typowe problemy

  • Brak uruchomienia PowerShell z uprawnieniami administratora. Modyfikowanie ustawień sieciowych jest operacją chronioną. Przy zwykłym oknie użytkownika polecenie może zostać odrzucone albo zmiana nie zostanie zastosowana w oczekiwanym zakresie. Należy uruchomić Windows PowerShell lub Terminal jako administrator i ponowić działanie.

  • Błędny numer InterfaceIndex. Warto sprawdzić go poleceniem Get-NetAdapter lub Get-DnsClientServerAddress. Szczególną uwagę zwraca się na nazwę interfejsu, jego stan oraz przypisany indeks. Wpisanie numeru należącego do wyłączonej karty może dać wrażenie, że DNS nie został zapisany, choć zmiana trafiła do innego urządzenia.

  • Nieprawidłowy format parametru ServerAddresses. Przy kilku adresach należy przekazać tablicę wartości, na przykład ("192.0.2.10","192.0.2.11"). Pojedynczy adres może zostać podany jako tekst, lecz przy większej liczbie elementów brak właściwej składni może spowodować błąd walidacji lub zapis tylko części konfiguracji.

  • Wybranie adresu, który nie jest osiągalny z danej sieci. Wartość może zostać przyjęta przez system, ale rozwiązywanie nazw nadal będzie się kończyć niepowodzeniem. Test powinien być przeprowadzany z uwzględnieniem aktualnego połączenia, bramy oraz reguł filtrowania.

  • Nadpisywanie ustawień przez DHCP, skrypt logowania, narzędzie producenta karty albo firmową politykę systemową. W takim przypadku ręczna zmiana może być widoczna tylko przez krótki czas. Należy obserwować konfigurację przed odświeżeniem połączenia i po nim.

  • Zmiana została wykonana na niewłaściwym profilu lub niewłaściwej karcie. Przy jednoczesnym połączeniu przez Wi-Fi i Ethernet system może korzystać z interfejsu o niższym koszcie trasy. Ustawienie DNS na nieużywanej karcie nie wpłynie wtedy na bieżące otwieranie stron.

  • Ograniczenie przez oprogramowanie ochronne lub uszkodzenie składników sieciowych. Jeżeli odczyt konfiguracji, odnowienie adresu i testy zapytań dają sprzeczne wyniki, potrzebne jest sprawdzenie usług systemowych oraz stosu sieciowego, a nie tylko ponowne wpisywanie tej samej komendy.

Set-DnsClientServerAddress — praktyczne sprawdzenie i naprawa

Najbezpieczniej rozpocząć od zebrania informacji. Polecenie Get-NetAdapter | Format-Table -Auto pozwala zobaczyć nazwy kart, ich stan oraz indeksy. Następnie przydatne jest Get-DnsClientServerAddress -AddressFamily IPv4, a w sieciach korzystających z IPv6 także odczyt konfiguracji dla tego protokołu. Wyniki należy porównać z kartą, która faktycznie zapewnia dostęp do sieci.

Po potwierdzeniu właściwego indeksu można zastosować zmianę i od razu sprawdzić rezultat:

Set-DnsClientServerAddress -InterfaceIndex 12 -ServerAddresses ("1.1.1.1","8.8.8.8")

Get-DnsClientServerAddress -InterfaceIndex 12

Jeśli odczyt pokazuje nowe wartości, zapis konfiguracji się powiódł. Kolejny krok to test działania, na przykład Resolve-DnsName example.com. W razie problemów warto wyczyścić pamięć podręczną poleceniem Clear-DnsClientCache, rozłączyć i ponownie połączyć interfejs, a następnie ponowić zapytanie. Nie należy jednak traktować czyszczenia pamięci jako zamiennika ustawienia DNS.

Przy konfiguracji automatycznej pomocne jest porównanie stanu przed i po poleceniach ipconfig /release oraz ipconfig /renew. Jeżeli po odnowieniu dzierżawy pojawiają się wcześniejsze adresy, wskazuje to na źródło konfiguracji poza samym poleceniem Set-DnsClientServerAddress. Wtedy trzeba ustalić, czy zmiana ma być utrzymywana ręcznie, czy powinna zostać wprowadzona w urządzeniu przekazującym ustawienia sieciowe.

Warto zachować wynik poleceń oraz dokładny komunikat błędu. Informacja o nazwie interfejsu, jego indeksie, stanie połączenia i momencie utraty ustawień znacznie skraca dalsze szukanie przyczyny. Należy unikać wielokrotnego uruchamiania losowych poleceń naprawczych, ponieważ utrudnia to ustalenie, która czynność faktycznie zmieniła konfigurację.

Set-DnsClientServerAddress nie zapisuje DNS — kiedy zgłosić się do serwisu

Zgłoszenie problemu do serwisu jest uzasadnione, gdy polecenie jest wykonywane z właściwymi uprawnieniami, indeks interfejsu został potwierdzony, a mimo to wartości powracają do wcześniejszego stanu albo system nie pozwala ich zastosować. Pomocy wymaga także sytuacja, w której zmiana DNS powoduje utratę dostępu do stron, działają tylko wybrane domeny, występują częste rozłączenia lub kilka interfejsów działa jednocześnie w sposób trudny do rozróżnienia.

W Warszawskim Pogotowiu Komputerowym 24/7 problem może zostać opisany wraz z komunikatem PowerShell, wynikami Get-NetAdapter i Get-DnsClientServerAddress oraz informacją, czy połączenie jest realizowane przez Wi-Fi czy Ethernet. Tak przygotowane dane ułatwiają odtworzenie sytuacji i ograniczają ryzyko zmiany niewłaściwego interfejsu. Przed zgłoszeniem warto zapisać również moment pojawienia się problemu, ostatnie zmiany sterowników lub ustawień oraz informację, czy po ponownym uruchomieniu komputera konfiguracja nadal pozostaje utracona.

Nie powinno się samodzielnie usuwać profili sieciowych ani resetować całego stosu komunikacyjnego, jeśli komputer jest używany do pracy i nie ma kopii bieżących ustawień. Takie działania mogą usunąć zapisane sieci, reguły lub dodatkowe konfiguracje. Najpierw należy ustalić, czy problem dotyczy uprawnień, indeksu interfejsu, źródła DHCP, składni polecenia czy faktycznej łączności z wybranym serwerem DNS. Dopiero na tej podstawie dobiera się dalsze czynności.