Битлента
Сетевые команды и утилиты5 мин чтения·

Set-DnsClientServerAddress: как поменять DNS-серверы в Windows командой

Как задать и вернуть DNS-серверы адаптера командой Set-DnsClientServerAddress: синтаксис, проверка результата и откат к автоматическим настройкам.

Кратко

Set-DnsClientServerAddress задаёт DNS-серверы выбранного интерфейса через параметры -InterfaceAlias и -ServerAddresses, а ключ -ResetServerAddresses возвращает автоматическое получение. Команда требует прав администратора.

Для чего нужна команда и когда она удобнее окна настроек

Смена DNS через свойства адаптера занимает несколько кликов, но плохо повторяется: на каждом компьютере приходится проходить тот же путь вручную. Командлет Set-DnsClientServerAddress делает то же самое одной строкой, и её можно вставить в инструкцию для домашних или в небольшой скрипт.

Команда меняет DNS у конкретного интерфейса, а не у всей системы сразу. Поэтому сначала нужно узнать имя подключения. Список имён показывает Get-NetAdapter, а текущие значения DNS показывает Get-DnsClientServerAddress.

Для общей справки о том, как это делается мышью в разных версиях Windows, есть отдельные страницы про Windows 10 и Windows 11. Здесь описан только путь через командную строку.

Порядок действий от проверки до результата

Выполняйте шаги последовательно, и ошибиться будет сложно.

  1. Откройте PowerShell от имени администратора.
  2. Выполните Get-NetAdapter и найдите имя нужного подключения, например Wi-Fi или Ethernet.
  3. Запишите текущие DNS-серверы командой Get-DnsClientServerAddress -InterfaceAlias "Wi-Fi", чтобы можно было вернуть всё назад.
  4. Задайте новые значения: Set-DnsClientServerAddress -InterfaceAlias "Wi-Fi" -ServerAddresses ("адрес1","адрес2").
  5. Проверьте результат повторным запуском Get-DnsClientServerAddress.
  6. Очистите DNS-кэш командой Clear-DnsClientCache, чтобы старые ответы не мешали проверке.

В кавычках подставьте реальные адреса серверов, которые вы выбрали осознанно. Первый адрес считается основным, второй — запасным.

Как вернуть автоматическую настройку

Если после эксперимента нужно вернуть значения, полученные от роутера, используйте ключ сброса: Set-DnsClientServerAddress -InterfaceAlias "Wi-Fi" -ResetServerAddresses. После этого адаптер снова будет получать DNS по DHCP, как и раньше.

Это простой откат, потому что не требует помнить старые адреса. Вручную записанные значения полезны, только если вы раньше задавали DNS вручную и хотите восстановить именно их.

Помните, что значения IPv4 и IPv6 хранятся отдельно. Команда по умолчанию меняет те, которые вы передали, поэтому для IPv6 нужно указывать адреса соответствующего формата. Если вы не используете IPv6 осознанно, обычно достаточно настроить IPv4.

🛡️ Остались проблемы с соединением?
Можно пользоваться постоянно: российские приложения работают, включать и выключать ничего не нужно. Без карты и регистрации, настройка за пару минут.
Попробовать бесплатно

Типичные ошибки и их причины

Чаще всего командлет не срабатывает по небольшому набору причин.

СимптомВероятная причина
Отказано в доступеPowerShell запущен без прав администратора
Не найден интерфейсИмя написано неточно, проверьте через Get-NetAdapter
Значения не изменилисьЗаданы для другого адаптера, чем используется сейчас
Сайты не открываются после сменыУказан недоступный DNS-сервер, адрес введён с опечаткой
Через время вернулись прежние значенияПараметры перезаписаны другой программой или политикой

Последний случай встречается на рабочих компьютерах с групповыми политиками: администратор организации может принудительно задавать DNS, и ваши изменения не сохранятся. В таком случае обратитесь к тому, кто отвечает за сеть.

Как проверить, что новые серверы действительно работают и что не стоит делать

Простого вывода настроек недостаточно: адрес может быть записан, но сервер при этом не отвечает. Проверьте, что имена разрешаются, командой Resolve-DnsName с любым нужным именем. Для явной проверки конкретного сервера укажите его параметром -Server: Resolve-DnsName имя -Server адрес. Если ответ приходит, сервер доступен и отвечает.

Если ответа нет, вернитесь к автоматическим настройкам и проверьте доступность шлюза. Бывает, что дело вовсе не в DNS, а в потерянной связи с роутером.

Сравнивая скорость ответов разных серверов, не делайте поспешных выводов по одному запросу: результат зависит от кэша, времени суток и маршрута.

Не вписывайте адреса из случайных источников: DNS-сервер видит, какие имена вы запрашиваете, и вы доверяете ему часть сведений о своей работе в сети. Выбирайте серверы провайдера, роутера либо известных публичных сервисов, с условиями которых вы ознакомились.

Не меняйте DNS на рабочем компьютере без согласования с администратором: внутренние имена организации могут перестать открываться. И не забудьте сохранить исходные значения до начала изменений.

Пример для домашнего компьютера и как действует несколько интерфейсов

Предположим, что вы хотите на время задать для Wi-Fi другие DNS-серверы и проверить, как это скажется на открытии сайтов. Сначала запишите текущие значения. Затем задайте новые командой с двумя адресами, очистите кэш и проверьте разрешение нескольких имён через Resolve-DnsName. Если всё в порядке, оставьте как есть. Если появились сбои, выполните сброс ключом -ResetServerAddresses.

Фиксируйте результат, а не впечатления: откройте несколько разных сайтов, сравните время отклика в обоих вариантах. Один неудачный запуск не повод менять настройки навсегда, ведь причиной может быть кэш или временная нагрузка.

Если вы настраиваете сеть для всей семьи, разумнее изменить DNS в роутере: тогда он будет действовать для всех устройств сразу, и на каждом компьютере ничего менять не придётся.

На компьютере может быть сразу несколько активных подключений: проводное и беспроводное, виртуальные адаптеры. Команда меняет DNS только у указанного интерфейса. Если вы настроили Wi-Fi, а система использует Ethernet, видимого эффекта не будет.

Система выбирает интерфейс по метрике, и порядок использования DNS зависит от этого выбора. Проверить, какой из интерфейсов основной, можно по таблице маршрутов или по выводу Get-NetIPConfiguration. Если нужно, чтобы настройки совпадали, примените команду к каждому интерфейсу отдельно.

Виртуальные адаптеры, созданные программами, лучше не трогать: их параметры управляются самим приложением и могут быть перезаписаны при следующем запуске.

Если команда нужна для повторяющейся настройки, сохраните её вместе с комментарием в текстовый файл: какой интерфейс, какие адреса, зачем меняли. Через время пригодится и сама строка, и пометка о причине. Перед массовым применением на нескольких компьютерах проверьте её на одном и убедитесь, что имена интерфейсов совпадают, иначе на части машин команда завершится ошибкой, а настройки останутся прежними.

Если после смены DNS отдельные сайты стали открываться медленнее, не спешите возвращать настройки: первые обращения к новым именам обычно идут дольше, пока кэш пуст. Дайте системе поработать некоторое время и сравните ощущения. Но если сайты не открываются совсем, откат через сброс адресов занимает секунды и не требует перезагрузки.

🛡️ Остались проблемы с соединением?
Можно пользоваться постоянно: российские приложения работают, включать и выключать ничего не нужно. Без карты и регистрации, настройка за пару минут.
Попробовать бесплатно
powershelldnswindowsнастройка

Часто задаваемые вопросы

Читайте также