Answers:
为此,请按照以下步骤操作:
安装Bind9
更新/etc/resolv.conf
完成!
去测试
打开gnome-terminal(应用程序>附件> Terminal)并输入
dig ubuntu.com
(如果没有,请按照bind9的说明安装dnsutils软件包)
查看最后的答案,例如:
我在ubuntu.com上的第一个查询
;; Query time: **209 msec**
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Sat Jan 22 12:20:12 2011
;; MSG SIZE rcvd: 196
我的第二个查询:
;; Query time: **0 msec**
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Sat Jan 22 12:18:23 2011
;; MSG SIZE rcvd: 156
服务器127.0.0.1意味着您正在本地解析。看一下查询时间(用**包围),第二个被缓存。
sudo apt install bind9
,sudo nano /etc/resolv.conf
应该作为替代添加到您的答案中。
resolv.conf
终于做到了127.0.0.1。这会失败吗?dig ubunut.com
说“连接超时;无法访问任何服务器”
我会推荐dnsmasq,
在这里看到一个不错的教程;http://embraceubuntu.com/2006/08/02/local-dns-cache-for-faster-browsing/
您可能想在这里阅读比较;
http://en.wikipedia.org/wiki/Comparison_of_DNS_server_software
“为了加快DNS查找的速度,我想安装DNS缓存或代理。”
好。但是,还有一种更简单的方法。对于OpenDNS / Google缓存中已经存在的名称,使用OpenDNS和/或Google域名服务器将比您自己的本地缓存更快。几乎在所有情况下,使用208.67.222.222、208.67.220.220和/或8.8.8.8作为命名服务都会更快。您可以在Google或您的本地缓存time nslookup www.google.com 208.67.222.222
的OpenDNS名称服务器之一上进行测试,以测试速度。当我说得更快时,我指的是技术上更快,而并不是那么快,以至于人们很容易注意到差异。time nslookup www.google.com 8.8.8.8
time nslookup www.google.com 127.0.0.1
“我至少可以看到三个我认为可以完成工作的程序:bind9,pdnsd或dnsmasq。”
您是否打开djbdns的dnscache部分?以下说明。不过,没有补丁它不会保存缓存。
sudo apt-get remove bind9 dnsmasq-base
sudo apt-get install djbdns dnscache-run
sudo killall -9 dnsmasq
sudo update-rc.d -f bind9 remove
然后,我们需要告诉系统使用缓存。
sudo gedit /etc/resolv.conf
编辑文件,使其看起来像此示例。该文件定义了要使用的名称服务器,默认域和搜索后缀。搜索后缀使仅使用完全限定域名的主机名部分运行查询成为可能。例如,当example.com是“搜索”参数的值时,“ nslookup www”将自动变为“ nslookup www.example.com”。
nameserver 127.0.0.1 # Use the local resolver first.
nameserver 208.67.222.222 # OpenDNS
nameserver 8.8.8.8 # Google
domain example.com
search example.com
这有点花哨,但是我们需要获得最新的根名称服务器。
sudo dnsip $(dnsqr ns . | sed -e '/answer/!d;s/\(.*\)NS \(.*\)/\2/') | sudo tee /etc/dnscache/root/servers/@
我认为使用DHCP时resolv.conf文件将被覆盖。我选择给自己一个静态IP地址,然后删除挤压该软件的软件,然后编辑interfaces文件以设置静态IP地址。但是,如果您愿意的话,可以尝试使用Network Manager。
sudo apt-get purge network-manager network-manager-gnome
sudo gedit /etc/network/interfaces
我的接口文件如下所示,但请根据您的配置进行修改。
# Loopback
#
auto lo
iface lo inet loopback
# First network card (attached to NAT router, attached to cable internet)
#
auto eth0
iface eth0 inet static
address 192.168.1.254
netmask 255.255.255.0
network 192.168.1.0
broadcast 192.168.1.255
gateway 192.168.1.1
现在,让我们重新启动。
sudo reboot
现在,您正在使用本地解析器和最新的根服务器。但是您会注意到,如果您尝试使用OpenDNS和Google来回答实际上更快(针对其缓存中的名称,这是所有最受欢迎的域)。没有其他配置可以使软件变得更加安全。
我正在使用“ dnscache ”(软件包“ dnscache-run”),这非常简单。无需配置任何内容。
它捕获DNS请求(端口53)并缓存响应,下一次Linux要求该域时,dnscache立即返回IP。
尽管可以更改两个参数来改进此程序:
echo 16000000 > /etc/sv/dnscache/env/CACHESIZE
echo 16777216 > /etc/sv/dnscache/env/DATALIMIT