Как перенести dns зону на другой сервер
Копирование базы данных DNS с одного сервера на другой производится с помощью процесса, называемого переносом зоны (zone transfer). Такой процесс является обязательным для любой не интегрированной в Active Directory зоны, за содержимое которой отвечают более одного сервера имен. Механизм его выполнения, однако, зависит от версии DNS. Информация о переносе зон всегда "извлекается" (pulled) вторичными серверами с первичных серверов.
Первичные DNS-серверы могут настраиваться таким образом, чтобы они уведомляли вторичные DNS-серверы об изменениях в зоне и начинали ее перенос. Они также могут настраиваться и так, чтобы перенос зоны осуществлялся по расписанию. Ниже перечислены шаги, необходимые для настройки вторичного сервера таким образом, чтобы он извлекал информацию о переносах зон из зоны прямого просмотра.
Настройка вторичной зоны DNS для переноса
После настройки первичной зоны на первичном сервере DNS так, чтобы она разрешала переносы зон, нужно соответствующим образом настроить вторичную зону на вторичном DNS-сервере. Чтобы создать вторичную зоны и начать переносы зон, выполните перечисленные ниже шаги.
- Откройте консоль Server Manager (Диспетчер сервера).
- Разверните последовательно узлы Roles (Роли), DNS Server (Сервер DNS), DNS и узел, название которого совпадает с именем нужного сервера.
- Выделите узел Forward Lookup Zones (Зоны прямого просмотра).
- В меню Action (Действие) выберите пункт New Zone (Создать зону).
- На странице приветствия, которая появится после этого, щелкните на кнопке Next (Далее).
- В списке возможных типов зон выберите вариант Secondary Zone (Вторичная зона). Вторичные зоны не могут интегрироваться в AD, и потому соответствующая опция не будет доступна для выбора. Для продолжения щелкните на кнопке Next.
- Введите имя для создаваемой зоны (оно должно соответствовать имени первичной зоны) и щелкните на кнопке Next.
- Введите IP-адрес сервера или серверов, с которых будут переноситься записи зоны, нажимая после ввода каждого адреса клавишу <Enter> для проверки его действительности. По окончании ввода адреса серверов щелкните на кнопке Next.
- На странице Summary (Сводная информация) щелкните на кнопке Finish (Готово), чтобы создать заданную зону.
После выполнения последнего шага зона будет автоматически перенесена с первичного сервера DNS на вторичный сервер DNS.
Для начала разберемся, как в интернете устроена работа сайтов. Если говорить совсем просто, сайт — это набор файлов и папок, который лежит на отдельном компьютере определенной мощности — сервере, а сама услуга предоставления такого компьютера для размещения сайта в интернете называется хостинг.
Схема работы DNS-сервера
Смена хостинга или сервера хостера влечет за собой смену IP-адреса сайта, поэтому важно правильно прописать ресурсные записи домена, чтобы он ссылался на корректный IP-адрес. В противном случае, люди не смогут найти этот сайт в сети, при переходе на сайт человек увидит вот такой алерт:
Где находится DNS домена
Для начала разберемся, как узнать DNS-провайдера, чтобы понять, где хранится DNS. Для этого достаточно вбить домен сайта в сервис Whois и посмотреть значение в строках nserver:
Наиболее часто встречаются значения:
Встречаются и другие значения, но в любом случае можно скопировать строку nserver и загуглить ее, чтобы выйти на провайдера DNS.
Как настроить DNS
Мы выяснили, где меняются ресурсные записи. Следующим шагом нужно войти в личный кабинет провайдера, чтобы изменить DNS. Дальнейшие действия зависят от провайдера, рассмотрим 2 самых распространенных варианта.
Если домен делегирован на Яндекс.Коннект
Чтобы изменить DNS, нужно кликнуть на «Управление DNS» соответствующего домена:
DNS-записи здесь уже заполнены, нужно только указать новый IP-адрес для записи типа А, которая связывает IP с доменным именем:
Готово! Обновление DNS-записей домена происходит в течение 72 часов, но по нашему опыту у некоторых провайдеров сайт начинает открываться уже через пару часов.
Если домен делегирован на хостинг
В личном кабинете регистратора домена можно также встретить NS-записи другого вида:
Перенос сайта на другой сервер того же хостера
В этом случае в панели управления следует найти место, где меняются ресурсные записи домена, и в записи типа A указать IP-адрес нового сервера. Менять остальные DNS-записи не требуется.
Перенос сайта на другой хостинг
Если на прежнем сервере кроме этого сайта больше ничего не размещено, возникает необходимость переноса ресурсных записей на новый хостинг. Данный процесс осуществляется в несколько шагов:
Шаг 1: Перенос DNS на другой сервер
В Личном кабинете нового хостера необходимо найти место, где прописываются DNS, и прописать такие же записи, как у прежнего хостера, за исключением записи типа A — здесь нужно будет указать IP-адрес нового сервера.
Шаг 2: Проверка MX-записей домена
При переносе ресурсных записей существует опасность неправильной настройки MX-записей, которые сообщают различным почтовым программам о том, где находится нужный почтовый сервер. Если не перенести MX-записи с прежнего сервера или заполнить их некорректно, владелец сайта может остаться без почты на домене на долгий срок — он сможет отправлять письма, но входящие получать не будет. При этом отправитель письма на почтовый ящик на домене после отправки получит следующее уведомление:
Если в течение трех суток MX-записи не будут настроены правильным образом, то неполученные письма потеряются навсегда, при этом отправитель получит уведомление о том, что письмо не доставлено.
Если в указанный срок проблема все же будет устранена, то входящие письма не потеряются, а придут позже, когда DNS-серверы в интернете обменяются данными о новых DNS-записях. Обновление DNS-записей занимает от 2 до 72 часов.
Шаг 3: Настройка NS-записей
Выше мы рассмотрели ситуацию, когда DNS-записи редактируются на стороне хостера, и на прежнем сервере кроме переносимого сайта больше ничего не размещено. Существуют и другие ситуации:
-
Владелец сайта хранит на прежнем хостинге несколько сайтов.
В этом случае переносить DNS-записи и перенаправлять NS-сервера домена в панели управления доменом на другой хостинг не обязательно — они могут храниться в прежнем месте. Необходимо только изменить записи типа A, указав IP-адрес нового сервера.
Так случилось с нашим клиентом — домен его сайта куплен через провайдера Majordomo, который кроме хостинга еще предоставляет услугу регистрации домена. У данного провайдера NS-записи и DNS хранятся и редактируются в одном месте. В этом случае так же не требуется правка NS-записей и перенос DNS в другое место, достаточно в записи типа А указать новый IP-адрес.
В этой статье описывается перемещение файлов зон с одного DNS-сервера, который работает Windows 2000 г. на другой DNS-сервер, работающий Windows 2000.
Применяется к: Windows Server 2012 R2, Windows Server 2016
Исходный номер КБ: 280061
Перемещение файлов зон
Чтобы переместить файлы зон с одного сервера на другой, выполните следующие действия:
Чтобы использовать следующий метод, Windows 2000 DNS Server должна быть установлена на Windows сервере на основе 2000. Службу DNS Server пока не следует настраивать.
На сервере DNS, на который в настоящее время размещена зона DNS(s), измените все зоны, интегрированные с Active Directory, на стандартные первичные. Это действие создает файлы зон, необходимые для DNS-сервера назначения.
Остановите службу DNS Server на обоих DNS-серверах.
Вручную скопируйте все содержимое (вложенные подкладки) папки %SystemRoot%\System32\DNS с исходных серверов на сервер назначения.
В этот раздел, описание метода или задачи включены действия, содержащие указания по изменению параметров реестра. Однако неправильное изменение параметров реестра может привести к возникновению серьезных проблем. Поэтому следует в точности выполнять приведенные инструкции. Для дополнительной защиты создайте резервную копию реестра, прежде чем редактировать его. Так вы сможете восстановить реестр, если возникнет проблема. Дополнительные сведения о том, как создать и восстановить реестр, щелкните следующий номер статьи, чтобы просмотреть статью в базе знаний Майкрософт:
322756 Создание резервной копии и восстановление реестра Windows
На текущем DNS-сервере запустите редактор реестра (Regedit.exe).
Найдите и щелкните следующий подкай реестра:
Экспорт записи Зоны в файл реестра.
Найдите и щелкните следующий подкай реестра:
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\DNS Server\Zones
Экспорт записи Зоны в файл реестра.
На сервере DNS назначения дважды щелкните каждый файл реестра, чтобы импортировать подки Зоны в реестр.
Принесите текущий DNS-сервер вниз и перенесите IP-адрес на DNS-сервер назначения.
На сервере DNS назначения запустите службу DNS Server. Чтобы инициировать регистрацию записей ресурсов A и PTR сервера, запустите следующую команду по командной подсказке:
Если этот сервер также является контроллером домена, остановите и перезапустите службу Net Logon для регистрации записей службы (SRV) или запустите следующую команду по командной подсказке:
Стандартные зоны, которые ранее были интегрированы в Active Directory, можно преобразовать обратно в Active Directory-integrated на заменяемом DNS-сервере, если это контроллер домена.
Убедитесь, что записи ресурсов SOA в каждой зоне содержат правильное имя основного сервера и правильные записи ресурсов NS для зоны(ы).
Описанные в этой статье действия не переносят следующие параметры DNS-сервера:
Одной из особенностей службы DNS является возможность использования нескольких компьютеров для обслуживания DNS-запросов. Это позволяет избежать зависимости от безотказной работы единственной машины. Поэтому, наряду с единственным первичным DNS-сервером, для домена создают один или несколько вторичных DNS-серверов, каждый из которых должен получать полную информацию о зоне и периодически обновлять ее при возникновении каких-либо изменений. Процесс передачи данных первичным сервером для обновления базы данных вторичного сервера называют переносом зоны.
Проблема заключается в том, что хакер тоже может осуществить перенос данных всей DNS-зоны (если не предпринять мер противодействия) даже без запуска BIND. Рассмотрим пример того, как с помощью команды host можно получить данные всех записей NS, А и PTR целого домена:
Команда host при использовании опции -l позволяет выполнить полный перенос зоны, т.е. в любое время можно будет просмотреть дополнительную информацию, например, с помощью опции -t any. Применение опции -v позволяет получить информацию в формате конфигурационного файла первичного DNS-сервера точно так же, как если бы перенос зоны осуществлялся с помощью BIND.
Как противодействовать переносу зоны
Для противодействия несанкционированному переносу зоны необходима настройка сервера имен, которая позволит выполнять перенос зоны только вторичным DNS-cepверам.
Ограничение количества вторичных DNS-серверов, для которых перенос зоны будет разрешен, может быть осуществлено благодаря указанию их IP-адресов в записи options (где перечисляются опции, влияющие на работу всего сервера) или с помощью опции allow-transfer в записи zone (определяющей особенности конкретной зоны) конфигурационного файла (named.conf):
Убедитесь, что перенос зоны ограничен как на первичном, так и на вторичных DNS-серверах! Хотя это и может показаться не совсем логичным, но при отсутствии соответствующих ограничений даже вторичный сервер может использоваться для переноса зоны.
Любые попытки несанкционированного переноса зоны регистрируются с помощью syslog. В системном журнале им соответствуют примерно следующие записи:
DJBDNS
При использовании DJBDNS вместо BIND опасность несанкционированного переноса зон возникает только при установке программы axfrdns. Эта программа необходима только для осуществления переноса зоны по протоколу TCP, когда BIND-cepверы используются в качестве вторичных DNS-серверов. Когда системный администратор сам управляет всеми DNS-серверами, ему нужно просто использовать утилиту rsync или scp для автоматической синхронизации информации зоны DNS с помощью копирования файлов /etc/tinydns/root/data и /etc/tinydns/root/data.cbd на вторичные DNS-серверы.
Если использование axfrdns все же необходимо, то в файле конфигурации tcp в корневом каталоге axfrdns (как правило, это /etc/axfrdns/) нужно указать, какие компьютеры получат возможность осуществлять перенос зоны. Каждая строка этого файла начинается с IP-адреса, после которого следует двоеточие, а затем слово deny (запретить) или allow (разрешить). Все компьютеры, для IP-адресов которых указано слово allow, будут иметь доступ ко всем DNS-записям первичного сервера имен. Можно указывать диапазон IP-адресов. Важнее всего, что в конце строки можно добавлять список зон, которые будут доступны для компьютера с этим IP-адресом. Таким образом, файл /etc/axfrdns/tcp может содержать следующие строки:
Для файла /etc/axfrdns/tcp доступны и другие параметры, но они, как правило, бесполезны для утилиты axfrdns. Более подробную информацию можно получить на man-странице tcprules.
Читайте также: