Friday, November 19, 2010

Forcing Windows 2008 to a KMS server

If you have many KMS servers in your infrastructure (as in my case), it can be useful to know how to force new servers to a specific KMS server. This is particularly true if you have activated your KMS servers with different Volume Licensing keys (A for Web edition, B for Standard edition or C for Enterprise and Datacenter editions) or if you don't want to see your activation requests crossing all of your network.

Basically, a KMS client will send out a request to its DNS server for a record of type srv _vlmcs._tcp and the DNS will answer with the hostname of a KMS server to contact and to register with. What you can do is to use the integrated slmgr to tell your new server to connect directly to a specific server substantially bypassing the broadcast part.

Here's how.


Open a Command Prompt with elevate privilege and run:

slmgr.vbs /sksm kmsserver.yourdomain.com:1688

This will set the Key management service name for this server.

KMS machine name is now set
Then run:

slmgr.vbs /ato


Windows activated


and wait for a popoup telling you that your Windows copy has been activated succesfully. If you start a netstat monitoring on open connections now, you will see connections from your new server to the KMS server on port 1688.

Nestat will show you TCP connections on port 1688
That's all and it can't be any easier. The server is activated.

Check under OOBE and verify activation

Hope this helps.

2 comments:

  1. Many many thanks - Had been banging my head against the proverbial brick wall for a month trying to get a server to activate \ authenticate to our KMS Box - Excellent - Did the trick in a trite - Cheers - Basil

    ReplyDelete
  2. Many thanks for this it was driving me crazy. You have a typo in the Key Management Service Name command

    slmgr.vbs /sksm kmsserver.yourdomain.com:1688
    it should be
    slmgr.vbs /skms kmsserver.yourdomain.com:1688

    ReplyDelete

Related Posts Plugin for WordPress, Blogger...