搜索文章:

首页  |  Java技术  |  Asp.net  |  Asp编程  |  VC/C++  |  Delphi  |  VB编程

让BT下载的速度狂飚起来

喜欢从网上下载电影的网虫们,相信对bt这个东西不会陌生,但是许多人发现自己的下载速度并没有想像的那样快,根本比不上ftp的正常下载速度,看着朋友们吹嘘自己的速度上百k甚至几百k的,而自己的下载速度还在几k十几k的在那慢慢爬,心里真是不舒服。其实,要使bt下载的速度快起来,只要针对不同的情况,在自己的电脑中作一些相关的设置就行了,下面笔者就来跟大家讨论一下怎样尽量使处在外网和内网中的不同用户在使用bt下载时能达到最高的下载速度,让我们的bt下载也狂飚起来。
让bt下载的速度狂飚起来

_blank>一、把把脉再说
_1.shtml" target=_blank>二、公网用户开放下载端口
_3.shtml" target=_blank>三、内网用户作好端口映射
_5.shtml" target=_blank>四、解决isp封bt端口的方法
  一、把把脉再说
  其实,bt下载的速度快的关键就看你用来下载的电脑能不能直接连接到因特网上,这里的直接连接是说你的电脑在因特网上是有"合法身份"的,即拥有合法的ip地址(公网ip地址)。在电脑获取了公网ip后,因特网上的其他用户就可以直接与你通信了,依照bt下载的原则,大家就可以把数据直接传给你,当然速度就快了。像adsl拨号接入方式的用户,如果是把modem配置成桥接方式而采用电脑手动拨号的话,所获取的ip即为公网ip,有些isp对lan接入方式的用户也是分配的公网ip。公网上网的用户一般bt下载速度哪怕只有一个种子也基本上能达到下载速度极限,有些读者会问,我的电脑所获取的ip是公网ip啊,但为什么bt下载速度还是那么慢呢。别急,那我们就先来看看你的电脑bt下载软件端口的使用情况吧。
  以bittorrent plus! s-5.8.7 plus! 3.5 final为例来说明,bt默认使用的端口是8881-8999。bt软件好像没有专用的测试端口的软件与网站(我反正是没找到的),不过我们可以借用电驴的测试页面来测试一下端口,进入_test">http://www.thedonkeynetwork.com/connection_test这个页面,输入8881 ,然后按下"test",看一下bt下载端口的状态。如下图1所示。
screen.width-300)this.width=screen.width-300 border=0 alt=click to open in new window>

根据端口的不同状态,会返回三种不同的结果:端口被封、端口开放但未使用、端口开放且已在使用中。不同的状态如下所示。
  1、如果显示如下图2所示的提示,说明bt下载软件使用的端口被封或者你的电脑中安装有_blank">防火墙,_blank">防火墙防止了因特网的用户对此端口的访问。
screen.width-300)this.width=screen.width-300 border=0 alt=click to open in new window>

图2:端口未开放
  2、如果显示的是如下图3所示的提示,则说明bt下载软件的端口是开放的,并且8881端口正被运行的bt下载软件使用着。
screen.width-300)this.width=screen.width-300 border=0 alt=click to open in new window>

图3:端口开放且在使用
  3、如果显示的是如下图4所示的提示,则说明bt下载软件的端口也是开放的,但8881端口没有被电脑中的软件使用。
screen.width-300)this.width=screen.width-300 border=0 alt=click to open in new window>

图4:端口开放但未使用
  bt下载软件所使用的其他端口大家也可以用这种方法一一测试。如果大家访问不了以上网站页面的话,在这里我再给大家介绍一个测试端口的电驴页面,打开http://www.preinheimer.com/cgi-bin/connectiontest/connectiontest2.cgi,在输入框中输入8881后按"test"就可以开始测试了。如下图5所示。
screen.width-300)this.width=screen.width-300 border=0 alt=click to open in new window>

图5:在电驴页面测试端口
  如果显示的是下图6所示的内容的话,那也是表明你的下载端口是被封或被_blank">防火墙阻挡了。
screen.width-300)this.width=screen.width-300 border=0 alt=click to open in new window>

测试了端口的使用情况后,如果你的bt下载端口是开放着的,而且软件也可以使用它而速度却不快的话,则很有可能是种子的原因或下载用户过少,或因线路等其他的原因所致,按理说如果是图2、图3所示的情况下,只要有种子和适当多的用户其下载速度马上就可达到极限值的。下面我们就来看看如果_blank">防火墙阻挡了bt下载时怎么办。
二、公网用户开放下载端口
  实际上,只要是拥有公网的ip用户,你的机器就是因特网上一台合法的主机,任何人都可以直接与你联系而不必通过别的什么转换。为什么有的公网ip的用户,他的bt下载速度还是那么慢呢?这就一般是因为电脑安装有_blank">防火墙的缘故,基本上在常见_blank">防火墙软件的默认设置中,是阻止了来自因特网的其他用户对你的主动连接的,你接收不到别人传给你的数据,速度当然不快了。有一个方法就是关闭_blank">防火墙,这样bt下载的速度马上就可快起来,不过这样就失去了对电脑最起码的防护,安全性降低了。要想bt下载快,又要使用_blank">防火墙来保证安全的话,就要在_blank">防火墙软件中正确地打开bt的对外监听端口,想bt能高速下载,就要正确设置参数,打开端口,在下面会详细说明怎样打开_blank">防火墙的bt下载端口。
  windows xp中的自带有_blank">防火墙功能,许多安装了windows xp的用户都开启了这项功能,说不定,你的bt下载速度就是被堵看不见的"墙"挡在外面了呢。除了xp自带的_blank">防火墙外,许多用户可能是安装的其他专业_blank">防火墙。就以xp自带的_blank">防火墙和天网个_blank">防火墙为例,当然其他类型的_blank">防火墙软件可参照设置,这里就不同罗嗦了。
  1、在windows xp的icf中开启bt下载端口:
  icf是"internet connection firewall"的简称,也就是因特网连接_blank">防火墙。icf建立在你的电脑与因特网之间,它可以让你请求的数据通过、而阻碍你没有请求的数据包,是一个基于包的_blank">防火墙。在使用bt有时会因为icf的阻拦,引起连接不到seed或者数据包延滞降低下载速度。所以我们有必要在icf中设置对bt使用的端口不进行阻拦。
  右键点击"网上邻居",弹出的菜单中选择"属性",弹出"网络连接"窗口右键点击上网用的连接,在弹出的菜单中选择"属性",则弹出"本地连接属性"窗口,选择其中的"高级"选项卡,点击窗口下方的"设置"按钮,弹出"高级设置"窗口。本页中是一些常见的网络服务,现在我们要添加新的bt服务,点击下方的"添加"按钮,弹出"服务设置"窗口,如下图7所示。
screen.width-300)this.width=screen.width-300 border=0 alt=click to open in new window>

 在该窗口中,"服务描述"一栏中可随便填一些就可以,"在您的网络上主持此服务的计算机的名称或ip地址"栏中填入你机器的ip地址或机器名称便可(如我填的是本机名winxp),"此服务器的外部端口号"中填写8881,"此服务器的外部端口号"中也填写8881,可别忘了选中tcp协议然后按,"确定"即可。
  这样就在"高级设置"页中的"服务"栏中就增加了一个"bt"服务,如下图8所示。这个服务开放的是8881端口,同样你可以再新建开放bt下载软件使用的其他端口。
screen.width-300)this.width=screen.width-300 border=0 alt=click to open in new window>

现在我们的bt就可以在icf中通行无阻了。
2、在其他专业_blank">防火墙中开启bt下载端口:
  很多电脑中都没有开启icf,但装有其他的专业_blank">防火墙。下面以常见的天网个人_blank">防火墙2.5.0为例,来说明怎样设置开放bt下载端口,其他的_blank">防火墙可以参照设置。
  点击天网的"自定义ip规则"按钮。在"自定义ip规则"页中点击"增加规则"按钮,则会弹出"ip规则修改"窗口,如下图9所示。
screen.width-300)this.width=screen.width-300 border=0 alt=click to open in new window>

 在"名称"一栏中可随便填入,在"说明"中填入对上而名称的一些简单说明,可自己随便来填写。"数据包方向"一栏选中"接收或发送",在"对方ip地址"中选择"任何地址",然后再选中"tcp"页,在"本地端口"栏中填入"从8881到8999","tcp标志位"一栏中勾选"syn"项目,注意,最后不要忘记了在"当满足上面条件时"一栏中选择 "通行",默认的选项可是拦截,这可与我们希望的结果相反,其他的项目可不作更改,然后点确定。现在在"自定义ip规则"页中就增加了一个"天网中的bt"规则,在前面勾选上,再点击上面的"保存规则"图标,一切ok。,见下图10所示。
screen.width-300)this.width=screen.width-300 border=0 alt=click to open in new window>

 怎么样,在自己的电脑中通过以上的设置后,各位拥有公网ip的读者在bt时是不是快了许多,快动手吧。
二、内网用户作好端口映射
  除了公网用户外,还有许多人是通过局域网方式上网的,即为内网用户。内网用户是通过代理或nat方式上网的,上网的计算机得到的ip地址是因特网上的保留地址,保留地址有如下3种形式:10.x.x.x,172.16.x.x至172.31.x.x,192.168.x.x,如果大家看到自己机器的ip地址是提到的这三种形式,那必是内网用户无疑了。内网用户速度会很慢,因为在内网下,外网的机器只能看到你的网关的地址,请求只能由你发起,如果对方也在内网下,他就没有办法给你传东西,那么你们就不能互传文件。这样,你就损失了一些下载源,速度可能就会比较慢。
  下面对三种常见的内网用户:通过代理服务器(windows连接共享、sygate、wingate、winproxy、ccproxy等代理软件)上网和使用路由modem拨号上网、通过soho router上网,分别来说明怎样设置,以达到提高bt下载的速度。因为内网的机器都是经过一个公网ip地址出去的,就必须通过端口映射、nat或虚拟服务器来使外网的机器能直接连接到内网机器上,否则外网用户是看到的是你的网关。也就是说,必须通过设置,使位于内网中的机器透明地映射到因特网上去,对外部连接内网机器的用户来说,这台机器也好像是位于因特网上合法的主机一样。
  1、代理服务器上网
  很多网吧或小企业、机关等用户,都是在isp处申请一条或几条上网线路,通过架设一台专用的代理服务器,在代理服务器上安装相应的代理或网关软件,通过给客户机dhcp分配ip地址或指定一个固定的ip地址来向局域网内的用户提供上网服务的。我们必须在代理服务器上增加端口映射来提高bt下载速度。
  ●如果你的服务器是windows自带的网络共享连接,设置就非常简单。我们以windows 2000的internet 连接共享为例。
  在你共享的连接上按右键 ,选择"属性",在"共享"页按"设置"按钮,系统会弹出设置窗口,然后在"服务"页选择"添加"按钮,则弹出如下图11的设置窗口。
screen.width-300)this.width=screen.width-300 border=0 alt=click to open in new window>

在该页中,名称可以随便填(如bt),"服务端口号"中填入8881,勾选tcp,"专用网络上的服务器计算机的名称或地址"中填入你用来进行bt下载机器的名称或ip地址,然后按"确定"保存。再用同样的方法增加其他端口的映像,把它们通通指向你开始指定的计算机。
  ●使用专用的端口映射软件
  可以用的软件有:portmap、winroute pro、porttunnel等。以portmap v1.6来举例说明。portmap v1.6是一款小巧的绿色软件,其设置非常简,如果使用其他端口映射工具不习惯的朋友不妨试试。设置方法为:运行portmap v1.6,单击"增加"按钮,则弹出"增加/修改端口映射"的窗口。如下图12所示。
screen.width-300)this.width=screen.width-300 border=0 alt=click to open in new window>

在名称里随便输入(如btport),在"输入ip"栏里填写你要用于bt下载的客户机的ip地址就可以了(或者选择"any ip"把客户机使用的整个网段的ip添加进去也可以),在"输入端口"栏里输入8881,"输出ip"为自己机子上网代理服务器的公网ip,输出端口里输入 8881(输入端口和输出端口相同),其他的设置自己可以酌情进行不同的设置。这样设置就完成了,确认后再把刚刚设置好的那项启动就ok了。再用同样的方法把bt下载软件使用的其他端口依次加入并启动即可。
  不知道自己代理服务器ip地址的朋友,如果代理服务器是windows 98,可在服务器上运行winipcfg显示其公网ip,如若是windows 2000/xp,则运行ipconfig/all就可以找到你服务器所获得的公网ip。
  注意:一定要在代理服务器上进行设置或安装winroute pro、porttunnel、portmap等软件进行nat设置或端口映射。常听到有的朋友问,我的机器上安装了这些软件啊,并进行了正确的设置,怎么bt下载的速度还是一样地很慢呢。其实,那都是在客户机上操作的,当然是不行的。
  小提示:端口映射 类似于数学中"函数"的概念,就是将共享上网服务器的网关端口映射到局域网内某一客户机端口上,使内网用户可以通过端口映射来让外部用户访问自己的机器了。
2、路由modem自动拨号上网
  许多的用户是通过使用路由modem自动拨号来上网的。多台客户机和asal modem连接在一个交换机或hub上,或者是一台机器直接通过网卡和adsl modem的lan口用交叉线相连。adsl modem一般都内置了pppoe拨号功能,正确进行设置后,modem加电就能自动拨号获取公网的ip地址(adsl modem的设置这里就不再详述了,大家可参考相关资料)。客户机得到的ip地址是因特网上的保留地址,保留地址可以是如前所述3种形式10.x.x.x、172.16.x.x至172.31.x.x、192.168.x.x中的任何一种;获取的方式有两种,一是开启adsl modem的dhcp服务,动态获取ip,抑或指定一个与adsl modem的局域网地址在同一个网段内的ip地址,再把客户机的网关地址指向为adsl modem的局域网地址即可。
  adsl mdoem是内置了nat功能来实现多机共享上网的,对nat规则的设置,一般都是采用比较保守的napt规则。我们要提高bt的下载速度,就要对nat的规则进行设置,使外网的机器能够直接连接到内网机器上。
  举例说明,进入adsl modem的设置页面后,选择"服务"页,然后在"nat options"下拉框中选择"nat rule entry",在"nat规则设置"页中按下"添加"按钮,然后就弹出"nat规则-添加"的窗口,如下图13所示。
screen.width-300)this.width=screen.width-300 border=0 alt=click to open in new window>

 在本页中,"rule flavor"项选择"bimap","rule id"栏中填入1,"ip name"栏中选择"all",在"local 地址"栏中填入你用来进行bt下载的机器的ip,再"提交"即可完成规则的添加。注意,如果你的adsl modem中已有规则号为1的nat规则,则你必须先删除它,再添加同样的规则,只是使其rule id不再是1就可以。这样,我们就在adsl modem中为ip地址为192.168.1.3的内网机器添加一个bimap新的nat规则,使之能透明地映射到因特网上。如下图14所示。
screen.width-300)this.width=screen.width-300 border=0 alt=click to open in new window>

保存设置后,ip地址为192.168.1.3机器bt下载速度基本能达到modem的极限下载速度。其他的机器也可参照设置,这里不再详述了。
  小提示:nat-network address translator的简称,端口映射(又叫网络地址转换),实现内网ip地址与公网ip地址之间的相互转换,其作用是让服务器把指定端口的请求转发到指定的ip上,让其它的机器来响应这些请求,而内网向外网发送的时候不再是像其它网关服务那样随机分配端口,而是用上面指定的端口。
  bimap规则 bimap实现二个方向转换。bimap规则可以用来提供外网访问局域网设备,采用此方式将局网中的某台pc(ip)完全透明对应到公网的ip,这样许多复杂的应用如msn话音,网络游戏可以在这台pc正常运行。
  3、通过soho router上网
  在很多的小企业或学校,是用soho router来提供多用户上网服务的。一条adsl线路连至modem,modem用交叉线跟soho router的wan中连接,soho router再与pc机同时连接到一个交换机上或者pc直接连接到soho router提供的几个lan口上(一般在8个以下)。我们以tp_link 的tl-r400+为例来说明怎样通过设置虚拟服务器来提高bt下载速度。
  进入tl-r400+的设置页面,选择左边主菜单中的"重定向规则"下的"虚拟服务器",在"服务器端口"中填入8881-8999,在"服务器ip地址"中填入192.168.1.10,然后勾选"启用"。如下图15所示。
screen.width-300)this.width=screen.width-300 border=0 alt=click to open in new window>

再选择左边主菜单中的"重定向规则"下的"特殊应用程序",因为在"常用应用程序"栏中的选项中没有我们要用的bt软件,所以要自己添加一个。在"触发端口"中填入8881,在"引入端口"中填入8881-8999,然后再勾选上"启用"。如下图16所示。
screen.width-300)this.width=screen.width-300 border=0 alt=click to open in new window>

保存设置后,就使ip地址为192.168.1.3的机器能允许外部机器访问了。
四、解决isp封bt端口的方法
  针对bt下载用户越来越多,有些的isp就采取技术手段封掉了bt下载软件使用的端口,来达到阻止用户使用bt下载的目的,有段时间不就因为厦门一用户状告长宽封bt端口而闹得沸沸扬扬吗。如果isp已经封掉了bt的下载端口8881-8999,则我们可以通过在文件类型中"torrent"文件打开时运行的命令加上参数来突破封锁。具体操作是(以windows 2000为例):
  在"文件夹选项"页中选择"文件类型",找到torrent这种扩展名,单击"高级",在打开的窗口中选中"open",然后点"编辑",在编辑窗口中下面那行就是启动bt的命令行参数了,在此行结尾加一个空格后增加以下控制端口绑定的参数: -minport 最低端口号 -maxport 最高端口号。例如在我的机器上原来是"c:\program files\bittorrent\btdownloadgui.exe" --responsefile "%1",现在就把它改成"c:\program files\bittorrent\btdownloadgui.exe" --responsefile "%1" -minport 8021 -maxport 8029。其中的端口号请自己随意设置,不要是原来的8881-8999范围就可以了。
  但如果我们的bt下载软件是bittorrent5.x.x试验版,可以直接在程序中直接更改设置。具体为:点击"属性设置",在属性设置窗口中就可以自由更改下载软件所使用的端口了。如下图17所示。
screen.width-300)this.width=screen.width-300 border=0 alt=click to open in new window>

如果你的电脑在bt下载时的速度远还没有达到平时的ftp下载速度,则可针对自己的接入方式参看上述的设置,或者在_blank">防火墙中打开bt下载软件使用的端口,要不就是内网用户把用来bt的电脑作一下映射,好让因特网上的用户也可直接与你联系。经过上面的一番设置后,你的机器在bt下载时是否也"狂奔如飞"了呢。愿大家都能享受到高速bt下载的乐趣。

()

相关文章:
© 2006   www.java-asp.net