原理解析

windows会自动查询当前网络下默认DNS后缀的_vlmcs._tcp的SRV记录,如果查询成功就会尝试通过该记录进行激活。

什么是 DNS SRV 记录?

DNS“服务” (SRV) 记录为特定的服务(如 IP语音 (VoIP))、即时通讯等)指定主机和端口。大多数其他 DNS 记录只指定一个服务器或一个 IP 地址,但 SRV 记录还包括该 IP 地址的一个端口。一些互联网协议需要使用 SRV 记录才能运作。


因此我们想要实现当前局域网下windows自动激活,就需要准备两样东西,一个是当前网络域,一个是能添加此域的SRV记录。

如何修改或指定当前网络域DNS后缀?

其原理就是DHCP服务在分发IP地址时,会同时通知客户端域名后缀,因此需要能够管理DHCP服务的配置。

例如openwrt

openwrt

openwrt大部分固件好像默认的域名都是 lan,那么我们就需要添加 _vlmcs._tcp.lan 的SRV解析,如果是其他域名,添加对应域名的解析即可。

如果你不确,可以查看一下网络详情的“连接特定的 DNS 后缀”,来查看具体的后缀信息。如果为空,那就是没有配置。

dns后缀

添加DNS解析记录

SRV记录格式为 优先级 权重 端口 目标地址 ,每项中间需以空格分隔。

例如域名后缀为 xxx.com,则需要添加 xxx.com 域名的SRV记录 _vlmcs._tcp 其记录值为 0 5 1688 kms.xxx.com

你可以用dnsmasq之类的自建DNS服务器来进行解析。如果有自己的域名,也可以公共DNS来解析。