Home
Categories
WIKI
Topic
User
LANGUAGE:
中文
English
解决Ubuntu 10.04上网慢之终极教程
Apps Section
2658
views ·
1
replies ·
To
floor
Go
HyBOyhong
deepin
2012-02-04 07:20
Author
本来想加点东西的,但家人都睡了,不敢打字,声音太吵,所以就简单的说下, 内容是从网上找到的,本着分享,共同进步的心态弄的,没其他意思, “理解万岁”
Ubuntu上网慢?没错!不要再怀疑,Ubuntu上网的确要比Windows下慢。慢在哪里呢?
在Ubuntu 9.10下使用Firefox浏览网页的时候你会发现,左下角的状态栏里,长时间的显示:Looking up xxxx.com.... 或者 Connecting to xxxx.com 的信息。此时页面保持空白.
当这条信息终于跳过去的时候,便是快速的Transferring data from xxxx.com,很快,
页面显示完毕。此时我们得出结论:慢在DNS解析上,而非慢在拉取网页数据上。
在Windows下是默认开启了DNS缓存的,因此所有解析过的域名,短时间内不可能再连接远程DNS服务器进行查询,而是直接从本地的DNS缓存 中查询,理论上讲,解析DNS的时间近似于0。而Ubuntu并没有默认开启类似的功能。因此,我们感觉,同样一台机器,同样一根电缆,Windows下 的上网速度要优于Ubuntu。
因此,解决Ubuntu上网慢的思路也就来了:我们在本机搭建一个DNS代理服务器,缓存DNS即可。linux下搭建DNS代理的常用软件 有:bind、djbdns、dnsmasq和pdnsd等。此处,我们以pdnsd来举例。
1.安装
pdnsd已经加入源里了,安装非常简便:
sudo apt-get install pdnsd
安装过程中,它会问你选择何种配 置,此处选择manual。
2.配置
sudo gedit /etc/pdnsd.conf
修改
server {
label="resolvconf";
}
为
server {
label="resolvconf";
ip=61.233.154.33;
ip=211.98.4.1;
timeout=30;
interval=30;
uptest=ping;
ping_timeout=50;
purge_cache=off;
}
其中:
ip=61.233.154.33;
ip=211.98.4.1;
这 两行也可以写成一行ip=61.233.154.33,211.98.4.1; 代表当地的DNS服务器地址,如果你上的是校园网,那么这两个地址就是网管阿姨给你的那个DNS和备用DNS了。。。
可以有多个,根据自己情况填写。这里是铁通的DNS。
后面的参数采用默认就可以了。
3.设置本机的DNS
sudo gedit /etc/resolv.conf
在所有内容之前插入一行:
nameserver 127.0.0.1
特别的,如果你是ADSL拨号上网(通过pppoeconf配置),那么还需要修改一下文件:
sudo gedit /etc/ppp/peers/dsl-provider
在usepeerdns前加#,注释掉。防止ppp强制使用远程DNS,并覆盖 resolv.conf
如果你启用了DHCP服务,那么要
sudo gedit /etc/dhcp3/dhclient.conf
去掉
#prepend domain-name-servers 127.0.0.1;
前面的“#“。
4.启动pdnsd
sudo /etc/init.d/pdnsd start
5.简单测试
dig yahoo.com | grep time
第一次结果显示:;; Query time: 11 msec
第二次结果显示:;; Query time: 0 msec
第三次结果显示:;; Query time: 0 msec
第四次结果显示:;; Query time: 0 msec
第N次结果显示:;; Query time: 0 msec、
至此,我们的本地DNS代理服务器已经搭建成功。当然,这并没有意味着网速会
立马得到提升。但是,当Firefox第二次访问同一个域名下的页面 时,Looking up xxxx.com.... 或者 Connecting to xxxx.com...的时间已经几乎为0。现在我们的Ubuntu的上网速度已经和Windows下相当了。
本人按照上述方法实验之后,第四步没有成功,提示“Not start pdnsd ” 不过可喜可贺的是,第五步竟然成功了!!!也就是说达到了预期效果。
感谢原创作者的劳动,我发贴的原因只是因为我的本本在安装好linux时候,网速都不好,windows上可以达到几百kb,而linux下,只有几十kb,原因还在思考中(如果大家有自己的见解,欢迎提出来一起讨论。驱动也好,系统本身的原因也罢,最终目的是解决问题,获得进步)
Reply
Like 0
Favorite
View the author
All Replies
HyBOyhong
deepin
2012-02-04 08:54
#1
在付上另一帖(出处相同)http://www.ylmf.net/ubuntu/tips/201011098978.html
Reply
Like 0
View the author
Please
sign
in first
New Thread
Popular Ranking
Change
如何安装软件安装包?
Instructions on How to change the language in Thunderbird
EZVIZ on Linux
Popular Events
More
Ubuntu上网慢?没错!不要再怀疑,Ubuntu上网的确要比Windows下慢。慢在哪里呢?
在Ubuntu 9.10下使用Firefox浏览网页的时候你会发现,左下角的状态栏里,长时间的显示:Looking up xxxx.com.... 或者 Connecting to xxxx.com 的信息。此时页面保持空白.
当这条信息终于跳过去的时候,便是快速的Transferring data from xxxx.com,很快,
页面显示完毕。此时我们得出结论:慢在DNS解析上,而非慢在拉取网页数据上。
在Windows下是默认开启了DNS缓存的,因此所有解析过的域名,短时间内不可能再连接远程DNS服务器进行查询,而是直接从本地的DNS缓存 中查询,理论上讲,解析DNS的时间近似于0。而Ubuntu并没有默认开启类似的功能。因此,我们感觉,同样一台机器,同样一根电缆,Windows下 的上网速度要优于Ubuntu。
因此,解决Ubuntu上网慢的思路也就来了:我们在本机搭建一个DNS代理服务器,缓存DNS即可。linux下搭建DNS代理的常用软件 有:bind、djbdns、dnsmasq和pdnsd等。此处,我们以pdnsd来举例。
1.安装
pdnsd已经加入源里了,安装非常简便:
sudo apt-get install pdnsd
安装过程中,它会问你选择何种配 置,此处选择manual。
2.配置
sudo gedit /etc/pdnsd.conf
修改
server {
label="resolvconf";
}
为
server {
label="resolvconf";
ip=61.233.154.33;
ip=211.98.4.1;
timeout=30;
interval=30;
uptest=ping;
ping_timeout=50;
purge_cache=off;
}
其中:
ip=61.233.154.33;
ip=211.98.4.1;
这 两行也可以写成一行ip=61.233.154.33,211.98.4.1; 代表当地的DNS服务器地址,如果你上的是校园网,那么这两个地址就是网管阿姨给你的那个DNS和备用DNS了。。。
可以有多个,根据自己情况填写。这里是铁通的DNS。
后面的参数采用默认就可以了。
3.设置本机的DNS
sudo gedit /etc/resolv.conf
在所有内容之前插入一行:
nameserver 127.0.0.1
特别的,如果你是ADSL拨号上网(通过pppoeconf配置),那么还需要修改一下文件:
sudo gedit /etc/ppp/peers/dsl-provider
在usepeerdns前加#,注释掉。防止ppp强制使用远程DNS,并覆盖 resolv.conf
如果你启用了DHCP服务,那么要
sudo gedit /etc/dhcp3/dhclient.conf
去掉
#prepend domain-name-servers 127.0.0.1;
前面的“#“。
4.启动pdnsd
sudo /etc/init.d/pdnsd start
5.简单测试
dig yahoo.com | grep time
第一次结果显示:;; Query time: 11 msec
第二次结果显示:;; Query time: 0 msec
第三次结果显示:;; Query time: 0 msec
第四次结果显示:;; Query time: 0 msec
第N次结果显示:;; Query time: 0 msec、
至此,我们的本地DNS代理服务器已经搭建成功。当然,这并没有意味着网速会
立马得到提升。但是,当Firefox第二次访问同一个域名下的页面 时,Looking up xxxx.com.... 或者 Connecting to xxxx.com...的时间已经几乎为0。现在我们的Ubuntu的上网速度已经和Windows下相当了。
本人按照上述方法实验之后,第四步没有成功,提示“Not start pdnsd ” 不过可喜可贺的是,第五步竟然成功了!!!也就是说达到了预期效果。
感谢原创作者的劳动,我发贴的原因只是因为我的本本在安装好linux时候,网速都不好,windows上可以达到几百kb,而linux下,只有几十kb,原因还在思考中(如果大家有自己的见解,欢迎提出来一起讨论。驱动也好,系统本身的原因也罢,最终目的是解决问题,获得进步)