域名是如何解析的,解析的过程介绍
2019年09月08日 20:27:35 · 本文共 3,018 字阅读时间约 10分钟 · 3,498 次浏览前几天我增加了一个小工具:Dig+trace域名查询工具,可用于域名解析诊断,今天顺便同大家分享一下域名解析的过程,一起探究一下域名解析的原理,什么是域名我相信各位看官已经不用介绍了,我们直接从域名解析过程开始。
首先,计算机拿到用户输入的域名以后会去查询一个服务器,那就是咱们电脑中设置的DNS服务器,DNS是指 Domain Name System,每个运营商都会提供一个DNS服务器来供用户解析域名,本文不讲DNS的原理,只讲域名的解析过程,所以直接看解析的过程。
以 www.renfei.net 为例,以英文点“.”为界限,会被分为以下几个部分:
.:根 net.:顶级域名 renfei.net.;一级域名 www.renfei.net.:二级域名
解析过程:
; <<>> DiG 9.10.6 <<>> www.renfei.net +trace ;; global options: +cmd . 1454 IN NS a.root-servers.net. . 1454 IN NS b.root-servers.net. . 1454 IN NS c.root-servers.net. . 1454 IN NS d.root-servers.net. . 1454 IN NS e.root-servers.net. . 1454 IN NS f.root-servers.net. . 1454 IN NS g.root-servers.net. . 1454 IN NS h.root-servers.net. . 1454 IN NS i.root-servers.net. . 1454 IN NS j.root-servers.net. . 1454 IN NS k.root-servers.net. . 1454 IN NS l.root-servers.net. . 1454 IN NS m.root-servers.net. ;; Received 239 bytes from 192.168.3.1#53(192.168.3.1) in 2181 ms net. 172800 IN NS j.gtld-servers.net. net. 172800 IN NS k.gtld-servers.net. net. 172800 IN NS f.gtld-servers.net. net. 172800 IN NS a.gtld-servers.net. net. 172800 IN NS i.gtld-servers.net. net. 172800 IN NS g.gtld-servers.net. net. 172800 IN NS h.gtld-servers.net. net. 172800 IN NS l.gtld-servers.net. net. 172800 IN NS m.gtld-servers.net. net. 172800 IN NS d.gtld-servers.net. net. 172800 IN NS c.gtld-servers.net. net. 172800 IN NS e.gtld-servers.net. net. 172800 IN NS b.gtld-servers.net. net. 86400 IN DS 35886 8 2 7862B27F5F516EBE19680444D4CE5E762981931842C465F00236401D 8BD973EE net. 86400 IN RRSIG DS 8 1 86400 20190921050000 20190908040000 59944 . U67D4A1ac4cMhMsLOfaOVPYUOXvFr0++r1oYMt1o2m+j/XV3pXktCOGG tH+eBNlbMsiSGmD9mKeJ+2Rp87gVm4vLO6tDMiqS9YRp7Z5IsojcdqUL C6MnXYoQGSv9QuJhKG2mJKaJiYqK4REjZRqWo+UbnpTw200UZrLHw2pe 8/S8LsxWLOR/g9vAma22hj36McHjakbBIIRUE3CMkOwn9tIfYVwBqpnO ssETDNElvF0ZqM1NDzi9ryA5ftmZDWvBMvog6xWsAAFGikEIyTpiGV83 HV9CyLyIouDD1dpVKzh7bK4AdkHfQ5BNNR01FNnAfQWw6DwKGnXHwV1Q SMLB4A== ;; Received 1171 bytes from 192.5.5.241#53(f.root-servers.net) in 5 ms renfei.net. 172800 IN NS elsa.ns.cloudflare.com. renfei.net. 172800 IN NS ian.ns.cloudflare.com. renfei.net. 172800 IN NS jack.ns.cloudflare.com. renfei.net. 172800 IN NS kim.ns.cloudflare.com. renfei.net. 172800 IN NS lee.ns.cloudflare.com. renfei.net. 172800 IN NS todd.ns.cloudflare.com. renfei.net. 172800 IN NS tom.ns.cloudflare.com. renfei.net. 172800 IN NS will.ns.cloudflare.com. renfei.net. 172800 IN NS coco.ns.cloudflare.com. renfei.net. 172800 IN NS mary.ns.cloudflare.com. renfei.net. 172800 IN NS albert.ns.cloudflare.com. renfei.net. 172800 IN NS peyton.ns.cloudflare.com. renfei.net. 172800 IN NS robin.ns.cloudflare.com. renfei.net. 86400 IN DS 2371 13 2 AB869C32F05DF68F733BC57F2B5993A5CD00566A6C4CAD102A9CD36C 3F9A2F9A renfei.net. 86400 IN RRSIG DS 8 2 86400 20190912095909 20190905084909 59540 net. E5YYPNXrbiCLEj/yQY1BjylrPMdhKj2r60GM6xExVjpyBGMA6cshXhZT wHsEtgEHMoXRCLw9zMREM37vzeDIGUP2VkiIQkM57BzPQutoOyqB/Eyf 32DNnT956MD+De7sFZB8qcpHDNTYNf7qr0pN2w3f4pl8RSzjEW0iNe+s ffsJ4iVUJ1LQ++q1kDlucghh7sab54VduGjaE5LWyEQPAA== ;; Received 551 bytes from 2001:502:1ca1::30#53(e.gtld-servers.net) in 201 ms www.renfei.net. 43200 IN A 104.18.60.69 www.renfei.net. 43200 IN RRSIG A 13 3 43200 20190909122105 20190907102105 34505 renfei.net. yAj+eHswgX/Ltevl3iHhYZTD5jKG742yVltIoX3KilobjWz2mHjY/dPw iWGPt381JqwGWXuG+Yo/70n4MpsZ/A== ;; Received 191 bytes from 173.245.59.118#53(ian.ns.cloudflare.com) in 199 ms
解析过程一:寻找根解析服务器
我们根据 Dig+trace 的解析跟踪会看到,先查询了 . 根的 NS 记录,NS 就是 NameServer,根域名服务器是规定死的,一共13台服务器,分别是a、b、c、d、e、f、g、h、i、j、k、l、m,由于早期的 DNS 查询结果是一个512字节的 UDP 数据包。这个包最多可以容纳13个服务器的地址,因此就规定全世界有13个根域名服务器,编号从a.root-servers.net一直到m.root-servers.net。
在获得13个根服务器后,随机挑选一个
解析过程二:寻找 net.解析服务器
上面的过程拿到根域名服务器地址以后,就会去询问根服务器,net. 的 NS 记录是什么?这时候我们看到 f.root-servers.net 进行了应答,耗时 5ms,又拿到了 从a.gtld-servers.net一直到m.gtld-servers.net 的服务器
解析过程三:寻找 renfei.net.解析服务器
上面的过程拿到net.域名服务器地址以后,就会去询问net.服务器,renfei.net. 的 NS 记录是什么?这时候我们看到 e.gtld-servers.net 进行了应答,耗时 201ms,拿到了一组 NS 服务器,因为到 renfei.net. 这一级,已经是用户注册的域名了,所以我们可以自定义自己的 NS 服务器
解析过程四:寻找 www.renfei.net.的解析记录
上面的过程拿到renfei.net.域名服务器地址以后,就会去询问renfei.net.服务器,www.renfei.net. 的解析记录是什么?这时候我们看到 ian.ns.cloudflare.com 进行了应答,回复了一条 A 记录,值是 104.18.60.69,这样我们就拿到了最终的 IP 地址,解析过程结束
题外话,肯定有同学问根服务器这么重要,都在谁手里管理呢?
这13台根域名服务器中名字分别为“A”至“M”,其中10台设置在美国,另外各有一台设置于英国、瑞典和日本。
1个为主根服务器,放置在美国。其余12个均为辅根服务器,其中9个放置在美国,欧洲2个,位于英国和瑞典,亚洲1个,位于日本。
所有根服务器均由美国政府授权的互联网域名与号码分配机构ICANN统一管理,负责全球互联网域名根服务器、域名体系和IP地址等的管理。
2010年3月16日前,中国大陆有F、I、J这3个根域DNS镜像,但因为某些不和谐原因,中国大陆境内的I根域镜像曾被撤销路由通告。现今,中国大陆境内共有F、I、J、L这4个根域的6台DNS镜像(L有三台镜像)在提供服务。
版权声明:本文为博主「任霏」原创文章,遵循 CC BY-NC-SA 4.0 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.renfei.net/posts/1003287
相关推荐
猜你还喜欢这些内容,不妨试试阅读一下以下内容均由网友提交发布,版权与真实性无法查证,请自行辨别。
- 前后端分离项目接口数据加密的秘钥交换逻辑(RSA、AES)
- OmniGraffle 激活/破解 密钥/密匙/Key/License
- 人大金仓 KingbaseES V8 R3 安装包、驱动包和 License 下载地址
- Parallels Desktop For Mac 16.0.1.48911 破解版 [TNT]
- Redis 未授权访问漏洞分析 cleanfda 脚本复现漏洞挖矿
- CleanMyMac X 破解版 [TNT] 4.6.0
- OmniPlan 激活/破解 密钥/密匙/Key/License
- Sound Control 破解版 2.4.2
- Parallels Desktop For Mac 15.1.4.47270 破解版 [TNT]
- Parallels Desktop For Mac 16.0.0.48916 破解版 [TNT]
- 博客完全迁移上阿里云,我所使用的阿里云架构
- 微软确认Windows 10存在bug 部分电脑升级后被冻结
- 大佬们在说的AQS,到底啥是个AQS(AbstractQueuedSynchronizer)同步队列
- 比特币(BTC)钱包客户端区块链数据同步慢,区块链数据离线下载
- Java中说的CAS(compare and swap)是个啥
- 小心免费主题!那些WordPress主题后门,一招拥有管理员权限
- 强烈谴责[wamae.win]恶意反向代理我站并篡改我站网页
- 讨论下Java中的volatile和JMM(Java Memory Model)Java内存模型
- 新版个人网站 NEILREN4J 上线并开源程序源码
- 我站近期遭受到恶意不友好访问攻击公告