![在局域网上浏览速度很慢,但在无线网络上浏览正常](https://linux22.com/image/974113/%E5%9C%A8%E5%B1%80%E5%9F%9F%E7%BD%91%E4%B8%8A%E6%B5%8F%E8%A7%88%E9%80%9F%E5%BA%A6%E5%BE%88%E6%85%A2%EF%BC%8C%E4%BD%86%E5%9C%A8%E6%97%A0%E7%BA%BF%E7%BD%91%E7%BB%9C%E4%B8%8A%E6%B5%8F%E8%A7%88%E6%AD%A3%E5%B8%B8.png)
互联网在其他所有路由器上都运行良好,但在家里浏览网页却很糟糕(浏览速度慢,加载时间慢)。我将 DNS 服务器更改为 8.8.0.0,但仍然没有帮助。有趣的是,在这个网络上下载速度非常快(例如种子),但使用浏览器和加载网站速度非常慢(仅在这个网络上)。我需要在路由器设置中更改某些内容吗?或者我可以尝试什么?顺便说一句,我使用有线连接到路由器。此外,整个计算机都有问题,整体速度要慢得多。
编辑:使用 Windows 时没有问题。
编辑:
$ ifconfig
eth0 Link encap:Ethernet HWaddr f2:4d:a0:c0:3f:4c
inet addr:192.168.11.8 Bcast:192.168.11.255 Mask:255.255.255.0
inet6 addr: fe80::f24d:a2ff:fec6:3f4c/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:206798 errors:0 dropped:0 overruns:0 frame:0
TX packets:219570 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:76680734 (76.6 MB) TX bytes:21738160 (21.7 MB)
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:65536 Metric:1
RX packets:160 errors:0 dropped:0 overruns:0 frame:0
TX packets:160 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:11094 (11.0 KB) TX bytes:11094 (11.0 KB)
$ ping -c 2 4.2.2.2
PING 4.2.2.2 (4.2.2.2) 56(84) bytes of data.
--- 4.2.2.2 ping statistics ---
2 packets transmitted, 0 received, 100% packet loss, time 1007ms
$ ping -c 2 google.com
PING google.com (213.159.32.147) 56(84) bytes of data. 64 bytes from
lan-213-159-32-147.kns.skynet.lv (213.159.32.147): icmp_seq=1 ttl=61
time=0.936 ms 64 bytes from lan-213-159-32-147.kns.skynet.lv
(213.159.32.147): icmp_seq=2 ttl=61 time=0.937 ms
--- google.com ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1001ms
rtt min/avg/max/mdev = 0.936/0.936/0.937/0.030 ms
答案1
您的症状确实表明您的第一个 DNS 无效,因此存在超时时间,然后您的第二个 DNS 能够正确解析地址并且您开始看到内容加载。
当然,一旦建立连接,传输速度就会很快,正如您所说。
除非我遗漏了什么,否则 8.8.0.0 不是一个有效的 DNS,这表明这是你的问题:
$ dig @8.8.0.0 yahoo.com
; <<>> DiG 9.9.5-3-Ubuntu <<>> @8.8.0.0 yahoo.com
; (1 server found)
;; global options: +cmd
;; connection timed out; no servers could be reached
如果您要使用 Google DNS,正确的地址是 8.8.8.8 和 8.8.4.4:
$ dig @8.8.8.8 yahoo.com
; <<>> DiG 9.9.5-3-Ubuntu <<>> @8.8.8.8 yahoo.com
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 32669
;; flags: qr rd ra; QUERY: 1, ANSWER: 3, AUTHORITY: 0, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 512
;; QUESTION SECTION:
;yahoo.com. IN A
;; ANSWER SECTION:
yahoo.com. 1205 IN A 98.138.253.109
yahoo.com. 1205 IN A 98.139.183.24
yahoo.com. 1205 IN A 206.190.36.45
;; Query time: 32 msec
;; SERVER: 8.8.8.8#53(8.8.8.8)
;; WHEN: Sat Jun 07 21:20:40 EDT 2014
;; MSG SIZE rcvd: 86
答案2
您的 ISP 正在搞乱您的连接。您无法直接访问互联网,因为 ping 4.2.2.2 失败,然后PING google.com (213.159.32.147)
显示您的 ISP 正在重定向您的 DNS 213.159.32.147不是google 的 IP,但可能属于lan-213-159-32-147.vln.skynet.lt
您的路由器或本地代理/缓存,因为延迟非常低,不到 1ms。因此,当您认为您正在 ping google 时,您实际上是在 ping skynet.lv 拥有的某个代理。这不是卫星互联网,对吗?您可能有一个“粗管道”,可以一次获取大量数据(这可以解释快速种子和大文件下载),但延迟很高(意味着数据包需要一段时间才能到达目的地)。因此,您的大文件下载似乎“很快”,但浏览 VOiP 和其他不需要太多数据但需要快速响应的活动似乎很慢。尝试ping -c 2 ir1.fp.vip.gq1.yahoo.com
或您从未访问过的其他奇怪域,看看时间,如果它> 100ms,那就是您的问题,如果它<3ms,那么它是您的 ISP 服务器。您也可以尝试tracepath somedomain.com
答案3
指定名称服务器可能是正确的。您选择的名称服务器 (8.8.0.0) 无法解析,最终会增加浏览时的查找时间。请尝试指定 (8.8.8.8)。
还可以尝试使用 resolveconf 的头文件函数,这样您可以保留 dhcp 的所有其他默认设置不变,只需添加一个名称服务器头。
将您的 /etc/resolvconf/resolv.conf.d/head 更新为:
# 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 8.8.8.8
顺便说一句,我不知道为什么该文件默认为禁止手动编辑。我相信该文件的目的是手动编辑。它实际上是被覆盖的 /etc/resolv.conf 文件。