我的10.04上网解析巨慢,试了好多方案都没成功,求诊断求帮助

包含网卡/无线网的网络问题和ADSL/校园网/宽带拨号支持及代理/共享等网络使用问题
回复
neo_2011
帖子: 9
注册时间: 2011-09-08 23:10

我的10.04上网解析巨慢,试了好多方案都没成功,求诊断求帮助

#1

帖子 neo_2011 » 2011-11-04 16:27

概况:
windows XP + Ubuntu10.04双系统.
刚装完ubunu系统的时候,默认的Firefox可以访问google搜索,百度下的各种内容(搜索、快照、贴吧、知道、空间等都可以)。
但是更多的网站是不能访问,比如ubuntu中文站、sohu、sina、csdn等等,浏览器左下角一直显示waiting for XXX.XXX……

我在网上搜索到好几种方案,常见的有dnsmasq,pdnsd,还有说使用google DNS服务器的(8.8.8.8),有说用nscd的。
昨晚4种方案我都试了,有次不知道怎么回事就可以访问所有网站了,我也顺便装了chrome。
结果下次重启之后,又回到只能上google、百度的状态,firefox和chrome是同样的情况,大部分网站的解析不出来,google虽然能搜索,但搜索结果链接打不开,cache也不能看……基本上只在用百度和快照。

今天中午一急之下再重装ubuntu,结果初始状态还是解析不了很多网站,命令行里都是ping得通。
livecd试用也不能解析……

windows能用,照理说硬件不会有问题啊……
更新软件源之后装一些常用包也是没问题的,但装wine的时候有sourceforge.net内容无法获取,一直超时……

上网解析慢到底应该是哪里问题呢???

折腾了一天,真是心力交瘁……求诊断求开导求安慰……

附一些我搜索试用的解决方案及结果——全部失败:
安装dnsmasq
命令: sudo apt-get install dnsmasq
编辑dnsmasq的配置文件
命令: sudo gedit /etc/dnsmasq.conf
找到下面这一项
#resolv-file=
用下面的一条语句替换
resolv-file=/etc/resolv.dnsmasq.conf
确保你没有更改过/etc/resolv.conf文件,如果改过,恢复原状
然后执行命令
sudo cp /etc/resolv.conf /etc/resolv.dnsmasq.conf
然后编辑resolv.conf
命令;sudo gedit /etc/resolv.conf
将其中的域名服务器全部去掉,加入以下这行
nameserver 127.0.0.1
执行以下命令
sudo gedit /etc/ppp/peers/provider(Ubuntu 10.04的文件名是provider,其他版本可能不同)
在 usepeerdns 前面增加 # ,也就是把这条语句覆盖掉,以防resolv.conf的设置被pppoe覆盖。
重启电脑。
----------------------------
网上说“重启后, 你会发现解析速度比以前快了N个数量级”,我重启之后一如既往的慢,而且resolv.conf还是被重置了……
1.安装
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

修改一下文件:
sudo gedit /etc/ppp/peers/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
---------------------
依照网上步骤,第四步显示not starting pdnsd。第5步第二次结果也能显示为0msec,但上网还是不能解析,重启之后resolv.conf还是被重置……
sudo gedit /etc/resolv.conf
修改完成后记得保存,这里 resove.conf 的内容如下:
# Generated by NetworkManager
#domain domain
#search domain
#nameserver 192.168.1.1
nameserver 8.8.8.8
nameserver 8.8.4.4

保存好即时生效,可以使用 nslookup 工具查看是否生效:
magicalboy@m:~$ nslookup
> server
Default server: 8.8.8.8
Address: 8.8.8.8#53
Default server: 8.8.4.4
Address: 8.8.4.4#53
> magicalboy.com
Server: 8.8.8.8
Address: 8.8.8.8#53

Non-authoritative answer:
Name: magicalboy.com
Address: 75.119.195.77
> exit

打开浏览器随便输入您想要访问的地址看看,感觉比平常在 Windows 下访问的速度快多了吧,此时的域名解析速度很明显可以看到已经提高了几个数量级!
最后还有一个重要的步骤,若现在重启系统, 会恢复为默认 DNS 了. 我们之前设置的 DNS 又要重设。可以通过编辑
/etc/dhcp3/dhclient.conf 文件,增加之前设置的 Google DNS 服务器地址,代码:
prepend domain-name-servers 8.8.8.8,8.8.4.4;

保存退出后,下次重启系统就不需重设 DNS 了。
--------------------------
我的测试结果是,第一步保存resolv.conf之后,nslookup查看生效,但浏览器访问没有丝毫好转……
在 Ubuntu 中冲掉 DNS 缓存的方式是重新启动 nscd 守护程序。
安装 nscd 的方式是在命令行中运行这条命令:
sudo aptitude install nscd
在Ubuntu中清 DNS 缓存的命令是:
sudo /etc/init.d/nscd restart
我也试了修改firefox设置,network.dns.disableIPv6 -> true 关闭ipv6,结果也是无效……
neo_2011
帖子: 9
注册时间: 2011-09-08 23:10

Re: 我的10.04上网解析巨慢,试了好多方案都没成功,求诊断求帮助

#2

帖子 neo_2011 » 2011-11-04 21:43

很奇怪的解决方法,但问题确实解决了 ......

方法就是 ,关閉计算机,断开电源,拔掉网线,一分钟之后重新开机,OK。

折腾了一天的问题竟然是这样解决的……

通过百度搜索“Ubuntu只能上百度google”得到的答案,之前看到的什么修改DNS全都没有必要,对我也无效。
头像
monk
帖子: 19507
注册时间: 2010-01-28 10:45

Re: 我的10.04上网解析巨慢,试了好多方案都没成功,求诊断求帮助

#3

帖子 monk » 2011-11-04 21:52

dnsmasq+8.8.8.8
dig www.163.com

; <<>> DiG 9.8.1 <<>> www.163.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 47476
;; flags: qr rd ra; QUERY: 1, ANSWER: 6, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;www.163.com. IN A

;; ANSWER SECTION:
www.163.com. 209 IN CNAME www.cache.wangsu.netease.com.
www.cache.wangsu.netease.com. 209 IN CNAME www.163.com.lxdns.com.
www.163.com.lxdns.com. 2086 IN CNAME www.163.z.lxdns.com.
www.163.z.lxdns.com. 209 IN CNAME 163.xdwscache.glb0.lxdns.com.
163.xdwscache.glb0.lxdns.com. 90 IN A 121.14.228.43
163.xdwscache.glb0.lxdns.com. 90 IN A 121.11.151.72

;; Query time: 18 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Fri Nov 4 21:51:34 2011
;; MSG SIZE rcvd: 189

monk@laptop ~ $ dig www.163.com

; <<>> DiG 9.8.1 <<>> www.163.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 22732
;; flags: qr rd ra; QUERY: 1, ANSWER: 6, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;www.163.com. IN A

;; ANSWER SECTION:
www.163.com. 206 IN CNAME www.cache.wangsu.netease.com.
www.cache.wangsu.netease.com. 206 IN CNAME www.163.com.lxdns.com.
www.163.com.lxdns.com. 2083 IN CNAME www.163.z.lxdns.com.
www.163.z.lxdns.com. 206 IN CNAME 163.xdwscache.glb0.lxdns.com.
163.xdwscache.glb0.lxdns.com. 87 IN A 121.11.151.72
163.xdwscache.glb0.lxdns.com. 87 IN A 121.14.228.43

;; Query time: 4 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Fri Nov 4 21:51:37 2011
;; MSG SIZE rcvd: 213

*********宁静致远*********
如果我说的有什么不对,请看签名第一行
头像
qq420100523
帖子: 1684
注册时间: 2009-07-31 18:56
系统: windows、ubuntu
来自: 广东阳江

Re: 我的10.04上网解析巨慢,试了好多方案都没成功,求诊断求帮助

#4

帖子 qq420100523 » 2011-11-04 23:29

neo_2011 写了:很奇怪的解决方法,但问题确实解决了 ......

方法就是 ,关閉计算机,断开电源,拔掉网线,一分钟之后重新开机,OK。

折腾了一天的问题竟然是这样解决的……

通过百度搜索“Ubuntu只能上百度google”得到的答案,之前看到的什么修改DNS全都没有必要,对我也无效。
你是不是用了路由器上网了,而且是有两台机以上的?
我也曾遇到这种情况,有两种方法解决:
方法一、在你的系统手动分配IP、网关和DNS(查路由器信息)
方法二、升级你的路由器。。
我方法一、二都试过了,都行,不过之后,我升级了路由器固件,没再遇到这种情况了。。。 :em11
回复