域名解析过程

本文介绍了域名解析的过程,包括正向解析和反向解析。重点讲述了递归与迭代相结合的查询方式,详细描述了从主机向本地域名服务器的递归查询以及本地域名服务器向根域名服务器的迭代查询步骤。通过一个例子展示了完整的域名解析流程,强调了DNS高速缓存在提高查询效率中的作用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

域名解析是指把域名映射成IP地址或把IP地址映射成域名的过程。前者称为正向解析,后者称为反向解析。当客户端需要域名解析时,通过本机的DNS客户端构造一个DNS请求报文,以UDP数据报方式发往本地域名服务器。域名解析的方式有两种:递归查询和递归与迭代相结合的查询。递归查询给根域名服务造成的负载过大,所以在实际中几乎不使用。

常用的是递归与迭代相结合的查询方式,该方式分为两部分

1)主机向本地域名服务器的查询采用的是递归查询

也就是说,如果本地主机所询问的本地域名服务器不知道被查询域名的IP地址,那么本地域名服务器就以DNS客户的身份,向根域名服务器继续发出查询请求报文(即替主机继续查询),而不是让主机自己进行下一步的查询。在这种情况下,本地域名服务器只需向根域名服务器查询一次,后面的几次查询都是递归在其他几个域名服务器之间进行的。然后,本地域名服务器从根域名服务器得到了所需的IP地址,最后本地域名服务器将查询结果告诉主机m.xyz.com

2)本地域名服务器向根域名服务器的查询是迭代查询

当根域名服务器收到本地域名服务器发出的迭代查询请求报文时,要么给出所要查询的IP地址,要么告诉本地域名服务器“你下一步应该向哪一个顶级域名服务器进行查询”。然后让本地域名服务器向这个顶级域名服务器进行后续的查询。同样,顶级域名服务器收到查询报文后,要么给出所要查询的IP地址,要么告诉本地域名服务器下一步应该向哪一个权限域名服务器查询。最后,知道所要解析的域名的IP地址后,把这个结果返回给发起查询的主机

下面举例说明域名解析的过程,假设某客户想要获知域名为y.abc.com主机的IP地址,域名解析的过程(共使用8个UDP报文)如下:

  1. 客户机向本地域名服务器发出DNS请求报文
  2. 本地域名服务器收到请求后,查询本地缓存,若没有该记录,则以DNS客户的身份向根域名服务器发出解析请求
  3. 根域名服务器收到请求后,判断该域名属于.com域,将对应额顶级域名服务器的dns.com的IP地址返回给本地域名服务器
  4. 本地域名服务器向顶级域名服务器dns.com发出解析请求报文
  5. 顶级域名服务器dns.com收到请求后,判断该域名属于abc.com.将对应的授权域名服务器dns.abc.com的IP地址返回给本地域名服务器
  6. 本地域名服务器向授权域名服务器dns.abc.com发起解析请求报文
  7. 授权域名服务器dns.abc.com收到请求后,将查询结果返回给本地域名服务器
  8. 本地域名服务器将查询结果保存到本地缓存,同时返回给客户机

为了提高DNS的查询效率,并减少因特网上的DNS查询报文数量,在域名服务器中广泛的使用了高速缓存。当一个DNS服务器接收到DNS查询结果时,它能将该DNS信息缓存在高速缓存中。这样当一个相同的域名查询到达该DNS服务器时,该服务器就能直接提供所要的IP地址,而不需要再去向其他的DNS服务器询问。因为主机名和IP地址的映射不是永久的,所以DNS服务器将在一段时间后丢弃告诉缓存中的信息

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值