Добрый день!
Помогите, пожалуйста, разобраться конкретно с моим случаем. Знаний мало, поэтому чтение похожих случаев не помогает. Домен поднимал не я, работаю с тем, что есть.
Итак, есть домен REGION с одним DC на 192.168.0.1. В какой-то момент я не смог ввести ноутбук в домен, он заругался, что не может найти домен REGION.
На рабочей станции:
C:Documents and Settingsalex>ipconfig /all
Настройка протокола IP для Windows
Имя компьютера . . . . . . . . . : pc081
Основной DNS-суффикс . . . . . . : REGION
Тип узла. . . . . . . . . . . . . : неизвестный
IP-маршрутизация включена . . . . : нет
WINS-прокси включен . . . . . . . : нет
Порядок просмотра суффиксов DNS . : REGION
REGION
Подключение по локальной сети 2 — Ethernet адаптер:
DNS-суффикс этого подключения . . : REGION
Описание . . . . . . . . . . . . : Realtek PCIe FE Family Controller
Физический адрес. . . . . . . . . : 00-24-21-E5-FF-D8
Dhcp включен. . . . . . . . . . . : да
Автонастройка включена . . . . . : да
IP-адрес . . . . . . . . . . . . : 192.168.0.62
Маска подсети . . . . . . . . . . : 255.255.255.0
Основной шлюз . . . . . . . . . . : 192.168.0.1
DHCP-сервер . . . . . . . . . . . : 192.168.0.1
DNS-серверы . . . . . . . . . . . : 192.168.0.1
Аренда получена . . . . . . . . . : 26 октября 2012 г. 10:54:18
Аренда истекает . . . . . . . . . : 30 октября 2012 г. 10:54:18
C:Documents and Settingsalex>nslookup region
Server: dcserv.region
Address: 192.168.0.1
*** dcserv.region can’t find region: Non-existent domain
При этом с той же машины проходит такая команда:
C:Documents and Settingsalex>nslookup dcserv.region
Server: dcserv.region
Address: 192.168.0.1
Name: dcserv.region
Addresses: 192.168.0.1, 192.168.1.2
192.168.1.2 — это второй интерфейс DC, который смотрит в Инет.
На сервере:
C:UsersАдминистратор>ipconfig /all
Настройка протокола IP для Windows
Имя компьютера . . . . . . . . . : DCSERV
Основной DNS-суффикс . . . . . . : REGION
Тип узла. . . . . . . . . . . . . : Гибридный
IP-маршрутизация включена . . . . : Да
WINS-прокси включен . . . . . . . : Нет
Порядок просмотра суффиксов DNS . : REGION
Ethernet adapter Local:
DNS-суффикс подключения . . . . . :
Описание. . . . . . . . . . . . . : HP NC326i PCIe Dual Port Gigabit Server A
dapter #2
Физический адрес. . . . . . . . . : 00-23-7D-9B-FB-C9
DHCP включен. . . . . . . . . . . : Нет
Автонастройка включена. . . . . . : Да
Локальный IPv6-адрес канала . . . : fe80::ad74:f0a7:a1d3:6c02%26(Основной)
IPv4-адрес. . . . . . . . . . . . : 192.168.0.1(Основной)
Маска подсети . . . . . . . . . . : 255.255.255.0
Основной шлюз. . . . . . . . . :
IAID DHCPv6 . . . . . . . . . . . : 184558461
DUID клиента DHCPv6 . . . . . . . : 00-01-00-01-0F-EC-9E-24-00-23-7D-9B-FB-C8
DNS-серверы. . . . . . . . . . . : 192.168.0.1
NetBios через TCP/IP. . . . . . . . : Включен
Ethernet adapter ComStar:
DNS-суффикс подключения . . . . . :
Описание. . . . . . . . . . . . . : HP NC326i PCIe Dual Port Gigabit Server A
dapter
Физический адрес. . . . . . . . . : 00-23-7D-9B-FB-C8
DHCP включен. . . . . . . . . . . : Нет
Автонастройка включена. . . . . . : Да
Локальный IPv6-адрес канала . . . : fe80::2059:4212:82af:1de3%23(Основной)
IPv4-адрес. . . . . . . . . . . . : 192.168.1.2(Основной)
Маска подсети . . . . . . . . . . : 255.255.255.0
Основной шлюз. . . . . . . . . : 192.168.1.1
IAID DHCPv6 . . . . . . . . . . . : 167781245
DUID клиента DHCPv6 . . . . . . . : 00-01-00-01-0F-EC-9E-24-00-23-7D-9B-FB-C8
DNS-серверы. . . . . . . . . . . : 192.168.0.1
NetBios через TCP/IP. . . . . . . . : Отключен
Ethernet adapter Kerio Virtual Network:
Состояние носителя. . . . . . . . : Носитель отключен
DNS-суффикс подключения . . . . . :
Описание. . . . . . . . . . . . . : Kerio Virtual Network Adapter
Физический адрес. . . . . . . . . : 44-45-53-54-4F-53
DHCP включен. . . . . . . . . . . : Да
Автонастройка включена. . . . . . : Да
Туннельный адаптер Подключение по локальной сети* 2:
Состояние носителя. . . . . . . . : Носитель отключен
DNS-суффикс подключения . . . . . :
Описание. . . . . . . . . . . . . : isatap.{62282CBA-D03A-4BEA-973E-2D05FE0F0
839}
Физический адрес. . . . . . . . . : 00-00-00-00-00-00-00-E0
DHCP включен. . . . . . . . . . . : Нет
Автонастройка включена. . . . . . : Да
Туннельный адаптер Подключение по локальной сети* 8:
Состояние носителя. . . . . . . . : Носитель отключен
DNS-суффикс подключения . . . . . :
Описание. . . . . . . . . . . . . : Teredo Tunneling Pseudo-Interface
Физический адрес. . . . . . . . . : 02-00-54-55-4E-01
DHCP включен. . . . . . . . . . . : Нет
Автонастройка включена. . . . . . : Да
Туннельный адаптер Подключение по локальной сети* 9:
Состояние носителя. . . . . . . . : Носитель отключен
DNS-суффикс подключения . . . . . :
Описание. . . . . . . . . . . . . : isatap.{F10E2030-293F-49DA-93E0-9068F8704
A35}
Физический адрес. . . . . . . . . : 00-00-00-00-00-00-00-E0
DHCP включен. . . . . . . . . . . : Нет
Автонастройка включена. . . . . . : Да
Туннельный адаптер Подключение по локальной сети* 12:
Состояние носителя. . . . . . . . : Носитель отключен
DNS-суффикс подключения . . . . . :
Описание. . . . . . . . . . . . . : isatap.{05095BA7-FEDF-42DE-8EAD-0E6652DC7
5B9}
Физический адрес. . . . . . . . . : 00-00-00-00-00-00-00-E0
DHCP включен. . . . . . . . . . . : Нет
Автонастройка включена. . . . . . : Да
C:UsersАдминистратор>dcdiag
Диагностика сервера каталогов
Выполнение начальной настройки:
Выполняется попытка поиска основного сервера…
Основной сервер = DCSERV
* Идентифицирован лес AD.
Сбор начальных данных завершен.
Выполнение обязательных начальных проверок
Сервер проверки: Default-First-Site-NameDCSERV
Запуск проверки: Connectivity
……………………. DCSERV — пройдена проверка Connectivity
Выполнение основных проверок
Сервер проверки: Default-First-Site-NameDCSERV
Запуск проверки: Advertising
……………………. DCSERV — пройдена проверка Advertising
Запуск проверки: FrsEvent
……………………. DCSERV — пройдена проверка FrsEvent
Запуск проверки: DFSREvent
……………………. DCSERV — пройдена проверка DFSREvent
Запуск проверки: SysVolCheck
……………………. DCSERV — пройдена проверка SysVolCheck
Запуск проверки: KccEvent
……………………. DCSERV — пройдена проверка KccEvent
Запуск проверки: KnowsOfRoleHolders
……………………. DCSERV — пройдена проверка
KnowsOfRoleHolders
Запуск проверки: MachineAccount
……………………. DCSERV — пройдена проверка MachineAccount
Запуск проверки: NCSecDesc
……………………. DCSERV — пройдена проверка NCSecDesc
Запуск проверки: NetLogons
……………………. DCSERV — пройдена проверка NetLogons
Запуск проверки: ObjectsReplicated
……………………. DCSERV — пройдена проверка ObjectsReplicated
Запуск проверки: Replications
……………………. DCSERV — пройдена проверка Replications
Запуск проверки: RidManager
……………………. DCSERV — пройдена проверка RidManager
Запуск проверки: Services
……………………. DCSERV — пройдена проверка Services
Запуск проверки: SystemLog
……………………. DCSERV — пройдена проверка SystemLog
Запуск проверки: VerifyReferences
……………………. DCSERV — пройдена проверка VerifyReferences
Выполнение проверок разделов на: DomainDnsZones
Запуск проверки: CheckSDRefDom
……………………. DomainDnsZones — пройдена проверка
CheckSDRefDom
Запуск проверки: CrossRefValidation
……………………. DomainDnsZones — пройдена проверка
CrossRefValidation
Выполнение проверок разделов на: ForestDnsZones
Запуск проверки: CheckSDRefDom
……………………. ForestDnsZones — пройдена проверка
CheckSDRefDom
Запуск проверки: CrossRefValidation
……………………. ForestDnsZones — пройдена проверка
CrossRefValidation
Выполнение проверок разделов на: Schema
Запуск проверки: CheckSDRefDom
……………………. Schema — пройдена проверка CheckSDRefDom
Запуск проверки: CrossRefValidation
……………………. Schema — пройдена проверка
CrossRefValidation
Выполнение проверок разделов на: Configuration
Запуск проверки: CheckSDRefDom
……………………. Configuration — пройдена проверка
CheckSDRefDom
Запуск проверки: CrossRefValidation
……………………. Configuration — пройдена проверка
CrossRefValidation
Выполнение проверок разделов на: REGION
Запуск проверки: CheckSDRefDom
……………………. REGION — пройдена проверка CheckSDRefDom
Запуск проверки: CrossRefValidation
……………………. REGION — пройдена проверка
CrossRefValidation
Выполнение проверок предприятия на: REGION
Запуск проверки: LocatorCheck
……………………. REGION — пройдена проверка LocatorCheck
Запуск проверки: Intersite
……………………. REGION — пройдена проверка Intersite
Просьба ответить как можно более подробно, как и что нужно сделать. Может быть, нужна доп. информация?
When faced with this issue, you should take a close look at your DNS Server. The reason for this error is there is not a reverse Lookup Zone configured on the server or the reverse zone is crashed or does not have the right information. Kindly refer to the following related guides: How to setup a cache-only DNS server, how to locate and edit the hosts file on Windows, how to install RSAT tools: DNS manager console missing from RSAT tools on Windows 10, how to setup SPF and TXT Records in AWS, how to add and verify a custom domain name to Azure Active Directory, Active Directory: How to Setup a Domain Controller, how to locate and edit the host file on macOS, and how to know when an IP or domain has been blacklisted.
In my case, I had a new connection because I changed my internet service provider and this made the records in DNS to be different from the new private IP address assigned. This is the sole reason why you are advised to configure a static address for your DNS server that will never change, or else you risk having DNS resolution errors.
As you can see below, the DNS records are populated with the wrong IP parameters of my old network. We have to manually enter the right IPs' to have this issue corrected.
Resolution
To fix this issue you need to create or reconfigure the forward lookup zone and reverse lookup zone. Let’s start by correcting all the wrong entries associated with the forward lookup zone.
Forward lookup zones resolve names to IP addresses and Reverse lookup zones resolve IP addresses to names. Forwarders can be used on your DNS server to forward requests for which your DNS server does not have an authoritative answer.
Also, do the same for the Reverse lookup zone. As we can see from the image below, it has outdated IP parameters. Create a new zone first and delete the old zone records.
To create a new zone, follow the steps below.
– Go to the Reverse Zone Lookup folder icon,
– Right-click on it and
– Select New Zone
A new zone has been created. You can now delete the outdated zone if you wish!
Next, create new point record for your DNS server and other objects you have in your DNS. This is vital for IP address to domain name resolution.
Click on ok when complete.
After deleting the outdated reverse lookup zone, please restart your DNS server. This will apply the new changes.
Now, you have just the new zone you have created left and this is the desired result we want.
You can restart the DNS service or have the device restarted in order to apply the needed changes.
Now, the NSLookup unknown: cannot find non-existent domain no longer exist.
I hope you found this blog post helpful. If you have any questions, please let me know in the comment session.
Nslookup (name server lookup) это утилита командной строки, которую можно использовать для диагностики службы DNS, проверки DNS записей и серверов и обнаружения проблем, связанных с разрешением имен в системе DNS. Утилита nslookup изначально разработана в составе пакета BIND и в дальнейшем портирована на Windows. На данный момент утилита Nslookup входит в состав всех поддерживаемых версий Windows.
Утилита Nslookup умеет отправлять запросы на DNS сервер, который указан в настройках вашего сетевого подключения. Этот адрес считается DNS севером по умолчанию (default server). Пользователь может указать адрес любого другого доступного DNS сервера, в результате чего все следующие DNS запросы будут выполнятся уже на нем.
С помощью утилиты nslookup вы можете узнать IP адрес любого сервера по его DNS имени, выполнить обратное преобразование, получить информацию о различных DNS записях домена.
Вы можете использовать утилиту nslookup в интерактивном или не-интерактивном режиме.
Чтобы выполнить DNS запрос с помощью nslookup в неинтерактивном режиме, откройте командную строку и выполните команду:
Nslookup vmblog.ru
В данном примере мы запросили IP адрес сервера vmblog.ru. Утилита nslookup обратилась к DNS серверу (указан в строке Server) и он вернул, что этому имени соответствует IP адрес 37.252.2.22.
Такой ответ говорит о том, что ваш DNS сервер доступен и работает штатно, выполняя запросы на разрешение DNS имен.
Если же вы получит ответ вида:
Server: dns1.someserver.com
Address: хх.хх.хх.хх
*** dns1.contoso.com can't find vmblog.ru: Non-existent domain
Это означает, что для данного имени не найдено записей в DNS зоне.
В том случае, если ваш DNS сервер недоступен или не отвечает, вы получите ошибки DNS request timed out.
В этом случае проверьте, указан ли у вас правильный адрес DNS сервера и нет ли проблем с сетевым подключением у провайдера.
Строка Non-authoritative answer (Не заслуживающий доверия ответ)означает, что DNS сервер, который выполнил запрос не является владельцем зоны vmblog.ru (в его базе нет записей об этом домене), а для выполнения разрешения имени использовался рекурсивный запрос к другому DNS серверу.
Можно обратиться к авторитетному серверу, указав его адрес непосредственно в параметрах утилиты nslookup. Например, чтобы выполнить разрешение имени на DNS сервере, который содержит данный домен (authoritative server), используйте команду:nslookup vmblog.ru ns1.vmblog.ru
При запуске nslookup без параметров, утилита переходит в интерактивный режим. В этом режиме вы можете выполнять различные команды. Полный список доступных внутренних команд утилиты nslookup можно вывести, набрав знак вопроса.
Совет. Обратите внимание, что команды утилиты nslookup являются регистрозависимыми.
Для завершения работы с nslookup наберите команду exit
и нажмите Enter.
Чтобы найти DNS сервера, которые отвечают за конкретный домен (authoritative servers), выполните команды:
set query=ns
vmblog.ru
Вы можете выполнить и обратное преобразование (получить DNS имя по IP адресу), для этого просто наберите IP адрес в интерактивной строке nslookup и нажмите Enter.
Вы можете задать тип DNS записей, которые должна вернуть утилита nslookup. Например, чтобы перечислить все почтовые сервера, заданные для определенного домена, выполните команду:
nslookup -type=mx gosuslugi.ru
Не заслуживающий доверия ответ:
gosuslugi.ru MX preference = 20, mail exchanger = mx68.gosuslugi.ru
gosuslugi.ru MX preference = 10, mail exchanger = mx.gosuslugi.ru
mx68.gosuslugi.ru internet address = 109.207.8.100
mx.gosuslugi.ru internet address = 109.207.1.100
Как вы видите, у данного домене 2 MX записи с приоритетами 10 и 20 (Чем меньше число, тем выше приоритет адреса). Если запись MX не отображается, скорее всего они просто не настроены для данного домена.
Чтобы вывести все DNS записи в доменной зоне, выполните команду:
nslookup -type=any gosuslugi.ru
gosuslugi.ru nameserver = ns2.gosuslugi.ru
gosuslugi.ru nameserver = ns8-l2.nic.ru
gosuslugi.ru nameserver = ns1.gosuslugi.ru
gosuslugi.ru nameserver = ns4-l2.nic.ru
gosuslugi.ru MX preference = 10, mail exchanger = mx.gosuslugi.ru
gosuslugi.ru MX preference = 20, mail exchanger = mx68.gosuslugi.ru
ns2.gosuslugi.ru internet address = 213.59.255.175
ns8-l2.nic.ru internet address = 91.217.21.1
ns1.gosuslugi.ru internet address = 109.207.2.218
ns4-l2.nic.ru internet address = 91.217.20.1
mx.gosuslugi.ru internet address = 109.207.1.100
mx68.gosuslugi.ru internet address = 109.207.8.100
Использование опции отладки (debug) позволяет получить дополнительную информацию, содержащуюся в заголовках запросов клиента и ответов сервера (время жизни, флаги, типы записей и т.п.):
set debug
-2 / 24 / 8 Регистрация: 19.02.2012 Сообщений: 432 |
|
1 |
|
18.10.2015, 18:27. Показов 5819. Ответов 2
Добрый день. Настраиваю виртуальный сервер, настроил AD, теперь перешёл к днс. Кто-то посоветовал проверить днс путём пинга самого себя. То есть, я пингую свой ip, выводится имя. Пингую имя контроллера — выводится ip. Но, у меня этого не происходит. nslookup выводит ошибку Non existent domain nslookup Миниатюры
__________________
0 |
Модератор 6871 / 3818 / 477 Регистрация: 13.03.2013 Сообщений: 14,059 Записей в блоге: 9 |
|
19.10.2015, 08:12 |
2 |
Кто-то посоветовал проверить днс путём пинга самого себя. А если пингануть DNS с другой машины?
0 |
135 / 129 / 21 Регистрация: 23.05.2013 Сообщений: 514 |
|
19.10.2015, 20:02 |
3 |
imcavs™, блин, кто ж так тестит-то? Просто ввод nslookup ничего не даст, т.к. это интерактивная команда. На втором скрине ты запускаешь nslookup, а потом ищешь объект nslookup в ДНС. Введи nslookup Serverhome, результатом должен быть IP твоего Serverhome, nslookup <ip адрес> — результатом должно быть имя компа с требуемым ip.
Кто-то посоветовал проверить днс путём пинга самого себя. Дурь посоветовали, проверяется как-раз таки nslookup или dig, ping запросто работает в рабочих группах, где зачастую ДНС и не пахнет.
0 |
Если сервер «потерялся»
Столкнувшись с проблемами в DNS, многие пользователи описывают приблизительно одну и ту же ситуацию. Приведу пример: «Я установил компьютер DC1 с адресом 192.168.1.4 для тестирования AD. На компьютере стоит операционная система Windows 2000 Server, машина играет роль сервера DNS и первичного контроллера домена моего тестового домена, который я назвал acme.com. Контроллер домена работает прекрасно — я могу создавать учетные записи пользователей и запускать все программы администрирования AD. Затем я установил второй компьютер DC2 с Windows 2000 Server и адресом 192.168.1.5 и запустил команду Dcpromo, чтобы сделать второй компьютер вторичным контроллером домена acme.com. Неожиданно я получаю сообщение Dcpromo о том, что подключиться к домену и сделать DC2 контроллером домена acme.com невозможно. При этом я могу выполнить команду ping между DC1 и DC2 и наоборот (оба компьютера находятся в одной и той же подсети). Не могу понять, что мешает им увидеть друг друга».
Из-за чего же возникает проблема? Чтобы в этом разобраться, необходимо реконструировать события.
Поиск сервера DNS
При запуске Dcpromo для настройки дополнительного контроллера домена программа выводит диалоговое окно Network Credentials. В нем запрашиваются имя, домен и пароль учетной записи, обладающей достаточными полномочиями для добавления контроллеров домена в существующий домен (в нашем случае, acme.com). Далее Dcpromo обращается к контроллеру домена acme.com и пытается зарегистрироваться в домене с этими именем и паролем. Но сначала программе Dcpromo требуется найти первичный контроллер домена.
Тут необходимо вспомнить, что служба именования в доменах AD основана на DNS. Одна из основных задач DNS в сети Windows 2000 — помочь компьютерам найти свои контроллеры домена. Для успешной работы DNS в системе должны присутствовать серверная часть (сервер DNS) и клиентская часть. Клиент DNS исполняется на рабочей станции и необходим для разрешения имен. Но он не может выполнять свою работу до тех пор, пока не найдет сервер DNS. Так что в поисках контроллера домена, который выполнит аутентификацию компьютера, Dcpromo обращается к клиентской части DNS: «Разыщи сервер DNS для домена acme.com и узнай у него имена и адреса IP-контроллеров для этого домена». Чтобы выполнить запрос, клиент DNS обращается к серверу DNS для получения записей типа SRV.
Чтобы понять, к какому серверу DNS обращается конкретная система, достаточно из командной строки выполнить команду:
ipconfig /all
Результатом работы будет список адресов IP всех серверов DNS домена. Когда клиенту DNS требуется разрешить запрос к DNS, он пытается обратиться к первому в списке серверу DNS. Если сервер отозвался, он становится предпочтительным, и все последующие запросы клиент DNS будет передавать ему. Клиент не будет обращаться к другим серверам DNS до тех пор, пока не перестанет получать ответы от сервера, выбранного в качестве предпочтительного.
Когда компьютер Windows 2000 выполняет поиск контроллера домена AD, чтобы произвести регистрацию, система пытается найти локальный контроллер домена. В первую очередь выполняется запрос на поиск локального контроллера домена acme.com. Если этот запрос не проходит, система осуществляет поиск всех контроллеров домена acme.com.
Проблемы с аутентификацией в AD
Для отладки процесса аутентификации AD лучше всего воспользоваться утилитой Nslookup, которая имитирует поведение системы Windows 2000 при попытке регистрации в домене AD. В командной строке следует ввести команду
nslookup
В качестве ответа на этот запрос будет получено имя и адрес сервера DNS, назначенного по умолчанию. Такой результат означает, что, во-первых, Nslookup связалась с сервером DNS и, во-вторых, запросила у сервера обратное преобразование адреса IP в символьное имя сервера. Обратное преобразование адреса в имя при регистрации в домене AD не требуется, но, если сервер DNS не сможет выполнить эту операцию, Nslookup вернет сообщение об ошибке. Данное сообщение послужит сигналом, что в настройках имеются проблемы.
DNS request timed out. timeout was 2 seconds. *** Can't find server name for address 200.200.10.10: Timed out *** Default servers are not available Default Server: UnKnown Address: 200.200.10.20
При этом можно ввести имя известного сервера в Internet (скажем, www.win2000mag.com) в приглашении Nslookup, и Nslookup легко справится с задачей:
www.win2000mag.com Server: ns1.yourisp.com Address: 200.200.10.10 Name: www.win2000mag.com Address: 63.88.172.66
Nslookup также может выдать подобное сообщение, если есть проблемы с сервером DNS, на который настроен клиент DNS:
*** Can't find server name for address 200.200.10.10: No response from server *** Default servers are not available Default Server: UnKnown Address: 200.200.10.10
Кто-нибудь заметил существенные отличия между этим текстом и сообщением о невозможности обратного преобразования адреса в символьное имя? Я нет. Как же тогда различить ситуации, когда возникла реальная проблема с сервером, а когда Nslookup не может выполнить обратное преобразование имени? Проще всего попытаться разрешить адрес сервера Internet. В случае проблемы с сервером сообщение будет выглядеть несколько иначе:
Server: UnKnown Address: 200.200.10.20 *** UnKnown can't find www.win2000mag.com: No response from server
Теперь попробуем с помощью Nslookup смоделировать процесс регистрации на локальном контроллере домена. Для этого необходимо знать имя домена и имя сайта AD. По крайней мере один сайт имеется всегда: при создании первого контроллера домена в лесу программа Dcpromo создает сайт, названный по умолчанию Default-First-Site-Name. Из командной строки следует вызвать Nslookup. В приглашении нужно ввести две команды, используя предложенный синтаксис:
set type=srv _kerberos._tcp. ._sites.dc._msdcs.
Все символы подчеркивания должны быть введены в точности так, как здесь указано, причем вторая команда не должна содержать пробелов. Например, для сайта с названием HQ в домене acme.com команды будут выглядеть следующим образом:
set type=srv _kerberos._tcp.hq._sites.dc ._msdcs.acme.com
Если команда введена правильно, результат будет подобен тому, который изображен на Экране 1. Если не получилось — не стоит беспокоиться, в конце концов, мы же занимаемся устранением неполадок. Но если эти команды не сработали, тогда и Dcpromo не сможет выполнить регистрацию в домене. В этом случае Dcpromo обращается к серверу DNS: «Сообщи мне обо всех существующих для acme.com контроллерах доменов». Для эмуляции этого запроса можно воспользоваться Nslookup:
_kerberos._tcp.dc._msdcs .acme.com
Но если первый запрос потерпел неудачу, вероятно, со вторым произойдет то же самое, причем система выдаст сообщение типа ns1.yourisp.com can’t find kerberos._tcp.dc._msdcs. acme.com: Non-existent domain (ns1.yourisp.com не может обнаружить kerberos._tcp.dc._msdcs.acme.com: домена не существует).
Причина большинства проблем тестовых сетей заключается в том, что имя домена AD (в нашем случае acme.com) совпадает с зарегистрированным именем домена в Internet, т. е. возникает конфликт имен. Чтобы понять причины происходящего, следует вспомнить, какие действия выполнялись при создании первого контроллера домена в тестовом лесу AD.
Причины неполадок
При вызове Dcpromo для создания нового домена под названием acme.com, Dcpromo требуется внести некоторые записи в открытую для записи копию зоны acme.com, размещенную на первичном сервере DNS. Таким образом, Dcpromo запрашивает у локального сервера DNS адрес первичного сервера DNS домена acme.com. Поскольку мы просто экспериментировали, то сервер Windows 2000, вероятнее всего, обратится в Internet по линии DSL или через кабельный модем, и, что естественно, вернет адрес какого-нибудь сервера DNS в Internet. Если «повезло» и найденный сервер DNS знает зарегистрированное доменное имя acme.com, он честно отвечает, что первичным сервером домена acme.com является какой-то сервер Unix в Internet.
Затем Dcpromo сообщает найденному серверу Unix: «Я собираюсь записать в область динамического DNS (DDNS) несколько записей SRV. Не возражаете?» Сервер Unix отвечает: «Ни за что! Я тебя знать не знаю и не позволю записывать ничего в мою зону!» Понятно, что такой ответ приводит Dcpromo в замешательство.
Вместо того чтобы сообщить, что найденный сервер DNS домена acme.com не позволяет выполнить обновление, Dcpromo пытается обмануть и сообщает, что сервер DNS для acme.com не найден. При этом Dcpromo предлагает альтернативу: «Не желаете ли настроить сервер DNS для этого домена?» Вы, конечно, соглашаетесь, радуясь, какая прекрасная программа Dcpromo, как много она умеет делать. Dcpromo настраивает будущий контроллер домена сервером DNS, создает на сервере зону acme.com, настраивает эту зону для установки acme.com и перезапускает компьютер.
Именно в этот момент и начинаются проблемы.
Регистрация в AD и раздельная обработка запросов DNS
И большие корпоративные домены, и крохотные тестовые домены часто сталкиваются с одной и той же проблемой — создавая домены AD с именами существующих в Internet доменов (это может быть конкретный корпоративный домен в Internet), администратор вводит службу DNS в заблуждение. Это то, что я называю «раздвоением личности» DNS. Допустим, к примеру, что создан тестовый домен AD под названием acme.com. В Internet доменным именем acme.com владеет кто-то другой, и поиск домена acme.com с помощью службы DNS выдает адрес постороннего сервера DNS под управлением Unix. Если Dcpromo спросит у найденного сервера, допускает ли тот динамическое обновление (а эту функцию должен поддерживать каждый сервер DNS в домене AD), обычный сервер DNS в Internet, как легко догадаться, ответит: «Нет, ни за что!»
Сбитый с толку Dcpromo спрашивает, что делать? Вместо того чтобы сообщить, что найденный сервер не разрешает динамическое обновление, Dcpromo сообщает о невозможности найти сервер DNS для домена acme.com. Затем Dcpromo предлагает установить службы сервера DNS на том сервере Unix в Internet и настроить его в качестве сервера DNS для локального домена acme.com. Большинство пользователей принимают это предложение, и, как я уже говорил, здесь-то и начинаются проблемы.
При настройке локального сервера DNS программа Dcpromo создает зону с именем, совпадающим с именем домена, — в нашем примере, acme.com. Таким образом, после создания нового домена AD компьютер начинает выполнять две функции: он является одновременно первым контроллером домена и сервером DNS для домена. Но поскольку Dcpromo не сообщает программному обеспечению контроллера домена, что программное обеспечение сервера DNS работает на том же компьютере, контроллер домена не может найти сервер DNS, который бы допускал динамическое обновление для acme.com.
Другими словами, Dcpromo настраивает службу сервера DNS и создает зону acme.com, но не сообщает стеку TCP/IP, что при поиске сервера DNS необходимо обращаться к самому себе. Сервер DNS функционирует, но ни один компьютер, включая и тот, на котором он работает, «не знает», что при поиске домена к данному компьютеру необходимо обращаться в первую очередь. Вот и получается, что Dcpromo выполняет базовую настройку домена, а затем, с разрешения пользователя, перезапускает компьютер.
После перезапуска компьютер настраивает стек TCP/IP в таком виде, в каком он был перед назначением ком-пьютера контроллером домена. А в тот момент либо использовался DHCP для конфигурирования стека, либо устанавливался статический адрес. При использовании DHCP обращение происходило к серверу DHCP провайдера, или к корпоративному серверу DHCP. В любом случае вряд ли используемый сервер DHCP сообщит компьютеру, что в качестве предпочтительного сервера DNS он (данный компьютер) должен использовать себя самого. Если с самого начала применялась статическая настройка стека TCP/IP, то, вероятнее всего, компьютеру также забыли сообщить, что предпочтительным сервером DNS является он сам.
В результате после перезагрузки компью-тера его конфигурация DHCP или статическая конфигурация сообщают компьютеру, что надо использовать какой-то посторонний сервер DNS — возможно, один из серверов Internet. В этот момент начинает работу служба Netlogon.
Как и в Windows NT 4.0, в Windows 2000 служба Netlogon является важной службой, которая выполняется только на контроллерах домена. Одной из основных функций службы Netlogon является поиск первичного сервера DNS для своего домена (т. е. ac-me.com). После обнаружения первичного сервера DNS Netlogon, используя динамический DNS, вносит в зону домена идентификационную запись сервера (SRV) и запись имени хоста (A) для Netlogon. На каждом контроллере домена службы Netlogon периодически выполняют повторное представление себя зоне DNS своего домена, так что DNS знает о существовании этих контроллеров домена. После того как в зоне acme.com становится известно о существовании контроллера домена, рабочие станции и другие контроллеры домена получают возможность обращаться к нему.
Но когда стек TCP/IP контроллера домена acme.com указывает на сервер DNS, отличный от самого себя, запрос к первичному серверу DNS заканчивается обнаружением какого-то сервера DNS в Internet. Тогда запрос возвращает в качестве результата сервер DNS зарегистрированного домена acme.com. Когда Netlogon пытается внести изменения в записи работающего под управлением Unix сервера DNS, сервер не позволяет внести эти изменения, и Netlogon сообщает в системном реестре о событии ID 5773: The DNS server for this DC does not support dynamic DNS. Add the DNS records from the file ‘%SystemRoot%System32Config
etlogon.dns’ to the DNS server serving the domain referenced in that file («Сервер DNS для данного контроллера домена не поддерживает динамический DNS. Добавьте записи DNS из файла ‘%Sys-temRoot%System32Config
etlogon.dns’ на сервер DNS, обслуживающий указанный в данном файле домен.»).
Если нельзя заставить рабочую станцию зарегистрироваться в новом домене AD или если Dcpromo не работает на втором компьютере, который планировалось назначить вторым контроллером домена, проверьте системный журнал на присутствие в нем событий с ID 5773. Если Dcpromo сообщает, что может настроить DNS, то наличие событий с ID 5773 в системном журнале говорит о том, что настройку стека TCP/IP для контроллера домена администратору придется выполнить самостоятельно.
Для большей уверенности необходимо запустить встраиваемый модуль DNS в Microsoft Management Console (MMC), дважды щелкнуть мышью на значке сервера, открыть папку Forward Lookup Zones и дважды щелкнуть на папке домена. Если в папке содержится всего пара-тройка записей, и вложенные папки отсутствуют, это означает, что Netlogon не может обнаружить сервер DNS, работающий на том же ком-
пьютере, что и Netlogon. Параметры TCP/IP компьютера следует настроить так, чтобы он являлся первичным сервером DNS, затем нужно перезапустить Netlogon и снова проверить папку домена. В папке домена теперь должны находиться четыре вложенные папки, содержащие сведения о местонахождении контроллера домена.
Добавление второго контроллера домена
Но пока проблема окончательно не решена. Первый контроллер домена теперь может находить самого себя, но его пока не может найти второй контроллер домена. Когда Windows 2000 установлена на второй компьютер, и он включен в домен acme.com, необходимо настроить стек TCP/IP для обращения к первому компьютеру как к главному серверу DNS. Возможно, такую настройку TCP/IP придется выполнить для всех компьютеров, которые решено сделать дополнительными контроллерами домена.
Если сеть требуется расширять, может понадобиться еще несколько серверов Windows 2000, используемых в качестве серверов DNS для домена acme.com. Поскольку Dcpromo автоматически делает зону acme.com интегрированной в AD, можно задействовать в качестве серверов DNS только контроллеры домена acme.com. Если интегрированная зона не используется, например, потому что не хочется применять контроллеры домена в качестве серверов DNS, можно преобразовать интегрированную в AD зону в стандартную первичную зону. Замечательно, что для этого достаточно несколько раз щелкнуть мышью. Требуется открыть встраиваемый модуль DNS, дважды щелкнуть на значке сервера DNS, затем открыть папку Forward Lookup Zones. В этой папке есть папка с названием созданного домена. Щелкнув правой кнопкой мыши на значке папки, нужно выбрать Properties и перейти на вкладку General (Общие). Затем следует нажать Change (Изменить) и выбрать Standard Primary вместо Active Directory-Integrated.
Теперь наша инфраструктура DNS находится в хорошей форме. Как же расширить ее для больших сетей? Вместо использования Dcpromo для обнаружения проблем с DNS, убедимся, что DNS функционирует нормально с самого начала.
Предположим, что мы действительно работаем в корпорации acme.com и собираемся настроить AD для своей компании. Облегчит ли это нашу задачу? Нам необходимо только заменить существующие серверы DNS серверами, которые допускают динамическое обновление, правильно? Возможно, и нет. AD хранит информацию в зоне DNS, которую, может быть, не захочется делать доступной из Internet. Так что, даже если домен должен действительно называться acme.com, потребуется обмануть AD таким образом, чтобы служба AD пользовалась только внутренними серверами DNS и не пыталась обращаться к «внешним», общедоступным серверам DNS. Такая настройка называется «раздвоением DNS», она необходима для обеспечения безопасности корпоративной сети. Пусть провайдер корпорации Acme поддерживает доступную публично зону acme.com. Далее я расскажу, как настроить только внутренний DNS для AD acme.com.
Во-первых, необходимо создать по крайней мере, один дополнительный сервер DNS для сети acme.com. На первом сервере надо сформировать стандартную первичную зону acme.com и разрешить в ней динамические обновления. На всех последующих серверах необходимо настроить ac-me.com в качестве стандартной вторичной зоны. В качестве вторичных серверов DNS в AD можно даже использовать серверы с Windows NT 4.0 и установленным пакетом обновлений SP6a. Необходимо настроить стек TCP/IP на каждом компьютере и рабочей станции в сети так, чтобы они использовали один из внутренних серверов DNS в качестве предпочтительного и другой внутренний сервер — в качестве альтернативного сервера DNS.
Теперь при запуске Dcpromo найдет тот сервер DNS для домена acme.com, который нужен, — внутренний сервер DNS, и корректно настроит AD. Рабочие станции и серверы смогут находить этот DC и регистрироваться на нем, а при запуске Dcpromo на другой системе для создания дополнительных контроллеров домена Dcpromo будет работать нормально. После установки AD можно будет преобразовать зону в AD-интегрированную.
Теперь, после настройки параметров DNS, остается учесть только одно. Если какой-либо пользователь acme.com попытается найти www.acme.com, он всегда будет находить зоны на сервере внутренней сети и не сможет выйти в общедоступный Internet. Так что необходимо вручную скопировать записи о публичной зоне в зоны внутренней сети.