我电脑是双系统 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 Server119.6.6.6SYS-119.6.6.6
Secondary Server221.4.8.1Cnc-gd 3 CN
Tertiary Server211.161.46.84Bjgwbn-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 的原理 还没有 彻底搞明白