Не удаётся связаться с KMS (0xC004F074)
#Что происходит
Windows Server 2022 с ключом клиента KMS (GVLK) обращается к KMS-хосту организации. Ошибка 0xC004F074 говорит, что хост не найден (нет SRV-записи _vlmcs._tcp в DNS), недоступен по TCP 1688, не набрал минимальное число клиентов (для серверов — 5 компьютеров), либо у вас вообще не корпоративная лицензия, а розничная или OEM, но установлен GVLK из образа. Первый шаг — понять, какой у вас канал лицензии.
#Причины
| Возможная причина | Как узнать | Что делать |
|---|---|---|
| KMS-хост не найденНет SRV-записи. | nslookup пуст. | Добавьте запись или укажите хост вручную. |
| Порт 1688 закрытФайрвол. | Test-NetConnection неуспешен. | Откройте порт. |
| Недостаточно клиентовДля серверов нужно ≥5. | Ошибка 0xC004F038. | Подождите или используйте MAK. |
| GVLK без KMSОбраз из организации. | Канал VOLUME_KMSCLIENT. | Установите свой ключ. |
| Неверное времяСдвиг. | Ошибки активации. | Синхронизируйте. |
| Хост не активированСам KMS без ключа. | Клиенты получают отказ. | Активируйте хост ключом KMS. |
#Порядок
- Определите тип лицензииНа Windows Server 2022 откройте PowerShell или командную строку от имени администратора: нажмите «Пуск», введите
cmd, выберите «Запуск от имени администратора». Выполнитеcscript C:\Windows\System32\slmgr.vbs /dlvи найдите Description, Product Key Channel и License Status. Если указан KMS/VOLUME, проверяйте корпоративный сервер KMS; для MAK или другой лицензии процедура иная. Не подставляйте чужой ключ. - Проверьте время и часовой поясОткройте «Параметры → Время и язык → Дата и время» или раздел времени в панели управления сервером. Проверьте дату, время и часовой пояс; в повышенной командной строке выполните
w32tm /query /status. Если сервер входит в домен, источник времени должен соответствовать корпоративной схеме. При неверном времени согласуйте настройку синхронизации с администратором домена. - Проверьте DNS-запись KMS и порт 1688Если лицензия KMS, в PowerShell проверьте
nslookup -type=SRV _vlmcs._tcp.имя-домена, заменив домен на реальный суффикс поиска. ЗатемTest-NetConnection kms.example.local -Port 1688, используя настоящее имя KMS-хоста, указанное администратором. Успех сетевой проверки не гарантирует активацию, но исключает блокировку TCP. При отсутствии SRV уточните корпоративную конфигурацию KMS. - Если KMS есть, укажите хост вручнуюТолько если корпоративный KMS-хост официально подтверждён, в командной строке администратора выполните
cscript C:\Windows\System32\slmgr.vbs /skms kms.example.local:1688, заменив имя; затем/ato. Сначала запишите прежнее значение KMS, чтобы вернуть настройки по правилам организации. Не используйте случайные общедоступные KMS-серверы и не отключайте лицензионные проверки. - Если лицензия розничная или MAK, установите соответствующий ключДля MAK/розничной лицензии проверьте в документах организации тип и законность ключа. Если текущая установленная редакция Windows Server соответствует приобретённой лицензии, вводите действительный ключ через официальные настройки активации или
slmgr.vbs /ipk ...от имени администратора и запускайте/ato. Не вводите напечатанную заглушку из примера и не выкладывайте ключ в журнал или переписку. - На самом KMS-хосте проверьте активацию и счётчикЕсли у вас административный доступ к KMS-хосту организации, проверьте состояние его активации, журнал службы лицензирования и достаточность числа клиентских обращений по документации Microsoft. На клиенте выполните
slmgr.vbs /dlvи изучите подробный код ошибки, не делая вывод только из счётчика. При проблемах на самом KMS-хосте передайте диагностику ответственному за лицензирование. - Проверьте брандмауэр между клиентом и хостомПри
TcpTestSucceeded : Falseпроверьте межсетевые правила на пути к подтверждённому KMS-хосту: исходящее TCP 1688 у клиента и входящее на хосте должны быть разрешены внутренней политикой. Не создавайте общее разрешающее правило ради теста. После исправления сетевого доступа снова запустите активацию и проверьте состояние командойcscript C:\Windows\System32\slmgr.vbs /xpr. - Команды для отдельных ситуацийВыберите только подходящий вариант. Это не одна последовательность: часть команд диагностирует проблему, а часть меняет настройки или данные.
Если сервер — виртуальная машина в облаке, проверьте раздел активации поставщика (Azure, Yandex Cloud и другие используют собственные KMS-адреса) и убедитесь, что исходящий доступ к ним разрешён группой безопасности.
#Проверка после настройки
После успешной активации проверьте состояние и дату окончания: для KMS активация действует 180 дней и обновляется автоматически каждые 7 дней. Ошибка может вернуться, если сервер долго был вне сети организации. Для серверов за NAT или в облаке разрешите исходящий TCP 1688 в брандмауэре и группах безопасности.
Get-NetFirewallRule -Enabled True -Direction Outbound | Where-Object Action -eq Block | Select-Object -First 30 DisplayName,Direction,Action# Новое правило допускается только после согласования с сетевым администратором.cscript C:\Windows\System32\slmgr.vbs /xprGet-CimInstance SoftwareLicensingProduct | Where PartialProductKey | Select Name, LicenseStatusЗначение LicenseStatus 1 означает «лицензировано».