DNS简介:将人类可读的URL转为机器认识的IP地址
  Pq37jUF4UeqZ 2023年11月02日 43 0

人类很难记忆纯粹的数字,但是现在的互联网又不认识人类认知的字母。DNS的作用就是将人类可读的URL转为机器认识的IP地址。这可使用nslookup或者dig软件命令进行查看转化。不过张立霞教授的NDN(Named Data Network,命名数据网络)或许已经不需要DNS转换URL和IP地址了,只是大概率只能成为实验网络,而不能正式替代互联网。

在1983年之前,互联网域名和IP地址的匹配都只是位于本机的一个文件中,Linux是/etc/hosts,Windows是C:\\Windows\System32\drivers\etc\hosts。这两个文件的维护方式是手动进行的,通过向Stanford Research Institute发送mail进行收录,终端通过FTP协议定期从中获取最新的hosts文件。这种中心化的方式扩展困难,也很难保持一致性和唯一性。如今这两个文件依旧还在,只是不再是这种方式进行维护了。

如今的DNS协议,使用UDP 53端口,当然关注最新的标准,貌似开始使用DNS over HTTPS了RFC 8484 - DNS Queries over HTTPS (DoH),先不细究,用时再看。DNS是一种层次式的分布式系统,ICANN是根域名.,顶级域名则是各种如net\edu\com\org\nl\etc.等,二级、三级继续向下划分。域名构成的树被划分为了zone,每个zone都有一个administrator,以及一个DNS server。

全球有13个根域名服务器,全部由ICANN管理,命名从A-M,都是anycast,也就是全球备份(保持一致)Root Server Technical Operations Association。根域名服务器用于维护root zone文件,列出所有的top-level domain(TLD)以及所有者,目前文件大小大约有2MB。实际中大部分域名系统都会缓存这些信息,实在不行的时候就会访问根域名服务器了。

DNS是迭代查询的。首先是终端询问local DNS server,然后local DNS server有缓存就返回,没缓存就去问root DNS server,得到com的地址;同样local DNS server再问com DNS server,得到ns1.google.com的地址;local DNS server再问得到www.google.com的地址,返回给终端,终端就可以进行访问了。DNS缓存时间看配置,大概就是1-72小时。

image.png

DNS的匹配称之为记录,A字段是IPv4地址,AAAA字段是IPv6地址,CNAME是canonical hostname(alias),NS是partial name,MX是查找mail server。

【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月08日 0

暂无评论

推荐阅读
  NpoIO3po8K3n   2023年11月02日   51   0   0 githubDNSJava
  YMFggnYWQgxW   2023年12月02日   22   0   0 XMLDNSWindows