欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

DNS

最编程 2024-03-12 22:33:42
...

DNS简介

DNS,即Domain Name System,域名系统。DNS是一整套从域名映射到IP的系统。
TCP/IP中使用IP地址来确定网络上的一台主机,但是IP地址不方便记忆,且不能表达地址组织信息,于是人们发明了域名,并通过域名系统来映射域名和IP地址。
域名是一个字符串,如 www.baidu.com , hr.nowcoder.com

DNS的产生

起初,域名和IP地址的对应关系都保存在一个文件中,文件中的每一行是一条记录,但随着互联网的发展,网站越来越多,不能把所有的映射关系都写到这个文件中了,因此更科学的办法,使用DNS服务器来保存这个文件,哪个设备需要DNS解析,就访问这个DNS服务器即可。
但这样的做法,也是存在问题的,全世界要上网的设备是非常多的,每个设备上网的时候都去访问DNS服务器,DNS根本扛不住这么大的访问量。
那么该如何解决DNS服务器访问量太高的问题呢?

  • 主机在请求DNS之后,会对映射关系在本地缓存,例如我的主机在第一次访问www.baidu.com的时候,会访问一次DNS服务器,并将映射关系在本地缓存,这样在后续访问该网站的时候,就不需要再访问DNS服务器了,这样就减少了DNS的访问量
  • 架设DNS镜像服务器,最初的DNS服务器是"根服务器",其他的服务器,从根服务器上同步数据,得到的是"镜像服务器"

域名的构成

域名系统为一个树形结构的系统,包含多个根节点。其中:

  1. 根节点即为根域名服务器,最早IPv4的根域名服务器全球只有13台,IPv6在此基础上扩充了数量。
  2. 子节点主要由各级DNS服务器,或DNS缓存构成。
    DNS域名服务器,即提供域名转换为IP地址的服务器。
    浏览器、主机系统、路由器中都保存有DNS缓存。
    Windows系统的DNS缓存在 C:\Windows\System32\drivers\etc\hosts 文件中,Mac/Linux系统的DNS缓存在 /etc/hosts 文件中。