p2p共享软件,电驴英文名eDonkey,eDonkey2000网络(ed2k Network)由MetaMachine公司的创始人Jed.McCaleb和Sam.Yagan在2000年创立,是一种档案分享网络,最初用于共享音乐、电影和软件。与多数文件共享网络一样,它是分布式的;文件基于点对点原理传输,而不是由中枢服务器提供。客户端程序连接到ed2k网络来共享文件。而ed2k服务器作为一个通讯中心,帮助用户在ed2k网络内查找文件。它的客户端和服务端可以工作于Windows、Macintosh、Linux、UNIX操作系统。任何人都可以作为服务器加入这个网络。由于服务器经常变化,客户端会经常更新它的服务器列表。ed2k的客户端为eDonkey2000(即MetaMachine公司自己开发的客户端,中文叫电驴,您可以参考上面的界面图),2005年,电驴败诉,被判罚向RIAA赔款3000万美元并且永久关闭。
一个完全免费且开放源代码的P2P软件。利用他的卓越特性,我们可以与全世界的网友共同分享资源,下载和发布最新的资源,充分享受自由共享的乐趣!
简介编辑本段回目录
电驴(eDonkey)是什么?
电驴是被称为“点对点”(p2p)的客户端软件-一个用来在因特网上交换数据的工具。 一个用户可以从其他用户那里得到文件,也可以把文件散发给其他的用户。
电驴和其他的点对点客户端软件的祖先是一个叫做“Napster”的mp3共享工具——尽管Napster只比电驴大几年,但是电驴 在技术上则超过了Napster。Napster使用它自己的中心服务器来把两个点连接起来,然而电驴有成百上千个这样的服务器——由单个的用户们来维持。这样的充当服务器的用户们仅需要运行一个小小的程序并共享出他们几KB的因特网连接,就可以为成百上千甚至更多的其它用户服务。在这个强大而分散的网络的支持下,电驴甚至可以经得起愤怒的好莱坞制片商们RIAA的司法攻击。因为某些原因,他们想要限制不经控制的信息流动……
当你在电驴上发布文件的时候,你实际连接的那个服务器得到文件的“身份”(hash)并把它写到一个清单里——如果文件被 一个以上的用户共享,服务器会意识到这一点——一个用户可以同时从所有的该文件的拥有者那里下载这个文件——你下载 9兆的“块”,整个文件的不同部分被加到一个“.part”文件里——该文件表示了你原来要下载的文件(因此它跟该文件有着 同样的大小)——当收到所有的部分后,这个.part文件被重命名为原来的文件并被移动到incoming文件夹。这样,你就可以 从不同的人那里当“块”下来——象从一个用户那里下载一样,但是速度却要快得多。
用户Z拥有整个的“文件1”——“abcedfgh”代表这个文件的分割开的“块”,这样,当用户Y从用户Z那里当“块f”的时候,用户 X和Y正在交换块g和a,——用户W此时并没有文件的任一部分,但是一当他完整地接到“块g”后,他会马上把它共享给其他用户—— 这样就保证了最快速的文件的分布。
当你想找到某个特定的文件的时候,你可以用搜索功能(你的客户端把你要搜索的文件的名字发送到你连上的那个服务器上,服务器会察看它的清单,当该文件可用的时候,它把该文件的特定的属性返回到客户端并告诉它拥有该文件的客户端机器“ID”。
这是一个告诉你网络的工作流程的示例性图表,你可以看见客户端是如何与服务器和其他客户端通信的——唯一一个被遗漏的连接是服务器之间的通信。
服务器清单是你的电驴目录下的一个文件,被称为"server.met"——这个文件包括了电驴服务器的IP和名字。当你连接到服务器,发送搜索请求 到你连接的那个服务器,以及,如果需要的话发送扩展搜索请求到别的服务器的时候要用到这个文件。在因特网上有一些永久保持更新的服务器清单, 其中之一可以在http://ed2k.2x4u.de/list.html找到。
大多数的服务器都是由象你一样的用户来操作的,大部分都是由ADSL动态IP来连接到因特网。这就是说,他们的IP(用来标识某个用户的 “因特网定位”的地址——每人都有IP)每24小时都要改变——比如说,在你的服务器清单上有一个IP为213.45.65.71的服务器,明天它可能 (大多数情况下)会变得完全不一样——你的客户端只知道在server.met中有的IP,因此它会找不到上面所说的那样的服务器了。 结论:你必须有规律地更新你的服务器列表——你可以手工点击上面描述的更新过的服务器列表中的链接,或者运行一个自动更新器, 你可以在"tools"(工具)部分找到,自动更新器会自动地从“更新过的服务器列表”里得到server.met。
你现在知道电驴是什么,文件的散布是怎么工作的,你怎么发送搜索请求,并且对服务器怎样工作也有了基本的了解——但是你还不知道 你会上传文件来保持网络的运转:这是电驴工作的基本原理(也是文件共享的概念):人人为我,我为人人!这也就是说: 其它的用户会从你的硬盘上当文件——就象你当他们的一样!共享文件是必需的,每个人都必须共享出文件,这样才能从网络中得到最多! 明显地,如果有些人认为他们应该对自己的硬盘吝啬一点(显而易见,在硬盘上有剩余空间是非常有用的)或者对上传的带宽 吝啬一点,因此把上传带宽限制到低于可能达到的值的话,整个网络都会受损——最大的可用下载速度等于最大上传速度之和 ——如果你不上传,你自己也会损失。所以,在你的硬盘上建立一个目录,把已经下载的文件放在这里并且共享此目录。
【刚进入中国时,被称作"电骡",后改为"电驴",建议读者点击链接查看一下电骡的释义,以增加理解】
eMule电骡起源编辑本段回目录
如今广为流传的基于ed2k的客户端为eMule,中文名称电骡,创始人为本名Hendrik.Breitkreuz(亨德里克.布雷特刘兹)的Merkur,2002年05月13日的黎明,他不满意当时的eDonkey2000客户端,并且坚信自己能做的更出色,于是着手开发。他凝聚了一批原本在其他领域有出色发挥的程序员在他的周围,eMule开源工程(eMule-project)就此诞生。他的目标是将eDonkey的优点及精华保留下来,并加入新的功能以及使图形界面变得更好。目前eMule的最新版本是0.49b,已经成为了全球最流行的开源p2p文件共享客户端。
电骡emule官方网站http://www.emule-project.net/
在电骡emule官方论坛提出你的功能请求和建议http://forum.emule-project.net/.
世界各地的优秀程序员利用eMule的源代码,设计开发了各种eMule的修改版即eMule-modifications,简称mod,他们对原版增加了一些特色功能,让eMule的世界丰富多彩起来。官方电骡eMule完全由几个志愿的程序员在业余时间开发和维护,形成了独特的电骡eMule文化,“eMule是完全免费的,它也决不包含广告软件、间谍和流氓软件。我们之所以创造eMule是为了快乐和知识,而不是为了金钱。”
如果你下载的eMule客户端里包含了广告、间谍和流氓软件,请不要使用,请到emule-project或emule-mods去确保下载正常的eMule客户端。因为一些人和商业集团利用emule修改版添加广告、间谍和流氓软件来实现恶意的和商业行为,污染破坏了eMule文化,任何利用eMule进行恶意和商业行为的个人和团体都将被eMule世界所摒弃。
了解更多emulemod版本,emule-mods:http://www.emule-mods.de/。
eMule表示什么?编辑本段回目录
eMule这个名称来源于一个自然界不存在的动物——“骡”,不知道什么原因他和驴子很相似。:-)
在2002年5月13日的黎明,Merkur对原始的eDonkey2000客户端感到不满,他坚信他能做的更好。然后他就那么去做了。你eDonkey不是叫电驴嘛,那好咱的就叫eMule——电骡,于是电骡出生了!谢天谢地,幸亏有了Merkur利用他业余时间创造出来的电骡,我们今天依然能够使用诞生于2000年的eDonkey2000网络(ed2k Network)!
让我们记住电骡的生日吧,2002年5月13日的黎明!它出生于德国,它的爸爸是个叫Merkur的家伙!:-)
注:Merkur原名Hendrik.Breitkreuz(亨德里克.布雷特刘兹)
电骡eMule的特点编辑本段回目录
1、客户端使用多个途径搜索下载的资料源,ED2K、来源交换、Kad共同组成一个可靠的网络结构。
2、Kad现在尚处开放测试阶段,在eMulev0.42及后续版本中,可以使用Kad。
3、eMule的排队机制和上传积分系统有助于激励人们共享并上传给他人资源,以使自己更容易、更快速地下载自己想要的资源。
4、eMule是完全免费的。官方版eMule也完全没有任何的广告软件。我们这么做是为了乐趣及知识,而不是为了金钱。
5、每个下载的文件都会自动检查是否损坏以确保文件的正确性。(FTP却不能保证精确复制)
6、智慧损坏控制有助于快速修复损坏的部分。
7、自动优先权及来源管理系统允许您一次下载许多个资源而无须监视它们。
8、预览功能允许您在下载完成之前查看您的视频文件。
9、eMule的Web服务特性和Web服务器允许您快速得从网络存取资料。
10、能在下载时间里类别以组织和管理文件。
11、寻找您想要的资源,eMule提供了一个大范围的搜索方式,包含了:服务器搜索(本地和全球)、基于Web搜索(Jigle和Filedonkey)及Kad网络(仍在测试)。
12、eMule还允许您使用非常复杂布林搜索使搜索更为灵活。
13、使用信息及好友系统,您能传送讯息到其他的客户端并可将他们加为您的好友。有好友上线的话,你就能在您的好友列表中看到他(她)。
14、使用内建的IRC客户端,您能和全世界其他的共享者聊天。
相关软件编辑本段回目录
视频教程编辑本段回目录
电驴ID问题
第一部分:确定自己是内网还是外网
内网和公网是两种Internet的接入方式
内网接入方式:上网的计算机得到的IP地址是Inetnet上的保留地址,保留地址有如下3种形式:
10.x.x.x
172.16.x.x至172.31.x.x
192.168.x.x
内网的计算机以NAT(网络地址转换)协议,通过一个公共的网关访问Internet。内网的计算机可向Internet上的其他计算机发送连接请求,但Internet上其他的计算机无法向内网的计算机发送连接请求。
内网用户大体分两种情况:
一种是通过路由功能上网。比如在公司,在宿舍或者在家里共享带路由功能的ADSL上网就是这种情况。
另外一种是通过服务器上网。比如部分校园网,以及部分电信运营商如某些地区的铁通宽带就是这种情况。这时就需要在服务器端用软件做端口映射。如果没有机会亲手设置服务器,需要联系你们的网管。
公网(外网)接入方式:上网的计算机得到的IP地址是Inetnet上的非保留地址。公网的计算机和Internet上的其他计算机可随意互相访问。例如:一台电脑用一根ADSL拨号连接到Internet就属于公网(外网)用户。
NAT:NAT(NetworkAddressTranslator)是网络地址转换,它实现内网的IP地址与公网的地址之间的相互转换,将大量的内网IP地址转换为一个或少量的公网IP地址,减少对公网IP地址的占用。NAT的最典型应用是:在一个局域网内,只需要一台计算机连接上Internet,就可以利用NAT共享Internet连接,使局域网内其他计算机也可以上网。使用NAT协议,局域网内的计算机可以访问Internet上的计算机,但Internet上的计算机无法访问局域网内的计算机。
第二部分:外网(公网)用户获取高ID的方法
外网(公网)用户一般都是通过ADSL单独拨号连接到Internet的。也就是所谓的一根ADSL宽带只供一台单独电脑使用。所以通常说来,如果你用的是Windows2000系统,一般只需要在系统上安装的防火墙(如:金山网镖,天网等)中,打开你在eMule中设置的相应的TCP和UDP端口就应该可以了。如果你所使用的是WindowsXP系统的话,除了要打开你系统上安装的防火墙之外,还需要在XP自带的防火墙中打开eMule中设置的相应的TCP和UDP端口应该就可
以实现了。
注:因为eMule在windows98以及windows98以前的版本都不太能够发挥出应有的功效(一般不推荐大家在windows98系统中使用eMule),所以本文中暂时不做介绍。
常见防火墙软件设置(制作中)
其实现在大家所使用的eMule版本(比如:0.43和0.44)都提供“自动打开WinXP防火墙中eMule相应端口的功能”。下面简单介绍一下:
依次点击eMule主界面当中的“选项”——“连接”,在“客户端口”中有“打开WinXP防火墙中的这些端口”一项。
点击察看附件内容
单击“打开WinXP防火墙中的这些端口”之后,WinXP就会自动打开eMule设置的相应端口!然后点击“应用”就可以生效了。比一般的“端口设置”要简单的多。不过这样只能是在eMule的本次运行当中生效,并不能保证以后都自动打开相应的端口。
不过我们可以在“扩展设置”里面设置相应的选项,使得“当启动/推出eMule时,打开/关闭WinXP防火墙端口”成为可能!以后只要eMule一起动,WinXP就会自动打开相应的端口;当eMule关闭时,WinXP则会自动关闭打开的相应端口。
点击察看附件内容
如果你的WinXP已经升级到了SP2。上面介绍的eMule的相关设置是一样都可以实现的。只不过因为WinXP_SP2的防火墙安全性更高一些,会在系统防火墙打开相应端口之前“询问”一下,只要点击“解除阻止”就可以了。
第三部分:内网用户获取高ID的方法——如何得到内网IP地址和路由器地址
在进行“端口映射”的时候,我需要先知道自己机子内网的IP地址,如果你是通过路由器上网的话,还需要知道路由器的地址。下面我们就来简单介绍一下如何得到自己机子的内网IP地址和路由器地址。(以windows2000为例,在XP下同样适用!)
1。依次点击“开始”——“运行”,在“运行”对话框中键入“cmd”(大小写均可)会弹出“命令提示符”窗口。
点击察看附件内容
2。在命令行里输入指令“ipconfig”会出现如下图所示的列表:
点击察看附件内容
其中:IPAddress——就是你的内网地址!比如我的就是:192.168.1.45
SubnetMask——是你的子网掩码!如图:255.255.255.0
DefaultGateway——就是你的默认网关,如果你是通过路由器上网,那么这个就是你的路由器地址!
(注:因为我和同学是共享上网,我们的ADSL并没有开启路由功能!因此我是通过他的电脑提供的“连接共享”连接到网络的!因此在我的“默认网关”一列显示的就是他电脑的IP地址!)
以下“注意事项”节选自MMMXXX的“如何得到路由器地址和内网IP”并作了适当的修改!
提醒注意个别路由器原厂定义的IP地址:
1.DLINK出厂定义的路由器地址是192.168.0.1
2.Linksys出厂定义的路由器地址是192.168.1.1
3.3com出厂定义的路由器地址是192.168.2.1
4.微软出厂定义的路由器地址是192.168.2.1
5.Netgear出厂定义的路由器地址是192.168.1.1
6.asus出厂定义的路由器地址是192.168.1.1
如果是带有“路由功能”的ADSLModem!它的IP地址就有不一样了!不过一般都会在各自的说明书中有相应的说明!比如我们用的“华为MT800”默认的IP地址就是“192.168.1.1”。这个会因厂家的不同而有所差别。
在得到ADSLModem或是路由器的地址后,就可以在IE的地址栏里输入Http://相应的IP地址来访问相应的“管理设置界面”!
第四部分:Sygate的端口映射图解教程(参考MMMXXX)
本主题说明以“Sygate4.5_850简体中文版”为主
1。首先打开Sygate,显示其主界面
2。然后点击“高级”显示更多设置选项
3。点击“访问规则”出现“访问规则编辑器”
4。在“访问规则编辑器”中点击“增加”出现“添加新规则”窗口
5。选择默认的“添加一条新规则”之后出现“访问规则编辑器”的完整窗口
6。点击左边“当前规则”中的“增加”添加新的规则。在右边的“初始连接”当中添加相应的选项:
方向:选择“IN”
协议:选择“TCP”
客户端IP:填写eMule用户的内网IP地址(如:我的内网IP地址是192.168.1.45)
目的端口和客户端口:都填写你在eMule当中设置的相应TCP端口(这里填写的是默认的4662)
最大空闲时间:保持默认
7。添加完TCP端口之后再添加UDP端口。点击左边“当前规则”中的“增加”添加新的规则。在右边的“初始连接”当中添加相应的选项:
方向:选择“IN”
协议:选择“UDP”
客户端IP:填写eMule用户的内网IP地址(如:我的内网IP地址是192.168.1.45)
目的端口和客户端口:都填写你在eMule当中设置的相应TCP端口(这里填写的是默认的4672)
最大空闲时间:保持默认
8。TCP和UDP都添加完成之后,点击“确定”会出现一个“Sygate信息”窗口
9。点击“是”重新启动Sygate服务就可以生效了。至此Sygate的端口映射也设置完成了。
第五部分:Wingate的端口映射图解教程(参考代序)
本主题说明以“Wingate5.2.3版本”为主
首先,点击左下角的“Services”进入Wingate的“Service”设置页面:
点击察看附件内容
然后在左侧空白地方右击出现“Newservice”菜单,选择“TCPMappingService”:
在默认的“General”页面中设置如下:
“Service”和“Descripti”都是对服务的描述。可以保持默认,也可以自定义。我这里改为:eMuleTCP
“Startoptions”里面的“Service”保持默认就可以。下面的“Service”后面需要填写“主机被映射到的端口”。我这里填写的是eMule默认的4662。
“DefaultMapping”下面的选项要打勾。然后在“Server”后面填写的是内网机器的IP地址。我这里填写的是我在内网的IP:192.168.0.45。“on”后面填写的是“被映射的内网机器的端口”。和上面“Service”后面填写的要保持一致。
全部设置完毕之后,务必记住要点击右下角的“apply”保存次页面的设置。
然后在“Bindings”页面当中选中“allowconnectionscominginonanyint”表示接受来自Internet的连接。设置完成之后,别忘了要点右下角的“apply”保存次页面的设置。
在“Sessions”页面当中把“Sessionstimeout”前面的“对勾”去掉。设置完毕之后,务必记住要点击右下角的“apply”保存次页面的设置。
在“Plicies”页面当中点击右下角的“add”出现相关的属性界面,在默认的“Recipient”页面当中选择“Everyone”和“Usermaybeunkuown”。这样设置的含义是:允许任何eMule服务器访问此端口。然后别忘记点“OK”保存设置。
设置完“Recipient”退回到“Plicies”之后,不要忘了点击“Apply”保存设置,然后点“OK”退出。
[B]权限往往是Wingate最难处理的环节,我这里假设的情况是服务器的Wingate允许任何互联网IP连接,这样就保证了无论内网联接什么eMule服务器,对方eMule服务器(例如chineseedonkeyserverNo.1)访问回局域网主机时,都能得到正确的映射。权限设置的差异视用户的具体使用情况而定。
最后对以上的修改进行保存。点击上面的“Save”就可以了。
电驴 |
至此Wingate的端口映射就设置完成了。内网的骡连接后就可以得到HighID,主机的WingateMonitor上可以清楚地看到正在进行映射的对方eMule服务器。