• 解决ubuntu10.04上网慢之终极教程


    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下相当了。

     

     

    以上内容转自: http://lookluk.blogbus.com/logs/56313765.html 

     我本人按照上述方法实验之后,第四步没有成功,提示“Not start pdnsd ” 
    不过可喜可贺的是,第五步竟然成功了!!!也就是说达到了预期效果。
    哈哈。。。。。。。。。。 

     

     

     

    设置成功后再次重启,可能会出现dns无法解析的问题。可用如下方法解决。

     

    在使用networkmanager设置网卡时,会出现每次重启系统时DNS自动清零的问题,每次重启后都要重新设置DNS非常麻烦。

    而nameserver的配置文件是 /etc/resolv.conf 

    这是正常的内容:

    # Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)

    # DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN

    nameserver 202.102.152.3

    重启后nameserver 202.102.152.3就被删除了。

    由上面的# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)

    可以看出,resolv.conf是由resolvconf产生的。编辑vim /etc/resolvconf/resolv.conf.d/head 文件

    显示与resolv.conf相同的内容:

    # Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)

    # DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN

    在最后键入nameserver 202.102.152.3

    保存退出,

    resolvconf -u

    此时就可以正常上网了,重启后不用在重新设置DNS了。

     

    转自 http://hi.baidu.com/step_1/blog/item/bad960f53b2c6337bd3109b2.html

  • 相关阅读:
    爱上你的一百个理由 (网摘)
    梦想向右,沉默向左
    明夕何夕,君已陌路。
    不肯嫁的几种男人(转)
    一剪梅
    C# preprocessor Directives
    Language
    C# Language Tour
    Web application
    Unsafe code
  • 原文地址:https://www.cnblogs.com/leino11121/p/2381939.html
Copyright © 2020-2023  润新知