У меня есть среда с отдельными инфраструктурами Active Directory и DNS, и я использую DNS CNAME для нескольких серверов хранения. Обычно клиенты Windows могут правильно обращаться к хранилищу независимо от того, указывают ли они на «настоящее» имя или CNAME.
\\server\storage
\\cname\storage
В Active Directory есть объект «сервер», связанный с хранилищем, но ничего не связанное с DNS CNAME.
На днях кто-то создал сервер Windows с именем хоста, совпадающим с именем одного из CNAME, и присоединил его к домену AD. Этот сервер не находится в DNS и недоступен, но наличие объекта AD, похоже, конфликтует с CNAME. Когда клиенты пытались связаться \\cname\storage
, данные не возвращены. Когда мы удалили конфликтующий объект, все снова заработало.
По общему признанию, это имя вообще не должно было использоваться (оно уже использовалось в DNS). Но поскольку DNS полностью отделен от AD, я беспокоюсь о том, что это произойдет снова. Есть ли способ либо «зарезервировать» имя в AD, чтобы кто-то не мог создать новый объект с этим именем, либо какой-либо другой шаг, чтобы предотвратить новый объект от создания этого конфликта?
Чтобы убедиться, что вы используете свой DNS, а не другие методы разрешения имен, такие как NBT, я бы предложил использовать полные доменные имена в форме client.domain.local
на клиентах в этом случае любой объект AD, не входящий в DNS, не будет мешать.