• 主机的一种标识方法是用 它的主机名 (hostname)
    • www.baidu.com
    • www.google.com
  • 主机名几乎没有提供 (即使有也很少)关于主机在因特网中位置的信息
  • 因为主机名可能由不 定长的字母数字组成,路由器难以处理
  • 因为主机名可能由不 定长的字母数字组成,路由器难以处理
  • 一 个IP地址由4个字节组成,并有着严格的层次结构
  • 如121.7.106. 83这样一个IP地 址,其中的每个字节都被句点分隔开来,表示了 0~255的十进制数字
  • 说IP地址具 有层次结构,是因为当我们从左至右扫描它时,我们会得到越来越具体的关于主机位于因 特网何处的信息 ( 即在众多网络的哪个网络里

    • 我们从下向上查看邮政地址 时,我们能够获得该地址位于何处的越来越具体的信息。

      2.4.1 DNS 提供的服务

  • 了识别主机有两种方式,通过主机名或者IP地址

    • 人们喜欢便于记忆 的主机名标识方式,而路由器则喜欢定长的、有着层次结构的IP地址
  • 需要一种能进行主机名到IP地址转换的目录服务 是域名系统 (Domain Name System, DNS)的主要任务
  1. 一个由分层的DNS服务器(DNS server)实现的分布式数据库
  2. 一个使得主机能够查询分布式数据库的应用层协议
  • DNS 服务器通常是运行 BIND ( Berkeley Internet Name Domain)软件[BIND 2012 ]的 UNIX机器
  • DNS协议运行在UDP之上,使用53号端口

image.png

  • DNS通常是由其他应用层协议所使用的,包括HTTP、SMTP和FTP,将用户提供的主 机名解析为IP地址

  • 运行在某用户主机上的一个浏览器(即一个HTTP 客户)请求URL www. someschool. edu/index. html页面时会发生什么现象。为了使用户的一 主机能够将一个HTTP请求报文发送到Web服务器www. someschool. edu,该用户主机必须 获得www. WWW. someschool. edu的IP地址

  1. 同一台用户主机上运行着DNS应用的客户端
  2. 浏览器从上述URL中抽取岀主机名www.someschool.edu,并将这台主机名传给 DNS应用的客户端
  3. DNS客户向DNS服务器发送一个包含主机名的请求
  4. DNS客户最终会收到一份回答报文,其中含有对应于该主机名的IP地址
  5. 一旦浏览器接收到来自DNS的该IP地址,它能够向位于该IP地址80端口的 HTTP服务器进程发起一个TCP连接
  • DNS给使用它的因特网应用带来了额外的时延,有时 还相当可观
  • 想获得的IP地址通常就缓存在一个 附近的” DNS服务器中,这有助于减少DNS的网络流量和DNS的平均时延

  • 除了进行主机名到IP地址的转换外,DNS还提供了一些重要的服务

  1. 主机别名(host aliasing)
  • 有着复杂主机名的主机能拥有一个或者多个别名
  • 一台名为relay 1. west-coast, enterprise, com的主机,可能还有两个别名为enterprise. com 和 www. enterprise. com0 在这种’情况下,relay 1. west- coasL enterprise, com 也称为规范主机名(canonical hostname)
  • 主机别名(当存在时)比主机规范名更 加容易记忆
  • 应用程序可以调用DNS来获得主机别名对应的规范主机名以及主机 的IP地址
  1. 邮件服务器别名(mail server* aliasing)
  2. 负载分配(load distribution)

    2.4.2 DNS 工作计理概述

    2.4.3 DNS 记录和报文