Инструменты управления DNS сервером

Обновлено 15.08.2023

dns server logo

Добрый день! Уважаемые читатели и гости одного из крупнейших IT блогов в рунете Pyatilistnik.org. В прошлый раз мы с вами разбирали тему "Что такое DNS сервер", я предлагаю ее продолжить и сегодня хочу разобрать, какими инструментами вы можете управлять и работать с DNS сервером. Я разберу инструменты для разных платформ, а так же и веб сервисы, которыми сам пользуюсь. Надеюсь, что вам данная информация будет полезна.

✳️Какие утилиты вы можете использовать для взаимодействия с DNS сервером

Утилит и инструментов по управлению и получению информации, о DNS сервере не так уж и много, там есть как графические, так и консольные, вот список:

  • Оснастка DNS в Windows
  • DNScmd.exe
  • Утилита nslookup
  • Командлеты PowerShell
  • Dig
  • Host

⚙️Оснастка DNS в Windows

Когда вы устанавливаете DNS-сервер в окружении Windows, то там по умолчанию идет встроенная оснастка DNS (dnsmgmt.msc), которая позволяет вам в удобном графическом виде производить большую часть манипуляций по настройке DNS сервера.

Данная оснастка есть только в Windows

dnsmgmt.msc

В оснастке вы можете:

  • Управлять DNS сервером
  • Создавать и управлять зонами DNS
  • Изучать события DNS
  • Задавать серверы условной пересылки
  • Просматривать и очищать кэш

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

  • Выбор интерфейсов, для прослушивания DNS запросов
  • Сервера пересылки (По сути тут вы указываете резолверов)
  • Параметры сервера
  • Корневые ссылки
  • Настройка журнала отладки
  • Тестирование

Настройки DNS сервера

Вот пример настроек, которые доступны для зоны:

  • Выбор типа зоны
  • Настройка интервала обновлений
  • SOA
  • Ответственное лицо
  • Сервера имен
  • Передача зон

Свойства DNS зоны

⚙️Инструмент Dnscmd.exe

DNScmd.exe - Это инструмент командной строки для управления DNS-серверами, это более расширенный вариант оснастки DNS. Эта утилита полезна при создании сценариев пакетных файлов для автоматизации рутинных задач управления DNS или для выполнения простой автоматической установки и настройки новых DNS-серверов в вашей сети.

DNScmd.exe умеет делать более тонкие настройки DNS-сервера чем, через графическую оснастку

dnscmd.exe

Через DNScmd.exe вы получите больше информации, чем в графическом варианте. Пример получения информации по DNS-серверу.

DNScmd.exe /Info

DNScmd.exe получение сведений по DNS серверу

⚙️Утилита nslookup

Nslookup - это простой, но очень практичный инструмент командной строки или PowerShell, который в основном используется для поиска IP-адреса, соответствующего хосту, или доменного имени, соответствующего IP-адресу (процесс, называемый "Обратный поиск DNS"). Пользователи Windows запускают службу через командную строку, а пользователи Unix через окно терминала . Кроме того, в настоящее время существует ряд сервисов, которые позволяют использовать nslookup в Интернете.

Nslookup извлекает соответствующую адресную информацию непосредственно из DNS-кэша серверов имен. Этот процесс может быть реализован в двух различных режимах, которые может выбрать пользователь. В неинтерактивном режиме средство стандартным образом проверяет записи ресурсов (так называются записи адресов в кэше DNS), которые хранятся на локальном сервере имен. Этот режим особенно хорошо подходит для простых запросов, для которых необходимо найти одну запись домена. Если вы хотите использовать другой DNS-сервер для исследования и выполнять более сложные процессы поиска, вам нужен интерактивный режим, в котором программу командной строки нужно сначала запускать отдельно.

использование nslookup

Так же утилиту nslookup можно вызвать и через оснастку DNS

Запуск nslookup через оснастку DNS

⚙️Утилита DIG

DIG (domain information groper) - это инструмент командной строки сетевого администрирования для запроса системы доменных имен (DNS). DIG полезен для устранения неполадок в сети и в образовательных целях. Он может работать на основе параметров командной строки и аргументов флагов или в пакетном режиме путем чтения запросов из файла операционной системы. Если конкретный сервер имен не указан в вызове команды, он использует распознаватель по умолчанию операционной системы, обычно настраиваемый в файле resolv.conf . Без каких-либо аргументов он запрашивает корневую зону DNS.

Утилита DIG может работать как в Linux, так и Windows

пример использования утилиты dig

⚙️Командленты управления DNS

Существует огромный пласт командлетов PowerShell, которые позволяют вам управлять, настраивать и получать кучу сведений по DNS-серверу. Ниже я приведу подробный список:

Список команд PowerShell по управлению DNS

  • Add-DnsClientNrptRule
  • Add-DnsServerConditionalForwarderZone
  • Add-DnsServerDirectoryPartition
  • Add-DnsServerForwarder
  • Add-DnsServerPrimaryZone
  • Add-DnsServerResourceRecord
  • Add-DnsServerResourceRecordA
  • Add-DnsServerResourceRecordAAAA
  • Add-DnsServerResourceRecordCName
  • Add-DnsServerResourceRecordDnsKey
  • Add-DnsServerResourceRecordDS
  • Add-DnsServerResourceRecordMX
  • Add-DnsServerResourceRecordPtr
  • Add-DnsServerRootHint
  • Add-DnsServerSecondaryZone
  • Add-DnsServerSigningKey
  • Add-DnsServerStubZone
  • Add-DnsServerTrustAnchor
  • Add-DnsServerZoneDelegation
  • Add-VpnConnectionTriggerDnsConfiguration
  • Clear-DnsClientCache
  • Clear-DnsServerCache
  • Clear-DnsServerStatistics
  • ConvertTo-DnsServerPrimaryZone
  • ConvertTo-DnsServerSecondaryZone
  • Disable-DnsServerSigningKeyRollover
  • Disable-NetDnsTransitionConfiguration
  • Enable-DnsServerSigningKeyRollover
  • Enable-NetDnsTransitionConfiguration
  • Export-DnsServerDnsSecPublicKey
  • Export-DnsServerZone
  • Get-DhcpServerDnsCredential
  • Get-DhcpServerv4DnsSetting
  • Get-DhcpServerv6DnsSetting
  • Get-DnsClient
  • Get-DnsClientCache
  • Get-DnsClientGlobalSetting
  • Get-DnsClientNrptGlobal
  • Get-DnsClientNrptPolicy
  • Get-DnsClientNrptRule
  • Get-DnsClientServerAddress
  • Get-DnsServer
  • Get-DnsServerCache
  • Get-DnsServerDiagnostics
  • Get-DnsServerDirectoryPartition
  • Get-DnsServerDnsSecZoneSetting
  • Get-DnsServerDsSetting
  • Get-DnsServerEDns
  • Get-DnsServerForwarder
  • Get-DnsServerGlobalNameZone
  • Get-DnsServerGlobalQueryBlockList
  • Get-DnsServerRecursion
  • Get-DnsServerResourceRecord
  • Get-DnsServerRootHint
  • Get-DnsServerScavenging
  • Get-DnsServerSetting
  • Get-DnsServerSigningKey
  • Get-DnsServerStatistics
  • Get-DnsServerTrustAnchor
  • Get-DnsServerTrustPoint
  • Get-DnsServerZone
  • Get-DnsServerZoneAging
  • Get-DnsServerZoneDelegation
  • Get-NetDnsTransitionConfiguration
  • Get-NetDnsTransitionMonitoring
  • Get-UalDns
  • Import-DnsServerResourceRecordDS
  • Import-DnsServerRootHint
  • Import-DnsServerTrustAnchor
  • Invoke-DnsServerSigningKeyRollover
  • Invoke-DnsServerZoneSign
  • Invoke-DnsServerZoneUnsign
  • Register-DnsClient
  • Register-DnsServerDirectoryPartition
  • Remove-DhcpServerDnsCredential
  • Remove-DnsClientNrptRule
  • Remove-DnsServerDirectoryPartition
  • Remove-DnsServerForwarder
  • Remove-DnsServerResourceRecord
  • Remove-DnsServerRootHint
  • Remove-DnsServerSigningKey
  • Remove-DnsServerTrustAnchor
  • Remove-DnsServerZone
  • Remove-DnsServerZoneDelegation
  • Remove-VpnConnectionTriggerDnsConfiguration
  • Reset-DnsServerZoneKeyMasterRole
  • Reset-NetDnsTransitionConfiguration
  • Restore-DnsServerPrimaryZone
  • Restore-DnsServerSecondaryZone
  • Resume-DnsServerZone
  • Set-DhcpServerDnsCredential
  • Set-DhcpServerv4DnsSetting
  • Set-DhcpServerv6DnsSetting
  • Set-DnsClient
  • Set-DnsClientGlobalSetting
  • Set-DnsClientNrptGlobal
  • Set-DnsClientNrptRule
  • Set-DnsClientServerAddress
  • Set-DnsServer
  • Set-DnsServerCache
  • Set-DnsServerConditionalForwarderZone
  • Set-DnsServerDiagnostics
  • Set-DnsServerDnsSecZoneSetting
  • Set-DnsServerDsSetting
  • Set-DnsServerEDns
  • Set-DnsServerForwarder
  • Set-DnsServerGlobalNameZone
  • Set-DnsServerGlobalQueryBlockList
  • Set-DnsServerPrimaryZone
  • Set-DnsServerRecursion
  • Set-DnsServerResourceRecord
  • Set-DnsServerResourceRecordAging
  • Set-DnsServerRootHint
  • Set-DnsServerScavenging
  • Set-DnsServerSecondaryZone
  • Set-DnsServerSetting
  • Set-DnsServerSigningKey
  • Set-DnsServerStubZone
  • Set-DnsServerZoneAging
  • Set-DnsServerZoneDelegation
  • Set-NetDnsTransitionConfiguration
  • Set-VpnConnectionTriggerDnsConfiguration
  • Show-DnsServerCache
  • Show-DnsServerKeyStorageProvider
  • Start-DnsServerScavenging
  • Start-DnsServerZoneTransfer
  • Step-DnsServerSigningKeyRollover
  • Suspend-DnsServerZone
  • Sync-DnsServerZone
  • Test-DnsServer
  • Test-DnsServerDnsSecZoneSetting
  • Unregister-DnsServerDirectoryPartition
  • Update-DnsServerTrustPoint
  • Resolve-DnsName

⚙️Команда Host

Host — это простой инструмент, используемый для выполнения поиска DNS в Linux. Обычно он используется для преобразования имени хоста в IP-адрес или наоборот. Если аргументы или параметры не указаны, host выводит краткую сводку своих аргументов и параметров командной строки.

аргументы инструмента host

Дополнительно. Внешние сервисы

Иногда требуется произвести различные запросы к DNS серверу или хосту из вне, для этого удобно использовать различные сервисы, например у моем инструментарии всегда вот эти адреса:

  • Ping.eu - Тут есть привычные DNS lookup, reverse lookup

Ping.eu

  • 2ip.ru

2ip.ru

intodns.com

Таких сервисов очень много, так что уверен, что вы сможете подобрать нужный вам. Если забыл какие-то другие инструменты по управлению DNS, то напишите в комментариях. На этом у меня все. с вами был Иван Семин, автор и создатель IT портала Pyatilistnik.org.

Автор - Сёмин Иван

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *