- 主机的一种标识方法是用 它的主机名 (hostname)
- www.baidu.com
- www.google.com
- 主机名几乎没有提供 (即使有也很少)关于主机在因特网中位置的信息
- 因为主机名可能由不 定长的字母数字组成,路由器难以处理
- 因为主机名可能由不 定长的字母数字组成,路由器难以处理
- 一 个IP地址由4个字节组成,并有着严格的层次结构
- 如121.7.106. 83这样一个IP地 址,其中的每个字节都被句点分隔开来,表示了 0~255的十进制数字
说IP地址具 有层次结构,是因为当我们从左至右扫描它时,我们会得到越来越具体的关于主机位于因 特网何处的信息 ( 即在众多网络的哪个网络里
了识别主机有两种方式,通过主机名或者IP地址
- 人们喜欢便于记忆 的主机名标识方式,而路由器则喜欢定长的、有着层次结构的IP地址
- 需要一种能进行主机名到IP地址转换的目录服务 是域名系统 (Domain Name System, DNS)的主要任务
- 一个由分层的DNS服务器(DNS server)实现的分布式数据库
- 一个使得主机能够查询分布式数据库的应用层协议
- DNS 服务器通常是运行 BIND ( Berkeley Internet Name Domain)软件[BIND 2012 ]的 UNIX机器
- DNS协议运行在UDP之上,使用53号端口
DNS通常是由其他应用层协议所使用的,包括HTTP、SMTP和FTP,将用户提供的主 机名解析为IP地址
运行在某用户主机上的一个浏览器(即一个HTTP 客户)请求URL www. someschool. edu/index. html页面时会发生什么现象。为了使用户的一 主机能够将一个HTTP请求报文发送到Web服务器www. someschool. edu,该用户主机必须 获得www. WWW. someschool. edu的IP地址
- 同一台用户主机上运行着DNS应用的客户端
- 浏览器从上述URL中抽取岀主机名www.someschool.edu,并将这台主机名传给 DNS应用的客户端
- DNS客户向DNS服务器发送一个包含主机名的请求
- DNS客户最终会收到一份回答报文,其中含有对应于该主机名的IP地址
- 一旦浏览器接收到来自DNS的该IP地址,它能够向位于该IP地址80端口的 HTTP服务器进程发起一个TCP连接
- DNS给使用它的因特网应用带来了额外的时延,有时 还相当可观
想获得的IP地址通常就缓存在一个 附近的” DNS服务器中,这有助于减少DNS的网络流量和DNS的平均时延
除了进行主机名到IP地址的转换外,DNS还提供了一些重要的服务
- 主机别名(host aliasing)
- 有着复杂主机名的主机能拥有一个或者多个别名
- 一台名为relay 1. west-coast, enterprise, com的主机,可能还有两个别名为enterprise. com 和 www. enterprise. com0 在这种’情况下,relay 1. west- coasL enterprise, com 也称为规范主机名(canonical hostname)
- 主机别名(当存在时)比主机规范名更 加容易记忆
- 应用程序可以调用DNS来获得主机别名对应的规范主机名以及主机 的IP地址