我host
在Ubuntu 12.04 LTS上使用了命令来检查我的DNS服务器:
host -a www.amazon.com
显示此:
Trying "www.amazon.com"
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 22892
;; flags: qr rd ra; QUERY: 1, ANSWER: 3, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION:
;www.amazon.com. IN ANY
;; ANSWER SECTION:
www.amazon.com. 60 IN SOA ns-942.amazon.com. root.amazon.com. 1405660589 3600 900 7776000 60
www.amazon.com. 7 IN A 72.21.194.212
www.amazon.com. 412 IN NS ns-942.amazon.com.
Received 110 bytes from 127.0.0.1#53 in 176 ms
为什么收到表格127.0.0.1?
我尝试了不同的网站,并尝试使用此命令将其移至其他位置。显示的DNS服务器始终相同:127.0.0.1。为什么?
IP地址127.0.0.1表示localhost,即它引用您的计算机。DNS响应来自您的计算机。
该host
程序与系统上的所有其他程序一样,通过查看文件来知道要查询哪个DNS服务器/etc/resolv.conf
。
您的计算机发送DNS响应的原因是它正在运行DNS缓存。DNS缓存软件会记住请求,因此,如果您快速连续多次访问同一站点(例如,显示带有嵌入式图像,Javascript,框架等的网页,或显示来自同一站点的多个页面),只有第一个请求需要等待来自远程服务器的答复,随后的请求会从本地计算机获得非常快速的答复。
Ubuntu默认将dnsmasq作为DNS缓存运行。Dnsmasq本身会查询您的ISP提供的DNS服务器;此配置通常是动态完成的(通过resolvconf
:通过:当相应的网络接口启动时,将DNS服务器添加到配置中;当接口关闭时,将DNS服务器移除。Dnsmasq的可用DNS服务器记录在中/etc/resolvconf/run/interface/*
。
请注意,我仅出于好奇的目的提供文件名。在极少数情况下,您想对其进行编辑。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句