Kennisportal is een kennisplatform met een focus op de brede doelgroep Business en IT.

Key Management Services (KMS) uiteengezet

Key Management Services (KMS) explained

When installing Windows Server 2008 (R2) or Windows Vista / 7 in your network you must think about volume activation. With volume activation there are two (2) different models for completing this. These are Key Management Service (KMS) and Multiple Activation Key (MAK). Both are working and has there own benefits.

  • Key Management Service (KMS) – KMS activates operating systems on the local network, so individual computers doesn’t has to connect to Microsoft. KMS clients connects with a KMS host for activation.
  • Multiple Activation Key (MAK) – MAK requires computers to connect one time to a Microsoft activation server. Once computers are activated, no further communication with Microsoft is required.

Because KMS becomes more and more implemented in projects I will explain it in detail. I will no further explain MAK in this blogpost, because it’s known by most people.

KMS requires a minimum number of either physical or virtual computers in a network environment to become functional. These minimums, called activation thresholds, are set so that they are easily met by enterprise customers. For computers running:

  • Windows Server 2008 and Windows Server 2008 R2 you must have at least five (5) computers to activate.
  • Windows Vista or Windows 7 you must have at least twenty-five (25) computers to activate. These thresholds can be a mix of server and client machines to make up the threshold number.
  • Office 2010, Project 2010 and Visio 2010 you must have at least five (5) computers to activate. If you have deployed Microsoft Office 2010 products, including Project 2010 and Visio 2010, you must have at least five (5) computers running Office 2010, Project 2010 or Visio 2010.

The KMS service can be installed on a (existing) server or client!, and will place an record in DNS for recognition. The following commands are available to use in combination with a KMS host

When using Windows Server 2008 (R1) or Windows Vista systems an hotfix is needed. This will extend support for KMS to provide activation for Windows 7 and Windows Server 2008 R2. The KMS host will be upgraded from version 1.1 to 1.2 with this hotfix.

  • Update for Windows Server 2008 for Itanium-based Systems (KB968912)
  • Update for Windows Vista for x64-based Systems (KB968912)
  • Update for Windows Vista (KB968912)
  • Update for Windows Server 2008 (KB968912)
  • Update for Windows Server 2008 x64 Edition (KB968912)

The command for installing KMS with a product key or updating an existing one is “cscript %windir%system32slmgr.vbs /ipk {product key}”. After that restarting of the KMS service is needed. This can be done with the following commands: “net stop slsvc” and “net start slsvc”. When it’s functional it can be tested with the “slmgr.vbs /dli” (basic information) and “slmgr.vbs /dlv” (detailed information) commands.

It’s possible to query the DNS server for License keys also. This can be done with the Nslookup –type=all _vlmcs._tcp command. With the “slmgr.vbs /ato” command it’s also possible to force a activation renewal. That way it’s easier to get the minum required systems activated.

During installation it’s possible that the following error message is displayed: Error: 0xC004F015. This can be solved with installing the KMS 1.2 patch or use the correct product key.

On the client (when KMS is active already) it’s possible that the following error is displayed: 0xC004F038. This can be solved with activating enough computers. When this is done (at least 5 servers and/or 25 computers) the error message will be gone. Then activation for all systems will be available!

One last note: When creating or deploying a Windows 7 image don’t use a build-in product key. Otherwise there’s the risk that every Windows 7 client behaves like a KMS host. No product key at all is needed on the Windows 7 client. Just activate them by the KMS host which resides on the Windows Server 2008 (R2) server or on a Windows Vista / 7 host.