看了一些DHT网络相关的东西

因为疫情的影响,今年端午一直没有出门,闲着无事看了一些DHT网络相关的东西。不求甚解,只图个好玩。

在说DHT网络之前,要先说P2P网络(Peer-To-Peer),P2P又叫做对等网络互联技术。在P2P网络中,各个节点都是平级的,没有客户端和服务端的概念。

BitTorrent是基于P2P网络的一种文件传输协议,运转原理:是:由中心化的Tracker服务器保存文件信息,当需要下载文件时候,由下载者向中心服务器询问文件在P2P网络中的位置信息(哪个IP拥有这个文件的哪些部分),然后下载机器通过P2P网络和其他机器进行文件传输。(这就是我们平时说的“种子”)。

上面提到的通信方式依赖于中心Tracker服务器,如果Tracker服务器存在网络问题或者宕机,会给整个BitTorrent带来毁灭性的打击(无法获取到文件在P2P网络中的信息,无法下载和交换文件),于是就诞生了DHT协议。

DHT的全称叫做分布式哈希表,通过定义infohash和nodehash、使用nodeid xor infohash来做距离判断。在发布文件的时候向infohash距离最近的Node广播文件(infohash)的信息,在在查找资源时使用同样的方法对距离最近的N个Node查找文件的信息。

原理说得差不多了,在玩儿的时候看到了一些好玩的东西在这里记录一下:

1. 基于DHT网络的爬虫

  1. https://github.com/shiyanhui/dht
  2. https://github.com/boramalper/magnetico

magnetico 自带了WebUI检索功能,推荐使用。

2. 1千万磁力链接

magnetico 使用SQLLite作为存储,在Issue中有人分享了自己的DHT爬虫数据,最多的DHT爬虫数据竟然有一千万条记录。

下载地址可见:https://tnt.maiti.info/dhtd/

3. 热心网友整理的Tracker

https://github.com/XIU2/TrackersListCollection

如果使用aria2的话还有一个小的脚本来更新aria2.conf的tracker列表

bash <(curl -fsSL git.io/tracker.sh) "/root/.aria2/aria2.conf"

如果文件不存在的话需要先创建文件

4. 一些磁力链接站

通过Google搜索磁力链接站可以获取到DHT网络的资源文件。

  • 通过搜索一些类似Final Cut Pro的关键词可以获得FinalCutPro的破解版,通过P2P网络下载,实测速度比百度网盘要块很多。
  • 通过搜索一些你懂的关键字,可以获得一些热心老司机整理的精彩合集,因为资源热门,下载起来也是十分方便。

最后:

因为一直有一点DataHoarder,如果有时间的话可以考虑改造一下爬虫,每天下载热度TopN的文件上传到不限流量的GoogleDriver里。(考虑到目前没有足够带宽的机器和时间,可能要很久很久之后才会做这个事情了

《看了一些DHT网络相关的东西》上有1条评论

admin进行回复 取消回复

电子邮件地址不会被公开。