关于对某些网站无法访问的解决办法

环境拓扑:
PC1 使用 model 连接 internet ,并且使用 ICS 共享无线给 PC2 PC3 ,之前使用的是什么 300 的一个猫,猫上还有个北京网通的贴。前些日子换了个现在这个 CAT1000 的猫后,就发现中关村在线,淘宝,和微软无法访问了,其他网站均正常, ping 中关村和淘宝也可以通,而且速度也不慢,记得用以前那个 model 的时候也没有出现过这样的问题。但是如果是我直接用 model 连接 internet 也是可以访问淘宝,微软,中关村的。
 
在尝试了修改 Hosts 文件,杀毒,清理垃圾文件,修改网络设置等一些列操作后,无果,很郁闷,在论坛发贴也没有解决问题。
于是跑去问老师,果然姜还是老的辣,一开口就说到了本文重点 :ADSL 中的 MTU 值,首先,先补一下关于 PPPOE 中的 MTU
 
这段话源自:《 Windows Server 2003 技术内幕(提高篇)》 (ISBN 7-302-10332-1)
 
P471
 
PPPoE 所施加的一个重要的限制就是消减了客户端能传输的最大帧大小。标准的 Ethernet 帧具有 1500 字节的有效负载荷,这个参数称为“最大传输单元” (Maximum Transmission Unit,MTU) 。相反,由于 PPPoE 帧的 header 要占用 6 字节,还要用另外 2 个字节位来设置 PPP 协议 ID, 所以它的 MTU 1492 字节。
 
TCP/IP 客户端协商建立的 Web 服务器的一个连接时,两个实体将协商一个 MTU 。这在正常情况下是 1500 字节。但是,假如客户端在一个使用 PPPoE 连接的服务器后面(该服务器在 DSL 服务器提供商处), PPPoE 服务器就会丢弃帧,并向 Web 服务器返回一条 "Internet Control Management Protocol     ICMP )消息,告诉它的 MTU 1492 。加入 Web 服务器被配置成拒绝 ICMP (大多 Web 服务器都会这样设置),网页就无法正确地加载。
 
为了查实这种情况,一个好用的诊断技术是从客户端上对 Web 服务器执行 Ping 操作,并用 -l 开关了指定一个载荷大小,再用一个 -f 开关来禁止分割数据库。具体语法是:
 
ping -f -l 1492 <internet_host>
 
如果屏幕上返回一条 "Packet needs to be fragmented but DF set"     错误提示,你就知道已经超过了 web 服务器或者沿途的某个路由器的 MTU 设置。
 
为了避免产生此问题,你需要在位于 PPPoE 服务器背后的客户端上减小 MTU 值。为此,你既可以在每个客户端上进行设置,也可以在一个客户端上进行设置,然后使用 Regedit 将修改导出至一个文件,并采取一个登录脚本的方式,将文件应用于其他客户端。你需要改动的地方是:
 
项: HKLM_LOCAL_MACHINE | System | CurrentControlSet | Services | TCPIP | Paremeters | interfaces|
新建值: MTU
数据: 1492 (REG_DWORD) 十进制
 
设置多大的 MTU 值取决于你的上网方式,不同的上网方式支持不同的 MTU ,下面列出了一些上网方式的 MTU 值:
EtherNet( 一般上网方式,默认值 ):1500
PPPoE/ADSL:1492
Dial Up/Modem:576
 
看到这里,我想,会不会是 model MTU 设置有问题呢,于是进入 model 的管理界面,但却并未发现有设置其 MTU 的选项
经过老师的指点,认为有可能是作为 ICS 服务器的 PC1 MTU 设置有问题。立刻打开注册表,找到其物理网卡所在键值位置,惊奇的发现其 MTU 位置上的值居然是 576 ,怪不得那些网站可以 ping 通却无法访问了。(下图值为我改后的MTU值)
找到问题所在,直接将 MTU 改到 1492 ,却依然无法访问微软等网站,看来只能手动测试合适的 MTU 值了。
格式为: ping  �Cf  �Cl  1xxx   [url]www.Microsoft.com[/url]
* �C f 参数:通知操作系统不能私自更改该数据包大小
* �C l  1xxx 参数:发送一个定长数据包, 1xxx 是要测试的包大小
*[url]www.Microsoft.com[/url] :任意一台 Internet 上的主机,也可使用其它主机名或 IP 地址
观察反馈结果并判断 ISP MTU 值,如图,则表示 MTU 值太大了,你需要更小的 MTU 值才行!因为数据包拆分了
如下图则表示这个数据包大小: 1312 是可行的!不过,强烈建议找出可行的最大 MTU 值!这样一来,在设定的时候,才可以达到最佳的网速!增加网络的利用率。
在设置完MTU值后,又见到了久违的中关村,淘宝,兴奋ING
至此,问题成功解决。在这里十分感谢岳老师的帮助 ^_^
 

你可能感兴趣的:(网站,访问,休闲,MTU)