Microsoft/KMS
KMS Server
Key Management Service (KMS) allows organizations to activate systems within their own network, while MAK activates systems on a one-time basis, using Microsoft’s hosted activation services. [1]
Generic Volume License Key (GVLK)
- "To use KMS, you need to have a KMS host available on your local network. Computers that activate with a KMS host need to have a specific product key. This key is sometimes referred to as the KMS client key, but it's formally known as a Microsoft Generic Volume License Key (GVLK). Computers that are running volume licensing editions of Windows Server and Windows client are, by default, KMS clients with no extra configuration needed as the relevant GVLK is already there." [1]
Installation
- Install Server 2003 SP2 (or R2)
- Install KMS 1.1
- Install KMS 1.2 update
- Install 'VOLUME_KMS_R2_C channel' host key license
- slmgr /ipk [KEY]
- Activate host key license
- slmgr /ato
- Modify DNS to have SRV record point to KMS server
- kms IN A 10.10.10.100
- _vlmcs._tcp IN SRV 0 100 1688 kms.oeey.com.
- Microsoft: Forward Lookup Zones -> [domain] -> _tcp -> Other New Records... -> Service Location (SRV) -> Create Record...
- Service: _vlmcs | Protocol: _tcp | Priority: 0 | Weight: 100 | Port number: 1688 | Host offering this service: kms.oeey.com. (note the ending period)
- Have clients get domain name from DHCP Server or set Host name DNS domain name manually
- Activate clients
- slmgr /ato
- or Through GUI activation
- Meet the 25 minimum requirement for activation to take affect (VMs do not count to minimum)
Check:
dig SRV _vlmcs._tcp.oeey.com ;; ANSWER SECTION: _vlmcs._tcp.oeey.com. 3600 IN SRV 0 0 1688 kms.oeey.com.
Temporary Workaround
KMS auto discovery is failing on oeey.com domain:
Temp workaroun:
Set kms server:
slmgr /skms 10.10.10.100:1688
Activate license:
slmgr /ato
Rearm temporary license if needed:
slmgr /rearm
To clear later:
slmgr /ckms
Usage
KMS Server
Run commands from here:
cd C:\WINDOWS\System32\
Show license count:
cscript slmgr.vbs /dli
Key Management Service is enabled on this machine Current count: 42
Show license count with additional details:
cscript slmgr.vbs /dlv
licensecount.bat:
@echo off REM Scripted by Kenneth Burgener <kenneth.burgener@oeey.com> 2010 echo. echo. echo Counting licenses, please wait... echo. echo. cscript //Nologo slmgr.vbs -dli echo. pause
KMS Client
WARNING: MAKE SURE YOUR TIME IS ACRUATE!
This is for Vista, Windows 7, Server 2008 and Server 2008 R2 clients
DNS: Modify DNS to have SRV record point to KMS server:
kms IN A 10.10.10.100 _vlmcs._tcp IN SRV 0 100 1688 kms.oeey.com.
nslookup:
set type=SRV _vlmcs._tcp.oeey.com _vlmcs._tcp.testhost.oeey.com SRV service location: priority = 0 weight = 100 port = 1688 svr hostname = kms.oeey.com kms.oeey.com internet address = 10.10.10.100
Manually point to KMS server:
slmgr /skms 10.10.10.100:1688
Activate client:
slmgr /ato
Notes
Guidelines for troubleshooting DNS-related activation issues | Microsoft Learn https://learn.microsoft.com/en-us/windows-server/get-started/common-troubleshooting-procedures-kms-dns
keywords
Vista Windows Server 2008 W2K8 W2K8R2 License Server KMS MAK