域名服务器, 就是人们常说的DNS服务器。它是一台专门的计算机。在互联网里面, 它负责做一件事情。就是把人类能够看懂的域名进行转换。比如www.example.com这样的域名。转换成机器能够识别的东西。具体来说就是IP地址。
像192.168.1.1这样的地址。它其实就是一个互联网电话簿那种东西, 你在浏览器里输入一个网址, 幕后其实是域名服务器在干查号这种事情, 它告诉你的设备应当去哪里寻找目标网站, 如果没有这个东西的话, 我们每天就得手动去输入一堆数字才可能访问网站。
DNS解析的完整流程
你在浏览器输入"example.com"后域名服务器是什么域名服务器是什么,请求会依次经过以下环节:
1. 本地缓存查询: 你的电脑会先将本地的DNS缓存进行检查。如果发现命中了缓存的内容, 那么就直接返回结果。至此, 整个流程就结束了。
2. 在递归DNS服务器那边, 如果是缓存没命中情况的话, 请求就会被发到你所在的ISP也就是宽带运营商所提供的那些个递归DNS服务器上边去, 像是大家熟知的114.114.114.114, 还有那个8.8.8.8这类的地址, 它就会由它来代替你去进行逐级向下的查询操作。
3. 根DNS服务器(.): 递归查询的起始步骤是, 递归服务器先去询问根服务器的具体信息, 紧接着, 这个根服务器会给出反馈内容, 指示查询方向为, 建议接下来的操作是去询问针对.com域名具有权威解析能力的相应服务器。
4. 顶级的域名服务器, 也就是那个负责.com的这个部分, 它会给你一个结果, 这个结果的意思就是说, 让你去向example.com这个域名的权威服务器去进行询问。
5. 权威DNS服务器, 这个服务器是在最终完成example.com注册的时候, 由当时指定的那个方式所确定的, 然后它会返回与之对应的IP地址给大家。
整个这个查询, 通常是会在几十毫秒再到几百毫秒这个时间范围里面完成的, 所以说对于用户来讲, 是完全透明的。
两类核心角色:递归服务器与权威服务器
递归 DNS 服务器是由互联网服务提供商或者是公共 DNS 服务商来运营的, 这里面举两个例子, 一个是阿里的 dns, 它的地址是223.5.5.5, 还有另一个就是 google 的 dns, 地址是8.8.8.8, 它们的任务就像是跑腿一样,帮助把整个解析的过程全部执行完毕。
权威DNS服务器: 是由域名注册者自己来进行指定的, 里面存储着和该域名有关的所有的记录, 包括所谓的A记录、CNAME记录、MX记录和TXT记录等等。对于每一个域名而言, 至少需要去配置两台的权威DNS服务器, 这个通常是由域名注册商来提供的。
用户可以在gname.xin等域名服务平台上面把注册手续完成, 然后就能够在管理后台的界面里面, 直接对域名所指向的那种权威DNS记录去进行修改, 这个过程是不需要用得到登录注册局的那个系统的。
如何查看和管理域名服务器
在Windows下执行nslookup 你的域名或ipconfig /displaydns可查询当前解析结果;在macOS/Linux下使用dig 你的域名或host 你的域名。
请登录到你用来管理域名的那个网站的控制台, 就像是gname点xin这样的地方, 去找到关于域名管理里面指向DNS服务器的那些选项, 然后把里面的NS记录更换成现在新的那些内容, 让整个地球上的所有人都能看到变化一般需要二十四到72个小时的时间, 当然具体是多长时间也完全取决于之前设置的过期时间。
修改递归DNS的办法其实就是, 你只要去路由器里面或者操作系统的网络设置里面, 把那个DNS的地址给换掉就行了, 然后它就会立马生效。
常见疑问
一台域名服务器最多能解析多少域名? 理论上面讲是没有上限的, 可是实际里会受硬件的条件和并发量的限制, 那些个中小站点啊, 只要用一台服务器就好, 能够承载上万个域名的。
如果遇到DNS被劫持这种情况,到底应该怎么办呢? 可以采取更换公共DNS的方式, 去选择那些支持DNS-over-HTTPS或者支持DNS-over-TLS的公共DNS服务, 通过这种做法, 就可以避免在中间的传输链路上遭到篡改。
域名没到期却上不去,难道肯定是DNS出了问题吗 其实并不一定, 还得去查查网站服务器是不是已经宕机了, 看看防火墙规则有没有把路给堵死, 再检查一下CDN节点的状态是否正常。
域名服务器, 这东西虽然是在幕后头工作着, 它却是整个互联网寻址体系里头的基石。要弄明白它是怎么工作的, 这是排查网站访问故障、配置邮件服务器、部署HTTPS证书的时候, 你要走的那第一步。


