Linux下上网速度慢的问题及其解决方法
(-12-05 20:14:59)
标签:
杂谈
今天解决了Linux下上网比Win下慢的问题,简要做了一点笔记,转载
1.不是所谓ipv6问题
2.是dns解析问题
3.解决方法:开启dnsmasq服务使用本地dns缓存
4.真正有用的步骤:
(1)vi /etc/resolv.conf
在最前面添加: nameserver 127.0.0.1
其它的不用动,尤其不能相信把其它的都删空之类的话(pppoe可能可以那样干,但没有试验)。
(2)vi /etc/dnsmasq.conf
解除以下一行的注释(并加上ip地址):listen-address=127.0.0.1
(3)将dnsmasq.conf服务设置为开机启动
5.可能某些情况下有用的方案:
将4(2)中的修改换成解除resolv-file=/etc/resolv.conf的注释,
其余同4,但是实际试验在我这里无效
6.毫无用处的修改:
(1)浏览器中禁用ipv6
(2)内核中删除ipv6模块
(3)修改/etc/dhcp3/dhclient.conf(Debian系)或者/etc/sysconfig/network(RedHat系)
测试结果:
[Tinymouse@realasking ~]$ dig
......
;; Query time: 780 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Mon Mar 2 19:46:17
;; MSG SIZE rcvd: 212
[Tinymouse@realasking ~]$ dig
......
;; Query time: 4 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Mon Mar 2 19:46:31
;; MSG SIZE rcvd: 68
今天很郁闷,走了很多弯路,嗯。
------------------------------------------------------------------------
补遗:在fedora 10上按上面做了之后resolv.conf每次开机都会被替换
回原来的(DHCP下),解决方法是把resolv.conf加上只读权限:
chattr +i /etc/resolv.conf
但是这样做之后会导致listen-address无法创建,dnsmasq启动失败,
于是我就在服务中关掉了dnsmasq,而把它放到了profile.d下。
建立一个dnsmasq.sh,内容如下:
if [ $UID -eq 0 ]
then
/etc/init.d/dnsmasq restart > /dev/null
fi
这里还可以改进,加上判断dnsmasq是否已经启动的语句,
不过现在能用了,不想再弄了
分享:
喜欢
0
赠金笔
加载中,请稍候......
评论加载中,请稍候...
发评论
登录名: 密码: 找回密码 注册记住登录状态
昵称:
评论并转载此博文
发评论
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。