Vista Ultimate在ADSL连接下部分网站无法访问的问题解决

本本从Vista Home Basic升级到了Vista Ultimate,并且更新了SP1,之后突然发现新浪、网易、搜狐等门户都上不去,刚开始怀疑是ADSL的问题,可是到了公司这些网站又都可以访问,而且试了XP连接的ADSL,这些网站也都可以访问,问题出在什么地方呢?

    Google了一下,原来是MTU。

    MTU是Maximum Transition Unit的缩写,意思是网络上传输的最大的数据包。MTU的单位是字节,大部分网络设备的MTU都是1500。如果本机的MTU比网关的MTU大,大的数据包就会被拆开来传送,这样会产生很多数据碎片,增加丢包率,降低网络速度。把本机的MTU设成比网关MTU小或者相同,就可以减少丢包。那么如何来检测MTU?

    根据上网方式的不同,分为两种检测方式:

  1. 路由器上网或局域网上网。在命令行下,执行ping –f –l 1450 192.168.0.1。

    其中IP地址为网关的IP地址,1450是数据包的长度。如果能够ping通,表示数据包能够通过网关发送出去,不需要拆分。如果出现:"需要拆分数据包但是DF"或者"Packet needs to be fragmented but DF set",表示数据包需要拆分,这时减小数据包的长度,找到合适的数据包长度。

  2. ADSL上网方式。这种情况下,只需要将1中的IP地址替换成任意的网址就可以。诸如:ping –f –l 1450 www.sina.com.cn。结果的查看和上面一样。

那么怎么修改MTU呢?

  1. 可以用Vista优化大师。

    CNBETA上刚刚有VISTA优化大师3.12发布的消息,我下载下来,没想到这次派上了用处。在系统优化->网络加速中,修改MTU设置,如下图:

  2. 手动修改注册表。

    首先到HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces;

    其下有很多子项,找到子项中包含当前IP的条目,然后新建DWORD键值,设置为刚才调试的合适的数据包长度,注意需要设置为十进制。

完成设置后,重启电脑就可以正常访问这些网站了。

posted @ 2008-09-02 00:25  Cocowool  阅读(834)  评论(1编辑  收藏  举报