1 什么是DNS

  Domain Name System(域名系统),它是一个应用层的服务。它作为将域名IP地址相互映射的一个分布式数据库,能够使人更方便地访问互联网。当前,对于每一级域名长度的限制是63个字符,域名总长度则不能超过253个字符

  在计算机网络中,每个主机/路由器都拥有唯一的一个地址IP地址,然而,对于用户来说,IP显然没有那么好记,所以有了域名。

  看起来好像很简单,只是把IP翻译成域名。但是考虑到全球几十上百亿的主机需要不间断的的使用DNS,那么就不是一个简单的问题了

 

2 DNS服务的功能

  域名和IP映射

  主机别名

  邮件服务器别名

  负载均衡:Web服务器

 

3 为什么不使用集中式而是分布式数据库

  单点失败问题:整个互联网都在不断地使用DNS服务查询,一旦挂了,那互联网就崩了

  流量问题

  距离问题

  维护性问题

 

4 分布式层次数据库

  它是分布式的,而且也是分层的

  

 

5 DNS根域名服务器

 

6 TLD和权威域名解析服务器

7 本地域名解析服务器

  不严格属于层级体系

  每个ISP都有一个本地域名服务器

  当主机进行DNS查询时,查询被发送到本地域名服务器,本地服务器作为代理,将查询转发给域名解析服务器系统

 

8 DNS查询示例

8.1 迭代查询

 

9 DNS记录缓存和更新

  只要域名解析服务器获得域名IP映射,就会缓存这一映射,一段时间后,缓存会失效  

  本地域名服务器一般会缓存顶级域名服务器的映射,所以根域名服务器一般很少被访问

  

10 DNS数据库记录

  DNS的记录也称为资源记录RR(resource records)

  RR format:name,value,type,ttl

  Type=A

    name:主机域名

    value:IP地址

  Type=NS

    name:域

    value:该域权威域名解析服务器的主机域名

  Type=CNAME

    name:某一真实域名的别名

    value:真实域名

  Type=MX

    name:某一真实域名的邮件服务器别名

    value:和name对应的邮件服务器真实域名

 

11 DNS协议消息