windows dig版本太多,此文可是我经过大量的不同windows版本、不同dig版本测试实践的经验。
包含Windows Dig命令的安装文件的官网是https://www.isc.org/ 请注意,dig命令运行需要底层vc库支持,现在大部分windows系统都是安装过的,可以取消掉 1.安装之前请先安装vc库,网上搜“微软常用运行库合集”有好多,下载安装即可
2.https://www.isc.org/downloads/
现在对windows最高支持到9.16.30版本,9.18.4版本已经没有windows下载选项了
https://downloads.isc.org/isc/bind9/9.16.30/BIND9.16.30.x64.zip
https://downloads.isc.org/isc/bind9/9.16.45/BIND9.16.45.x64.zip
3.安装的时候先解压,然后双击BINDInstall,如下图所示,只勾选tools,其他的跟截图保持一模一样
安装过程中可能会提示安装vc库或者修复vc库,取消掉,大部分windows系统都有vc库(如果你系统真的没有安装,还是需要装一下的,你可以点一下安装,如果你系统安装过,会失败,如果版本低或者没安装过则会继续安装下去的)
4.安装完成后添加环境变量
加环境变量可以手动,也可以cmd命令行,注意是cmd命令行,不是powershell命令行
setx /m MyPath "%Path%"
setx /m Path "C:Program FilesISC BIND 9bin;%Path%"
5.在cmd命令行下验证效果
如果怀疑DNS服务器解析到的IP不对,通过EDNS一验证就知道是DNS服务器的问题还是Local DNS的问题了:比DIG9.10更高的版本支持EDNS Client Subnet,可以带着客户端IP的解析请求到支持edns的dns服务器(域名解析商的DNS一般都支持EDNS)
dig @FirstDNS domainname subnet=clientIP
dig @LocalDNS domainname
对比看下LocalDNS解析到的IP跟域名解析商的DNS(FirstDNS)解析到的IP是否一致,不一致就得更新客户端DNS了。
6、接下来看下这个例子:
dig @8.8.8.8 www.qq.com subnet=203.205.141.36 (不加 tcp默认走udp协议)
dig tcp @8.8.8.8 www.qq.com subnet=203.205.141.36
203.205.141.36不是大陆客户端IP,23.32.89.241是海外Akamai节点IP
dig @8.8.8.8 www.qq.com subnet=139.199.198.215 (不加 tcp默认走udp协议)
dig tcp @8.8.8.8 www.qq.com subnet=139.199.198.215
139.199.198.215是大陆客户端IP,14.18.175.154、113.96.232.215是国内节点IP
由此可见,腾讯集团官网www.qq.com做了分线路解析,国内的cname到自建cdn:public-v6.sparta.mig.tencent-cloud.net,国外的cname到Akamai的cdn:news.qq.com.edgekey.net。
结论:腾讯海外CDN不如Akamai,要不然怎么不用自家的。