磁力引擎分享篇
感觉可能有些人会好奇:什么是磁力链接(Magnet URI scheme):类似下面这样以“magnet:?xt=urn:btih:”开头的字符串!仅仅是一个字符串,而不必像BT那样非得有.torrent的种子文件,传播方便!对于“种子”想必大家应该有所了解,就不多做介绍!
磁力链接是通过不同文件内容Hash结果生成一个纯文本的“数字指纹”,来识别文件的,而不是基于文件的位置或者名称。磁力链接这个“数字指纹”可以被任何人从任何文件上生成,这也就注定了磁力链接不需要任何“中心机构”的支持(例如:BT Tracker服务器),且识别准确度极高。“磁力链接”是通过DHT网络来索引需要下载的文件的,因此在某些环境下可能出现“获取磁力链接信息”时间较长,或者获取失败的问题。
DHT网络
DHT全称叫分布式哈希表(Distributed Hash Table),是一种分布式存储方法:在不需要服务器的情况下,每个客户端负责一个小范围的路由,并负责存储一小部分数据,从而实现整个DHT网络的寻址和存储。
通过检测DHT网络中的数据包就可以获得其他客户端发来的“磁力链接”,通过这些磁力链接下载相应的种子文件分析获取种子文件的文件资源名.
DHT中请求有ping, find_node, get_peers, announce_peer四种
万方知识库:基于路由注入的快速DHT网络资源发现方法
关于生成发布等DHT知识的“搜索关键词”:①去中心化网络DHT介绍②[C#搜片神器] 之P2P中DHT网络爬虫原理DHT开源引擎代码:github.com/alanyang/dhtspider
屌丝搜:www.diaosisou.cc
种子搜:zhongzimei.com
种子搜:www.zhongzi.so
磁力搜:www.cilisou.org
种子帝:zongzidi.com
77DHT:www.77dht.cn
爱爱磁力:aiaicili.com
搜索番: www.102436.com
听说长的好看的都关注了天才疯子~
怎么搜索磁力链接
可能有些人会问,不是有专门的磁力搜索网站吗,何必用通用搜索引擎来找磁力链接呢?其实使用通用搜索引擎来找磁力链接也有不少好处:
(1).页面简洁,干扰的广告少,很多时候在搜索结果的摘要上就可以看到完整的磁力链接,因此不用再次点击搜索结果中的网页链接。
(2).百度、搜狗此类通用搜索引擎搜索到的磁力链接下载速度应该会快一些。
专业的磁力搜索也有不少缺点:
(1). 广告多,特别是弹窗广告,严重影响人们的使用体验。
(2). 网站本身不稳定,经常无法访问。
(3).部分网站的搜索结果排名不合理
众所周知,BT下载速度不够稳定,当中断时则无法完整下载。但是,这还不是最严重的。
从2009年开始,BT下载遭遇到了“更大的困难”——很多的BT服务器被关,不仅很多种子文件无法找到,BT Tracker服务器也断开解析工作,这就使得BT下载成为很大的难题。
磁力链接很好地解决了这个问题。磁力链接的问世与大行其道,标志着BT 1.0时代已经过去,BT 2.0 时代已经到来。
深刻理解磁力链接
简单地说,磁力链接是一种特殊链肆滚接,但是它与传统基于文件的位置或名称的普通链接(如https://xxx)不一样,它只是通过不同文件内容的Hash结果生成一个纯文本的“数字指纹”,并用它来识别文件。
它类似于生活消费品包装上常见的条码,不同的是这个“数字指纹”可以被任何人从任何文件上生成,这也就注定了磁力链接不需要任何“中心机构”的支持(例如:BT Tracker服务器),且识别准确度极高。
因此任何人都可以生成一个Magnet 链接裂枣余并确保通过该链接下载的文件准确无误。
在传统的BT下载方式中让各个下载者之间相互联系,有2种途径:
1、通过连接BT种子中记录的BT Tracker服务器,获取下载者列表
2、利用BT种子中记录的“数字指纹”通过DHT网络进行搜索,获取下载者列表
(不过现实是,存活的BT Tracker服务器越来越少。而BT种子文件也需要服务器保存。)
我们假设“BT Tracker服务器连接不上了,BT种子文件服务器也被干掉了。。”
那么显而易见的是第1种途径完全走不通,第2种途径只能帮你“寻找”,却没办法知道你在寻找什么岩乱。
“磁力链接”的主要作用就是把“数字指纹”告诉DHT网络,你需要寻找什么。