Проверка DNS scope для подсетей: полный гайд по Windows Server, DHCP и BIND
Термин «DNS scope» (область DNS) может трактоваться по-разному в зависимости от того, что именно вы ищете: настройки DNS внутри DHCP-области (Scope), функции DNS Zone Scopes (для разделения зон, например, Split-Brain DNS) или DNS-суффиксы на клиентской машине.
Ниже представлен подробный гайд для всех основных сценариев: от серверов Windows Server и BIND до клиентских машин.
Вариант 1. Windows Server: DNS Zone Scopes и DNS Policies
Начиная с Windows Server 2016, в DNS появилась функция Zone Scopes (области зон), которая позволяет хранить разные записи для одной и той же зоны в зависимости от подсети клиента (часто используется для безопасности и маршрутизации).
Через PowerShell (рекомендуется)
Чтобы посмотреть, какие области (scopes) созданы для конкретной зоны и какие подсети к ним привязаны через политики:
1. Посмотреть все Scope для зоны:
Get-DnsServerZoneScope -ZoneName "example.com"
2. Посмотреть записи внутри конкретного Scope:
Get-DnsServerResourceRecord -ZoneName "example.com" -ZoneScope "InternalSubnet_Scope"
3. Посмотреть политики (Policies), которые привязывают IP-подсети к этим Scope:
Get-DnsServerQueryResolutionPolicy | Where-Object {$_.ZoneName -eq "example.com"} | Format-List Name, Action, Fqdn, ZoneScope, Condition
Через графический интерфейс (GUI)
- Откройте DNS Manager (
dnsmgmt.msc). - Разверните Forward Lookup Zones и найдите нужную зону (например,
example.com). - Кликните по зоне правой кнопкой мыши -> Properties.
- Перейдите на вкладку Scopes. Здесь вы увидите список областей.
- Чтобы посмотреть привязку к подсетям, закройте свойства зоны, кликните правой кнопкой мыши по самой зоне -> Properties -> вкладка Policies (или узел Policies в корне сервера, если политика глобальная). В условиях (Conditions) политики будет указан Client Subnet.
Вариант 2. Windows Server: DHCP Scope Options (Параметры DNS для пула IP)
Если под «scope» вы подразумеваете классическую область DHCP (DHCP Scope), то настройки DNS для конкретной подсети хранятся в параметрах этой области (Scope Options).
Через PowerShell
1. Посмотреть все DHCP-области:
Get-DhcpServerv4Scope
2. Вывести DNS-серверы (Option 006) и DNS-домен (Option 015) для конкретной подсети (например, 192.168.10.0):
Get-DhcpServerv4OptionValue -ScopeId 192.168.10.0 | Where-Object {$_.OptionId -in 6, 15}
Через GUI
- Откройте DHCP (
dhcpmgmt.msc). - Разверните IPv4 -> выберите нужную область (Scope).
- Кликните правой кнопкой мыши по Scope Options -> Configure Options.
4. Во вкладке General прокрутите вниз до:
- 006 DNS Servers — какие DNS-серверы выдаются клиентам этой подсети.
- 015 DNS Domain Name — какой DNS-суффикс выдается.
Вариант 3. Клиентская сторона (Как посмотреть свой DNS Scope/Суффикс)
Если вам нужно посмотреть, какие DNS-серверы и суффиксы поиска (DNS Suffix Search List) назначены вашему компьютеру для текущей подсети.
В Windows
1. Базовый просмотр (через cmd/PowerShell):
ipconfig /all
Ищите строки Connection-specific DNS Suffix (локальный суффикс) и DNS Servers.
2. Просмотр глобального списка суффиксов поиска (Search Scope):
Get-DnsClientGlobalSetting | Format-List SuffixSearchList
3. Просмотр DNS-серверов для конкретного адаптера:
Get-DnsClientServerAddress -InterfaceAlias "Ethernet" -AddressFamily IPv4
В Linux
1. Системы на базе systemd (Ubuntu, CentOS 7+):
resolvectl status
# или
systemd-resolve --status
Смотрите секции DNS Servers и DNS Domain для конкретного сетевого интерфейса.
2. Через NetworkManager:
nmcli dev show | grep DNS
3. Классический файл (если не используется systemd-resolved):
cat /etc/resolv.conf
Вариант 4. BIND (Linux DNS-сервер): Views и ACL
Если вы администрируете BIND, то аналогом «scope для подсетей» являются Views (представления) и ACL (списки контроля доступа).
1. Проверка синтаксиса и вывод конфигурации в читаемом виде:
named-checkconf -p /etc/named.conf
В выводе ищите блоки acl "internal_networks" { ... }; и view "internal" { ... };.
2. Просмотр конкретных зон внутри View:
rndc showzone example.com
Если зона загружена в нескольких View (например, internal и external), rndc покажет, из какого именно View она отвечает для IP-адреса, с которого вы сделали запрос.
Важно: что выбрать?
- Если вы настраиваете Split-Brain DNS (чтобы из внешней подсети в
site.comрезолвился один IP, а из внутренней — другой) — используйте Вариант 1 (Zone Scopes + Policies). - Если вам нужно узнать, какие DNS-серверы получают клиенты из определенного пула IP — используйте Вариант 2 (DHCP Options).
- Если вы пытаетесь понять, почему клиент не может найти хост по короткому имени — проверяйте Вариант 3 (DNS Suffix Search List).
Мы делимся этой технической информацией, чтобы помочь вам в решении задач — используйте её с пониманием. Статья носит рекомендательный характер, поэтому, пожалуйста, применяйте описанные методы осмотрительно.