解除限制 流畅下载——深入Vista的TCP/IP连接数限制技术

技术与开发

BT下载、在线看视频已成为大家上网的主流应用了。从Windows XP SP2开始,TCP/IP连接数就被限制为10,这虽然增加了系统抵抗网络攻击的能力,但却使BT软件、在线视频软件等多线程程序的速度大大降低。所以,网上曾经出现了不少破解TCP/IP连接数限制的补丁。后来,这些补丁甚至被直接集成到了BT软件中。今天Vista来了,默认地,它的TCP/IP连接数也是被限制了的。那么?Vista是采用何种技术来实现连接数限制的呢?我们又该如何破解这一限制呢?

目前,很多使用Vista的用户反映使用BT下载工具、电骡等P2P软件以及PPStream和快车的下载速度都很慢,甚至比在Windows XP下都要慢得多。那么,到底是什么原因导致了这一现象呢?

一、为何连接数会受限

众所周知,自从Windows XP SP2开始,为了防止蠕虫病毒等恶意程序的迅速传播和DDoS攻击,微软对并发的TCP/IP连接数进行了限制。因为蠕虫病毒、DDoS攻击等会通过多个线程连接被攻击电脑。限制连接数后,系统对这类攻击的防范能力大大提高了。Windows XP SP2的所有版本的并发TCP/IP连接数目都被限制为10。很多人还不知道的是,这一限制已经悄悄过渡到了Windows Vista。Windows Vista的TCP/IP的并发连接限制数与版本相关,其中旗舰版本是10,而家庭版本是5。

Windows Vista的TCP/IP连接数限制在一定程度上提高了系统的安全性,不过也带来了副作用。很多朋友在使用快车、BitComet、电骡、PPStream等多线程软件时,发现下载速度慢得无法忍受,究其原因,原来Windows Vista对于10个以上的下载线程进行了屏蔽,这样一来多线程软件自然就无法充分利用网络带宽了。Windows Vista超过TCP/IP的并发连接限制数将触发一个警告事件(ID为4226)。因此,当大家感觉网络速度偏慢可以打开事件查看器,查看正在使用的软件是否超出了TCP/IP并发连接限制数(如图1)。偏低的TCP/IP连接数限制是人们感觉在Windows Vista下使用多线程软件速度不如在Windows XP下使用的主要原因。那么,我们有没有好的办法来突破Windows Vista的TCP/IP连接数限制呢?

25-f15-1.jpg
图1

二、深入连接数限制技术

在Windows XP SP2,微软主要是通过系统文件Tcpip.sys来实现TCP/IP连接数限制的。因此,突破Windows XP SP2的 TCP/IP连接数限制的方法是修改控制TCP/IP连接数限制的系统文件Tcpip.sys(一般位于X:\Windows\system32\drivers目录,X为系统分区)。由于Tcpip.sys是系统保护文件,需要在安全模式和纯DOS下进行替换。

而在Windows Vista中,微软不但通过Tcpip.sys文件来限制TCP/IP并发连接数,而且还在注册表的HKEY_LOCALL_MACHINE\SYSTEM\CurrentControlSet\S ervices\Tcpip\Parameters子项下的隐藏子键TcpNumCon nections中设置了TCP/IP并发连接数限制。

三、正确的破解方法

到此,大家可以看出,破解Windows Vista的TCP/IP连接数限制的主要步骤便是修改Tcpip.sys文件和TcpNumConnections子键了。那么,具体该如何操作呢?下面我们就分别介绍Windows VIsta32位和64位版本的破解方法。

注:目前已经有破解好的Tcpip.sys文件可供下载,下载地址:

32位系统:http://depositfiles.com/en/files/757980

64位系统:http://depositfiles.com/en/files/757979

1.Windows Vista 32的破解方法

由于Windows Vista的WRP(Windows Resource Pro tect即Windows资源保护)功能对系统文件和注册表进行了保护,采取了比Windows XP严格得多的限制,一般情况禁止覆盖系统文件。为了用破解的Tcpip.sys替换原始文件,我们首先需要让当前用户取得该文件的所有权。方法为:

以管理员身份运行命令提示符(以越过UAC机制),输入takeown /f X:\windows\system32\drivers\tcpip.sys(X为系统所在盘符)允许管理员重新获取先前被拒绝访问的tcpip.sys文件访问权。接着在命令提示符输入cacls X:\windows\system32\drivers\tcpip.sys /G “username”:F(username即管理员用户名)赋予管理员对tcpip.sys文件的完全权限(见图2)。

25-f15-2.jpg
图2

在Windows Vista中,微软为TCP/IP连接引入了“Auto Tuning”新特性。“Auto Tuning”能够根据网络应用情况调整、优化,从而提高网络传输速度。不过,在替换Tcpip.sys文件以前须禁用该功能。方法为:在命令提示符输入netsh int tcp set global autotuninglevel=disable。

然后,使用破解的Tcpip.sys覆盖原始的文件。如果复制失败,可重启系统,进入安全模式重新尝试。接着,我们需要在注册表编辑器修改TCP/IP的最大连接数,找到HKEY_LOCALL_MACHINE\SYSTEM\CurrentControlSet\S ervices\Tcpip\Parameters子项,新建DWORD类型的子键TcpNumConnections,输入最大连接数,将该值设为200-500已足够(见图3),由于网络带宽和计算机性能所限,设置过大是毫无意义的。最后,重新启动计算机即可。

25-f15-3.jpg
图3

2.Windows Vista 64的破解方法

与Windows Vista 32操作相同,首先以管理员身份运行命令提示符,然后输入takeown /f X:\windows\sys tem32\drivers\tcpip.sys(X为系统所在盘符)允许管理员重新获取先前被拒绝访问的tcpip.sys文件访问权。接着在命令提示符输入cacls X:\windows\system32\drivers\tcpip.sys /G “username”:F(user name即管理员用户名)赋予管理员对tcpip.sys文件的完全权限。

与Windows Vista32操作相同,在替换Tcpip.sys文件以前须禁用“Auto Tuning”新特性。方法为:在命令提示符输入netsh int tcp set global autotuninglevel=disable。

由于64位的Windows Vista的完整性校验功能需要驱动程序的签名,覆盖了tcpip.sys文件后重启将被原始文件覆盖。我们一定要先关闭64位的Windows Vista的完整性校验功能,方法为:

在命令提示符输入bcdedit.exe -set loadoptions DDIS ABLE_INTEGRITY_CHECKS。

32位的Windows Vista不需要以上步骤。然后,使用破解的Tcpip.sys覆盖原始的文件。如果复制失败,可重启进入安全模式进行操作。接着,我们需要在注册表编辑器修改TCP/IP的最大连接数,找到HKEY_LOCALL_MA CHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parame ters子项,新建DWORD类型的子键TcpNumConnections,输入最大连接数。最后,重新启动计算机即可。

3.使用傻瓜补丁破解

以上破解Windows Vista的TCP/IP连接数限制的方法对于普通用户操作难度较大,不过,现在他们已经可以使用全自动的补丁了。

该破解补丁名为Vista TCP/IP and UAC AutoPatch 6.0(下载地址:http://download.softpedia.com/dl/cce6c22e 4bddb2b5d3380306b7e53a16/464ad982/100072536/softwar e/tweak/vistapatch.zip)。该补丁是一个压缩包,包含了破解的Tcpip.sys(tcpip32.sys、tcpip64.sys)、32位和64位的破解批处理文件(Patch32.bat、Patch64.bat)、TcpNumCon nections注册表子键导出文件(Vista_TCPIP_Limit_70000.reg)、打开和关闭UAC机制的注册表子键导出文件(uac_admin_off.reg、uac_admin_on.reg、uac_user_off.reg、uac_user_on.reg)、还原Tcpip.sys的批处理文件(Un doPatch.bat)等。

该补丁修改后的TCP/IP连接数是70000,如果需要修改该值可以修改Vista_TCPIP_Limit_70000.reg中的dword:后的16进制数值。用户打开破解的批处理文件,一直按回车键即可成功覆盖原始的Tcpip.sys,不过并没有成功导入TcpNumConnections键值,因此,最后还需要运行Vista_TCPIP_Limit_70000.reg。如果要恢复原始的tcpip.sys文件也很简单,只要打开UndoPatch.bat,一直按回车键即可。

编后:限制TCP/IP连接数技术本身是把双刃剑,在提高系统安全性的同时也降低了下载速度。解除连接数限制,提高了下载速度却使系统更易被攻击。所以,到底该不该解除连接数限制,到底该把连接数设置为多少,这还要用户仔细斟酌。