天天看点

关于 mldonkey 的一些讨论和设置

http://www.verycd.com/groups/linuxleague/736844.topic  

        MLDonkey 是什么? MLDonkey 是一个开源的,免费的多协议P2P服务器程序。MLDonkey最早只支持eDonkey2000协议(ED2K),后来逐步加入了 Kademlia,Overnet,BitTorrent,DirectConnect,FileTP,FastTrack, SoulSeek, Gnutella,Gnutella2,OpenNap,Http,Ftp等协议的支持,并能在Linux、Solaris、Mac OS X、Windows 以及 MorphOS下运行。它使用OCaml语言编写,同时有些部分使用了一些C语言以及汇编语言的代码,从而保证了它的高效能。

  MLDonkey官方只提供了telnet和html两种接口。其实基于web浏览器的html管理方式是用的最多的图形接口,用它可以方便的在网页上管理mldonkey。此外还有一些以telnet为基础开发的图形前端,比如KMLdonkey和Sancho。

  作为ED2K客户端,mldonkey的最大特色就是支持同时连接多服务器(emule,amule等都只能连接一个ed2k服务器),大大提高了可用源的数量。

   优点:实在太强大了,支持各种下载协议,包括 ED2K,Kademlia,Overnet,BitTorrent,DirectConnect,FileTP,FastTrack, SoulSeek, Gnutella,Gnutella2,OpenNap,Http,Ftp,而且在继续扩充。

  缺点:设置比较复杂,而且没有官方的中文文档。

关联浏览器:

1. firefox:

安装一个XPI插件:http://www.informatik.uni-oldenburg.de/~dyna/mldonkey/xpi/mldonkey_protocol_handler-2.5.xpi

2. opera:

可以参考http://forum.ubuntu.org.cn/viewtopic.php?p=504789

设置:

运行mlnet,然后打开http://127.0.0.1:4080(这是mldonkey 提供的web ui的登录地址),找到并点击options,为了方便配置可以让mldonkey一次性列出所有选项,这使得我们避免了在不同的选项卡中切换,在子页面 中找到all选项卡点击。

1.加大缓存大小,以保护硬盘:

浏览器的查找功能找到下列选项并设置(->左边为选项名称,右边为值):

buffer_writes->true 打开缓存写入模式

buffer_writes_delay->30.或者更高,它表示写缓存的延时单位秒

buffer_writes_threshold 4000或更高,它表示缓存,到了XXXX KB后强制写入

client_buffer_size 50 000 000或者更高,它表示缓存的总大小,单位字节

2.设置一个客户端昵称(据说是登录VeryCD的服务器需要校验,实际上没有多大效果。)

找到client_name,改为[CHN][VeryCD]xxxx的形式。

3.打开想要的协议:

ED2K <==> enable_donkey->true

BT <==> enable_bittorrent->true

DIRECTCONNECT <==> enable_directconnect -> true(不常用可关闭)

FASTTRACK <==> enable_fasttrack -> true (貌似已经停用了)

FTP/HTTP <==> enable_fileTP -> true

KAD <==> enable_kademlia -> true

OVERNET <==> enable_overnet -> true

SOULSEEK <==> enable_soulseek -> true (不常用可关闭)

4.带宽设置

max_concurrent_downloads -> 50或者更高 它表示同时下载文件数目

max_hard_download_rate -> 0 它表示下载速度限制,0表示不限制

max_hard_upload_rate -> 30或者更高, 它表示上传限制, 0表示不限制

max_indirect_connections -> 50或者70,它表示客户端允许的外来连接数为最大打开连接的百分比

max_opened_connections -> 924,它表示客户端最大打开连接,924为最大值

5.ED2K微调

ED2K-dynamic_upload_lifetime -> true

ED2K-force_client_high_id -> true 它表示强制客户端为高ID

ED2K-force_high_id -> true 它表示强制自己为高ID(当高ID可用的时候)

ED2K-good_client_rank -> 800 (数值自便),它表示需要维持连接的队列长度,这里表示的是队列800以内的连接会维持,大于800将断开,等待下一次访问

ED2K-max_connected_servers -> 40 它表示最大服务器的数目。

6.KAD微调

下载http://www.emule-inside.net/nodes.dat到 .mldonkey下,在mldonkey的命令输入框里,输入kad_load nodes.dat

加载kad的节点。

7.OVERNAT微调

下载http://forum.ubuntu.org.cn/viewtopic.php?f=73&p=1147130 , 4楼的附件,更改扩展名为dat,放到.mldonkey里,在mldonkey 命令输入框里,输入ov_load contact.dat

加载overnet节点。

8.路径与其他

临时文件夹:

设置临时文件夹有两种方法:符号链接方式和选项配置方式

i.比较暴力的符号链接方式:

终端下进入.mldonkey文件夹,使用ln -s 源文件 目标文件,例如,ln -s /media/WIND/temp ~/.mldonkey/temp,如果目标已存在加上-f选项表示覆盖。

ii.比较温柔的选项配置方式:

在选项里面找到temp_directory 设置路径即可。

目标文件夹:

有两种方法 :符号链接方式和选项配置方式。

i.符号链接方式:

.mldonkey下,ln -sf 目标文件夹 incoming/files

ii.选项配置方式:

options -> shares下,点击add share,在对话框里,添上0 目标文件夹 incoming_files(共享文件夹设置类似,在此不予多说了。)

共享文件扫描周期:

share_scan_interval -> 240 或者更高 , 它表示重新扫描共享文件,所需要间隔的时间,单位分。

还有incoming目录的问题

mldonkdy的默认下载目录是: ~/.mldonkey/incoming

注:“~”表示用户所在的文件夹,比如我的用户名是kpeng,

       我的incoming完整路径即为:/home/kpeng/.mldonkey/incoming

      希望向我这样菜的能理解这一点。

而且还是隐藏的(不知道这是为什么,下载了文件还不让用户看到)

可以修改~/.mldonkey/downloads.ini文件,来更改默认下载目录

用文本编辑器打开,

     $gedit ~/.mldonkey/downloads.ini

找到

        shared_directories = [           

        {     dirname = shared             

        strategy = all_files                   

        priority = 0                               

        };                                             

        {     dirname = "incoming/files"

        strategy = incoming_files         

        priority = 0                               

        };                                             

        {     dirname = "incoming/directories"

        strategy = incoming_directories

        priority = 0                               

        };]                         

自己的问题还有两个,一个是端口映射没有设置好,另外就是ID没有显示是H还是L,费解,不过速度没的说,Linux每个软件都值得研究半天,简单专注