机器是双系统,分别是Windows 10 和 ubuntu 16.04,问题是这样的,在windows 下网速很快,然后切换到Linux下网速就非常慢。问题的根本原因是dns解析花费了大量时间,解决方法是利用dnsmasq建立dns 缓存。
1、安装dnsmasq
$ sudo apt-get install update
$ sudo apt-get install dnsmasq
2、配置dnsmasq
首先,
$ sudo gedit /etc/dnsmasq.conf
ctrl+f 找到 #resolv-file=
在下面添加一行
resolv-file=/etc/resolv.dnsmasq.conf
然后,
复制一份resolv.conf给dnsmasq使用
$ sudo cp /etc/resolv.conf /etc/resolv.dnsmasq.conf
最后,
修改resol.conf 配置文件
$ sudo gedit /etc/resolv.conf
将之中的域名服务器全部删除掉,添加一行
nameserver 127.0.0.1
保存退出
3、启动、停止dnsmasq
$ /etc/init.d/dnsmasp start
$ /etc/init.d/dnsmasp stop
$ /etc/init.d/dnsmasp restart
利用/etc/init.d/dnsmasp start来启动
配置修改后用/etc/init.d/dnsmasp restart来重新启动使dnsmasq生效。
4、测试DNS缓存
第一次输入
$ dig www.baidu.com
结果输出:
;; Query time: 3 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Fri Jun 29 11:07:44 CST 2018
;; MSG SIZE rcvd: 271
第二次输入
$ dig www.baidu.com
结果输出:
;; Query time: 0 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Fri Jun 29 11:07:49 CST 2018
;; MSG SIZE rcvd: 104