Linux DNS查询过程
Linux DNS 查询过程当客户端程序要通过一个计算机访问网络中的一台计算机时,它首先要得到这个计算机名称所对应的IP 地址。因为,IP 数据报中允许放置的是目地主机的IP 地址,而不是计算机名称
Linux DNS 查询过程
当客户端程序要通过一个计算机访问网络中的一台计算机时,它首先要得到这个计算机名称所对应的IP 地址。因为,IP 数据报中允许放置的是目地主机的IP 地址,而不是计算机名称。
可以从本地计算机的hosts 文件中得到计算机名称所对应的IP 地址,但如果hosts 文件不能解析该计算机名称时,只能通过向客户机所设定DNS 服务器进行查询了。
在Linux 系统中,通过修改“/etc/host.conf”文件中,可以修改hosts 和Bind 的查询
顺序。
DNS 查询以各种不同的方式进行解析,下面来详细介绍一下以下几种方式:
1.本地解析
本地解析即客户端可以使用缓存信息就地应答,这些缓存信息是通过以前的查询获得的。当客户端提出解析请求时,首先将请求传送至DNS 客户服务,以便使用本地缓存信息进行解析。如果可以解析所要查询的名称,则DNS 客户服务应答该查询,该请求处理过程结束。本地DNS 服务客户解析过程如图2所示。

DNS

客户端客户端DNS

缓存


主机文件 图2 本地DNS 服务客户解析过程
本地解析程序的缓存包括两种名称信息:
●
● 本地配置的主机文件,该文件是主机名称到地址的映射信息,在DNS 客户服务启动时预先加载到缓存中; 从以前的DNS 查询应答的响应中获取的资源记录,它被保留在缓存中一段时间。 如果此查询与本机的缓存中的项目不匹配,则解析过程将继续进行,客户端将查询DNS 服务器来解析名称。
2.直接解析
直接解析即是直接由所设定的DNS 服务器解析,使用的是该DNS 服务器的资源记录缓存或者其权威应答(如果所查询的域名是该服务器管辖的)。
如果DNS 客户端程序不能从本地DNS 缓存回答客户机的DNS

查询,它就向