LINUX系统,每次ping域名都要等十几秒才能通,通了以后不丢包

LINUX系统,每次ping域名都要等十几秒才能通,通了以后不丢包,第1张

看一下你的dns设置,

cat /etc/resolv.conf

再看一下你的nsswitch设置,

cat /etc/nsswitch.conf | grep hosts

域名解析耗时就是将域名解析获得对应IP地址,并返回给客户端这个过程所消耗的时间。

当我们对某个域名发起访问,并不是直接就能对响应站点发起访问的,需要借助DNS获取域名与IP地址对应关系,在取得解析记录之后,才能发起访问。

解析过程的具体流程大致如下:

(1)客户端对某个域名发起访问。

(2)浏览器会首先对浏览器、系统缓存以及本机HOSTS文件等本地信息进行查询,如果有结果直接告知客户端,解析过程结束。

(3)如果本地没有结果,浏览器就会请求递归服务器,递归服务器有结果就会告知客户端,解析过程借宿。

(4)如果递归服务器没有结果,就会委托递归服务器进行全球递归查询,首先请求根域名。

(5)根域名告知递归服务器域名所在的顶级域名服务器,递归服务器对顶级服务器发起请求。

(6)顶级服务器告知递归服务器域名所在的权威域名服务器,权威域名服务器将解析记录告知递归服务器。

(7)递归服务器将结果再告知客户端,解析过程结束。

流程图如下所示:

由此可见,影响域名解析耗时的因素有以下几点:

(1)本地缓存

如果本地缓存中有域名和IP地址的对应关系,就会直接在本机获取结果,无需进行全球递归查询,这样解析用时就大大缩短,但缓存对于解析安全有较大影响;

(2)递归服务器

一般而言,我们无法决定用户使用何种DNS Server,大部分初级用户使用的是本地ISP自动获取的DNS Server,部分用户则使用第三方DNS Server比如Open DNS或者Google DNS。

不过你可以建议你的用户使用Google DNS (8.8.8.8 和8.8.4.4),该DNS Server会比电信或网通自动获取的DNS Server快许多。

(3)权威域名服务器

权威域名服务器时影响域名解析耗时的关键,一般的解析服务器都是单节点单线路,如果域名距离较远,可能就会因为跨域跨网造成较大的延迟,如果域名的访问量大,还会造成线路的拥堵。所以为了减少解析时间,建议选择性能较好,多节点,多线路的权威域名服务器。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/8332254.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-15
下一篇 2023-04-15

发表评论

登录后才能评论

评论列表(0条)

保存