Приоритет dns серверов windows 10
Windows 7 x64. Два интерфейса, в разные сети. На обоих сетевые настройки комп получает от DHCP в том числе DNS-сервера. Получаемые DNS-сервера с разных интерфейсов разные.
При этом для разрешения имен всегда используется один DNS-сервер и никогда второй.
Подскажите способ выставления приоритета для определенного DNS-сервера под Windows.
И как увидеть список DNS-серверов и их приоритеты в системе в данный момент?
изучите результат команды netsh interface ipv4 add dnsservers
Примечания. Добавляет IP-адрес нового DNS-сервера в статически настраиваемый список. По умолчанию DNS-сервер добавляется в конец списка. Если указан индекс, то DNS-сервер помещается в заданную позицию списка и список сдвигается вниз. Если DNS-серверы были ранее получены через DHCP, то новый адрес заменит старый список. Если параметр Validate равен yes, то новый DNS-сервер проверяется. |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.
Конфигурация компьютера | |
Процессор: Intel Core i7-3770K | |
Материнская плата: ASUS P8Z77-V LE PLUS | |
Память: Crucial Ballistix Tactical Tracer DDR3-1600 16 Гб (2 x 8 Гб) | |
HDD: Samsung SSD 850 PRO 256 Гб, WD Green WD20EZRX 2 Тб | |
Видеокарта: ASUS ROG-STRIX-GTX1080-O8G-11GBPS | |
Звук: Realtek ALC889 HD Audio | |
Блок питания: be quiet! Straight Power 11 650W | |
CD/DVD: ASUS DRW-24B5ST | |
Монитор: ASUS VG248QE 24" | |
ОС: Windows 8.1 Pro x64 | |
Индекс производительности Windows: 8,1 | |
Прочее: корпус: Fractal Design Define R4 |
Vexel,
этот список привзязан к адатеру, а не общесистемный. Поэтому можно добавить пять DNS-серверов, но использоваться все равно будет DNS-сервер, прописанный в настройках другого адатера. (кстати тот же список можно формировать через графический интерфейс)
Чтобы использовать DNS-сервер прописанный в настройках определенного адаптера, нужно этот адаптер поставить на первое место как написал Petya V4sechkin, за что ему спасибо.
Для обеспечения безопасности и надежности интернет-соединения, а также для бесперебойного доступа к веб-сайтам, социальным сетям и онлайн-сервисам, можно использовать сторонние DNS-серверы, которые работают на первом рубеже доступа к сети Интернет.
Популярные DNS-серверы представлены на нашем сайте в разделе Безопасные DNS-сервисы. Чаще всего настройка DNS помогает эффективнее работать VPN и прокси, обеспечивая более высокий уровень защиты вашей конфиденциальности и анонимности.
Предлагаем вашему вниманию подробные инструкции, как настроить DNS на компьютере с операционными системами Windows 10, 8.1, 8, 7, Vista и XP.
Настройка DNS с помощью DNS Jumper
DNS Jumper – удобный портативный инструмент для быстрого переключения DNS на вашем компьютере. Утилита работает со следующими операционными системами: Windows 10, 8.1, 8, 7, Vista, XP и не требует дополнительных настроек в системе.
Запустите утилиту, выберите в списке DNS сервер предпочтительный сервер (например, Google Public DNS) и нажмите кнопку Применить DNS.
Настройка DNS с помощью YogaDNS
YogaDNS — это DNS клиент, который перехватывает DNS-запросы на системном уровне и позволяет обрабатывать их через определенные пользователем DNS-серверы с использованием заданных протоколов и гибких правил.
Настройка DNS в Windows 10, 8.1, 8
1. Чтобы открыть Центр управления сетями и общим доступом (также доступен в меню Панель управления > Сеть и Интернет), нажмите сочетание клавиш Windows + R и в окне «Выполнить» введите следующую команду и нажмите ОК:
2. В разделе Просмотр основных сведений о сети и настройка подключений, выберите пункт сеть для Подключения.
3. В открывшемся окне выберите пункт Свойства.
4. В окне свойств подключения в списке Отмеченные компоненты используются этим подключением выберите пункт IP версии 4 (TCP/IPv4) в Windows 10 или Протокол Интернета версии 4 (TCP/IP) и нажмите кнопку Свойства.
5. В открывшемся окне на вкладке Общие выберите пункт Использовать следующие адреса DNS-серверов.
6. Введите выбранные вами адреcа DNS, например Comss.one DNS или Google DNS, в поля Предпочитаемый DNS-cepвep и Альтернативный DNS-cepвep (в зависимости от выбранного сервиса поле может оставаться пустым).
7. Поставьте галочку для Подтвердить параметры при выходе и нажмите OK, чтобы сохранить изменения.
Обновите DNS-кэш следующим образом:
- Нажмите правой кнопкой мыши по значку Windows (меню Пуск) и выберите Командная строка (администратор) или Windows PowerShell (администратор)
- Введите команду ipconfig /flushdns и нажмите клавишу Enter (Ввод)
- Сделайте перезагрузку компьютера.
Настройка DNS в Windows 7
1. Нажмите правой кнопкой мыши на значок интернета в трее, выберите Центр управления сетями и общим доступом.
2. В разделе Просмотр активных сетей, выберите пункт справа от Подключения:
3. На вкладке Общие в окне Состояние Подключения нажмите кнопку Свойства.
4. На вкладке Сеть окна свойства подключения, прокрутите вниз и выберите Протокол Интернета версии 4 (TCP/IPv4), нажмите кнопку Свойства.
5. На вкладке "Общие" окна Свойства, в нижней части, выберите Использовать следующие адреса DNS-серверов, а затем введите IP-адреса выбранного DNS-сервиса, например, Google DNS.
6. Поставьте галочку для Подтвердить параметры при выходе и нажмите OK, чтобы сохранить изменения.
В Windows 10 при активном VPN подключении в режиме Force Tunneling (включена опция “Use default gateway on remote network”/ “Использовать основной шлюз в удаленной сети”) для разрешения имен через службу DNS используются DNS сервера и суффиксы, настроенные для VPN подключения. Соответственно, вы теряете возможность резолвить DNS имена в своей локальной сети и пользоваться Интернетом через внутреннюю LAN.
При этом с Windows 10 можно выполнить ping до ресурсов в вашей LAN сети (пропингуйте ваш шлюз, соседний компьютер или принтер), но по имени они не доступны, т.к. Windows пытается разрешить имена в локальной сети через DNS сервера, указанные для VPN соединения.
В Google я нашел рекомендации по отключению IPv6 на локальном (LAN) подключении и это работает (если вы хотите использовать Force-Tunneling).
Если для VPN подключения используется режим Split Tunneling (снята галка “Use default gateway on remote network”), вы можете пользоваться интернетом через свою локальную сеть, но не можете резолвить DNS адреса в удаленной VPN сети (в этом случае не помогает отключение IPv6).
Нужно понимать, что Windows отправляет DNS запрос с сетевого интерфейса, у которого высший приоритет (меньшее значение метрики интерфейса). Допустим, ваше VPN подключение работает в режиме Split Tunneling (вы хотите пользоваться интернетом через свою LAN и корпоративными ресурсами через VPN подключение).
С помощью PowerShell проверьте значение метрик всех сетевых интерфейсов:
Get-NetIPInterface | Sort-Object Interfacemetric
На картинке выше видно, что у локального Ethernet подключения указана более низкая метрика (25), чем у VPN интерфейса (в этом примере 100). Соответственно, DNS трафик идет через интерфейс с более низким значением метрики. Это значит, что ваши DNS запросы отправляются на ваши локальные DNS сервера, а не на DNS сервера VPN подключения. Т.е. в такой конфигурации вы не можете резолвить адреса во внешней VPN сети.
Computer Configuration -> Administrative Templates -> Network -> DNS Client-> Turn off smart multi-homed name resolution = Enabled.
Или командами (для Windows 8.1):
Set-ItemProperty -Path "HKLM:\Software\Policies\Microsoft\Windows NT\DNSClient" -Name DisableSmartNameResolution -Value 1 -Type DWord
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\Dnscache\Parameters" -Name DisableParallelAandAAAA -Value 1 -Type DWord
В Windows 10 Creators Update (1709) и выше DNS запросы отправляются на все известные DNS сервера по порядку, а не параллельно. Вы можете увеличить приоритет конкретного DNS, если уменьшите его метрику.
Соответственно, изменение метрики позволит вам отправлять DNS запросы через тот сетевой интерфейс (LAN или VPN), разрешение имен через который для вас более приоритетно.
Вы можете изменить метрику интерфейса через графический интерфейс, PowerShell или команду netsh.
Например, вы хотите, чтобы DNS запросы отправлялись через VPN подключение. Вам нужно увеличить метрики ваших локальных LAN подключений, чтобы они стали больше 100 (в моем примере).
Откройте Панель управления -> Сеть и Интернет -> Сетевые подключения, откройте свойства вашего Ethernet подключения, выберите свойства протокола TCP/IPv4, перейдите на вкладку “Дополнительные параметры TCP/IP”. Снимите галку “Автоматическое назначение метрики” и измените метрику интерфейса на 120.
Тоже самое можно сделать командами PowerShell управления сетью (используйте индекс вашего LAN интерфейса, полученный с помощью командлета Get-NetIPInterface ):
Set-NetIPInterface -InterfaceIndex 11 -InterfaceMetric 120
Или netsh (нужно указать имя вашего LAN подключения)
netsh int ip set interface interface="Ethernet 3" metric=120
Аналогично вы можете уменьшить значение метрики в свойствах VPN подключения.
Также вы можете изменить настройки вашего VPN подключения, изменив режим на SplitTunneling и указать DNS суффикс для подключения c помощью PowerShell:
DNS-серверы и суффиксы, настроенные для VPN-подключений, используются в Windows 10 для разрешения имён с помощью DNS в режиме Force Tunneling (принудительного туннелирования) (включён параметр Use default gateway on remote network («Использовать шлюз по умолчанию в удаленной сети»)), если ваше VPN-подключение активно. В этом случае вы не можете преобразовать DNS-имена в своей локальной сети или получить доступ в Интернет через внутреннюю локальную сеть.
В то же время вы можете проверить связь с любыми ресурсами в вашей локальной сети (попробуйте проверить связь со своим шлюзом, соседним компьютером или IP-адресом принтера). Они доступны только по IP-адресам, но не по именам хостов. Дело в том, что Windows 10 пытается разрешить имена хостов в вашей локальной сети через DNS-серверы, указанные в настройках VPN-подключения.
Я нашёл несколько рекомендаций по отключению протокола IPv6 для вашего локального (LAN) интерфейса, и это поможет, если вы хотите использовать режим Force-Tunneling.
Если вы используете Split Tunneling (раздельное туннелирование) (опция Use default gateway on remote network («Использовать шлюз по умолчанию в удаленной сети») не отмечена) для вашего VPN-соединения, вы можете получить доступ к Интернету из своей локальной сети, но вы не можете разрешать DNS-адреса в удалённой сети VPN (отключение IPv6 здесь не поможет).
Вы должны понимать, что Windows отправляет DNS-запрос из сетевого интерфейса, который имеет наивысший приоритет (меньшее значение метрики интерфейса). Например, ваше VPN-соединение работает в режиме раздельного туннелирования (вы хотите получить доступ в Интернет из вашей локальной сети и ваших корпоративных ресурсов через VPN).
Проверьте значения всех метрик сетевого интерфейса из PowerShell:
На приведённом выше снимке экрана показано, что локальное соединение Ethernet имеет более низкую метрику (25), чем интерфейс VPN (100). Таким образом, трафик DNS проходит через интерфейс с меньшим значением метрики. Это означает, что ваши DNS-запросы отправляются на ваши локальные DNS-серверы, а не на DNS-серверы для VPN-подключения. В этой конфигурации вы не можете разрешать имена в подключённой внешней сети VPN.
Кроме того, здесь следует упомянуть новую функцию DNS-клиента для Windows 8.1 и Windows 10. В эти версии ОС было добавлено Smart Multi-Homed Name Resolution (SMHNR) (интеллектуальное разрешение многодомных имён) для более быстрого ответа на запросы DNS. По умолчанию SMHNR отправляет одновременные запросы DNS ко всем DNS-серверам, известным системе, и использует ответ, полученный первым (запросы LLMNR и NetBT также отправляются). Это небезопасно, поскольку внешние DNS-серверы (указанные для вашего VPN-соединения) потенциально могут видеть ваш DNS-трафик (утечка ваших DNS-запросов). Вы можете отключить SMHNR в Windows 10 через GPO: Конфигурация компьютера → Административные шаблоны → Сеть → DNS-клиент → Отключить интеллектуальное многосетевое разрешение имен = Включено.
В английской версии: Computer Configuration → Administrative Templates → Network → DNS Client → Turn off smart multi-homed name resolution = Enabled.
Или вы можете отключить SMHNR, используя следующие команды (в Windows 8.1):
В Windows 10 Creators Update (1709) и новее запросы DNS отправляются на все известные DNS-серверы один за другим (не параллельно). Вы можете повысить приоритет определённого DNS-сервера, если снизите его значения метрики.
Таким образом, изменение метрики интерфейса позволяет вам отправлять DNS-запросы через соединение (LAN или VPN), где разрешение имён является для вас самым приоритетным.
Вы можете изменить метрику интерфейса из графического интерфейса Windows, PowerShell или с помощью команды netsh.
Например, вы хотите, чтобы ваши DNS-запросы отправлялись через VPN-соединение. Вам необходимо увеличить показатели ваших подключений к локальной сети, чтобы их значения превышали 100 (в моем примере).
Перейдите в Панель управления → Сеть и Интернет → Центр управления сетями и общим доступом → Изменение параметров адаптера (либо используйте путь «Панель управления\Сеть и Интернет\Сетевые подключения»). Затем откройте свойства вашего Ethernet-соединения, выберите «IP версии 4 (TCP/IPv4)». На вкладки «Общие» нажмите кнопку «Дополнительно». Снимите флажок «Автоматическое назначение метрики» и измените метрику интерфейса на 120.
Вы можете сделать то же самое с помощью следующей команды PowerShell (используйте индекс вашего интерфейса LAN, который вы можете получить с помощью командлета Get-NetIPInterface):
Или с помощью netsh (укажите имя вашего LAN-соединения):
Таким же образом вы можете уменьшить значение метрики в свойствах вашего VPN-соединения.
Также вы можете изменить настройки своего VPN-подключения, изменив режим на Split Tunneling и указав DNS-суффикс для подключения с помощью PowerShell:
Читайте также: