Ошибка "Невозможно завершить операцию (ошибка 0x00000709)" при попытке подключения принтера с сервера печати по CNAME

Print Server CNAME error 0x00000709Любая живая и развивающаяся ИТ-инфраструктура по сути своей является сущностью динамической. Поэтому администраторы инфраструктурных сервисов там, где это возможно, пытаются использовать механизмы, дающие возможность маневрирования сервисом с минимальными трудозатратами. К одним из таких механизмов при развёртывании сервера печати (роль Print Server) на базе Windows Server можно отнести использование в DNS псевдонима (запись типа CNAME) вместо реального имени сервера печати, как точки подключения клиентских компьютеров к сервису сетевой печати.

Например, имеется сервер печати на базе Windows Server 2012 R2 с реальным именем хоста KOM-PRS01. Создаём в DNS псевдоним для этого хоста, например, с именем KOM-PRN03. После этого пробуем на клиентском компьютере подключить сетевой принтер с этого принт-сервера с использованием созданного алиаса. В результате мы получим ошибку "Невозможно завершить операцию (ошибка 0x00000709)"

Access to Print Server by CNAME error Unable to complete operation 0x00000709

Возможная причина возникновения ошибки и метод её решения описан в статье KB979602 - Error message when you try to connect to a printer by using an alias (CNAME) resource record: "Windows couldn't connect to the printer"

Для решения проблемы создадим на принт-сервере параметр реестра DnsOnWire в ключе HKLM\SYSTEM\CurrentControlSet\Control\Print. Можно сделать это простой командой, запустив командную строку с правами Администратора, как приведён пример в статье:

reg add HKLM\SYSTEM\CurrentControlSet\Control\Print /v DnsOnWire /t REG_DWORD /d 1

Установка данной опции позволяет серверу печати использовать не полученные из кэша DNS-клиента данные, а использовать прямые запросы к DNS, несколько снижая при этом производительность работы службы печати, но давая преимущество использовать оперативные данные из DNS.

Для вступления изменений в силу дополнительной командой перезапустим службу "Диспетчер печати" (Print Spooler)

net stop Spooler && net start Spooler

Add CNAME support on Print Server and restart Spooler service

После этого подключение по DNS-алиасу должно пройти успешно

Windows 10 connectrd to Print Server by CNAME DNS alias

Использование DNS-алиаса вместо реального имени хоста сервера печати даст нам в перспективе возможность выполнить оперативный перенос всех сетевых принтеров с одного сервера печати на другой без необходимости переподключать в дальнейшем принтеры на клиентских компьютерах. Необходимость такого оперативного переноса на практике может быть продиктована разными ситуациями, начиная с таких как слияние/разъединение инфраструктур, заканчивая такими, как миграция сервера печати с одной версии ОС на другую.

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