我电脑是双系统 linux/win7 , 我用这2个系统时 ,发现linux 网速 没 win7 快。于是开始折腾了。首先,验证网速

    win7上 安装  dig ,用dig 取得DNS响应时间。数据如下:

; <<>> DiG 9.3.2 <<>> baidu.com
;; global options:  printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 60
;; flags: qr rd ra; QUERY: 1, ANSWER: 3, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;baidu.com.            IN    A

;; ANSWER SECTION:
baidu.com.        160    IN    A    220.181.111.86
baidu.com.        160    IN    A    123.125.114.144
baidu.com.        160    IN    A    220.181.111.85

;; Query time: 2 msec
;; SERVER: 119.6.6.6#53(119.6.6.6)
;; WHEN: Tue Aug 06 20:05:17 2013
;; MSG SIZE  rcvd: 75


; <<>> DiG 9.3.2 <<>> google.com
;; global options:  printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 410
;; flags: qr rd ra; QUERY: 1, ANSWER: 6, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;google.com.            IN    A

;; ANSWER SECTION:
google.com.        163    IN    A    74.125.128.139
google.com.        163    IN    A    74.125.128.100
google.com.        163    IN    A    74.125.128.101
google.com.        163    IN    A    74.125.128.102
google.com.        163    IN    A    74.125.128.113
google.com.        163    IN    A    74.125.128.138

;; Query time: 3 msec
;; SERVER: 119.6.6.6#53(119.6.6.6)
;; WHEN: Tue Aug 06 20:05:33 2013
;; MSG SIZE  rcvd: 124


在 centOS 6.4 上由于调试时忘了 保留原始数据 ,唉,新手嘛 ,当所也没想要写这东东,所以提速前的数据 没得了。不过在没提速前 ,真有点慢。


现在开始优化:

1.找到最快DNS

   我用的是namebench 1.3, 关于namebench 的manual 在readme 里面有详细说明  。下载 解压 执行 ./namebench.py -x   开始寻找 fastest DNS  server
结果如下:

Recommended configuration (fastest + nearest)
Primary Server
119.6.6.6
SYS-119.6.6.6
Secondary Server
221.4.8.1
Cnc-gd 3 CN
Tertiary Server
211.161.46.84
Bjgwbn-2 CN

看来 ISP 提供的ISP 一般是最快的 。至于为什么是最快的 ,我也不是很了解,本人新手,希望懂的人解答。

2.用dnsmasq 再次提速

以下是本菜鸟的理解:

   dnsmasq 有这个特点:DNSmasq把因特网地址和地址-域名映射关系放入cache中,减少服务器负担的同时也提升了性能(特别是在modem连接中)。 所以下次访问 域名时,就不用向DNS获得IP了,这个IP已经保存在cache里面了。

   根据这个理解 ,我觉得  dnsmasq   可以保留一个 文件,里面放 域名和IP 对于的 那个表 。这样 当访问常用的域名时 用cache ,访问较常用的时用 本地对应表。 访问 不常用的时用 DNS server


   直接安装: yum install dnsmasq   。安装后修改 DNS配置文件  vi /etc/resolv.conf

domain domain
search domain
nameserver 127.0.0.1
nameserver 119.6.6.6
nameserver 221.4.8.1
nameserver 211.161.46.84

加入nameserver 127.0.0.1  最前面。至于为什么 到现在还没搞懂。


完成这个工作后 就可以 启动 dnsmasq 了: service dnsmasq  restart

然后测试网速:


; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.17.rc1.el6_4.5 <<>> google.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 33636
;; flags: qr rd ra; QUERY: 1, ANSWER: 6, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;google.com.            IN    A

;; ANSWER SECTION:
google.com.        39    IN    A    74.125.128.113
google.com.        39    IN    A    74.125.128.102
google.com.        39    IN    A    74.125.128.101
google.com.        39    IN    A    74.125.128.100
google.com.        39    IN    A    74.125.128.139
google.com.        39    IN    A    74.125.128.138

;; Query time: 0 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Thu Aug  8 11:09:06 2013
;; MSG SIZE  rcvd: 124


; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.17.rc1.el6_4.5 <<>> baidu.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 49554
;; flags: qr rd ra; QUERY: 1, ANSWER: 3, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;baidu.com.            IN    A

;; ANSWER SECTION:
baidu.com.        459    IN    A    220.181.111.85
baidu.com.        459    IN    A    123.125.114.144
baidu.com.        459    IN    A    220.181.111.86

;; Query time: 0 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Thu Aug  8 11:09:14 2013
;; MSG SIZE  rcvd: 75


到此成功提速 。


其实关于 dnsmasq  加 127.0.0.1 的原理 还没有 彻底搞明白 ,希望 高手路过时 ,解答一二。 谢谢!!!