为 Aria2 添加 Tracker 服务器

BitTorrent tracker
BitTorrent tracker(中文可称:BT服务器、tracker服务器等)是帮助BitTorrent协议在节点与节点之间做连接的服务器
BitTorrent客户端下载一开始就要连接到tracker,从tracker获得其他客户端IP地址后,才能连接到其他客户端下载。在传输过程中,也会一直与tracker通信,上传自己的信息,获取其它客户端的信息。
所以说想使用 Aria2 下载 BT 资源,Tracker 是必不可少的。当然 你会说,我从没添加过 Tracker 服务器, Aria2 也照样能用啊!那是因为 Aria2 也支持分布式的 DHT 网络,没有 Tracker 时就靠它了。
trackerslist
trackerslist 是一个开源项目,每天更新 Trackers list,比如下面的 best list
# https://github.com/ngosang/trackerslist/raw/master/trackers_best.txt

udp://tracker.coppersurfer.tk:6969/announce
http://tracker.internetwarriors.net:1337/announce
udp://tracker.opentrackr.org:1337/announce
udp://9.rarbg.to:2710/announce
udp://exodus.desync.com:6969/announce
udp://explodie.org:6969/announce
http://tracker1.itzmx.com:8080/announce
udp://thetracker.org:80/announce
udp://ipv4.tracker.harry.lu:80/announce
udp://denis.stalker.upeer.me:6969/announce
udp://tracker.torrent.eu.org:451/announce
udp://tracker.tiny-vps.com:6969/announce
udp://tracker.port443.xyz:6969/announce
udp://open.demonii.si:1337/announce
udp://bt.xxx-tracker.com:2710/announce
udp://retracker.lanta-net.ru:2710/announce
udp://open.stealth.si:80/announce
http://open.acgnxtracker.com:80/announce
udp://tracker.vanitycore.co:6969/announce
udp://tracker.iamhansen.xyz:2000/announce

只要将他们添加到 Aria2 的配置文件中,理论上能大幅提高 Aria2 下载 BT 的速度。
Aria2 的配置文件
参考 Aria2 的官方文档 ,https://aria2.github.io/manual/en/html/aria2c.html#cmdoption-bt-tracker
配置类似于:
bt-tracker=udp://tracker.coppersurfer.tk:6969/announce,http://tracker.internetwarriors.net:1337/announce,udp://tracker.opentrackr.org:1337/announce
添加到 Aria2 的配置文件,重启 Aria2 即可生效。
省力的方法
上面的教程很详细了,但每次都自己来修改肯定会累死人,你可以使用脚本替你完成上面的工作,可以参考小众软件的这篇文章下的评论:
https://www.appinn.com/ara2-add-trackers-list-for-speed-up/
记得重启 Aria2。
这样就完了吗?
懒人自然需要更省力的手段。Aria2 是支持 RPC 的,类似与 AriaNG 等 WEB UI 都是靠 RPC 和 Aria2 通信的,那么我们也是可以写个脚本用 RPC 来设置 Aria2 ,并且实时生效,无需重启 Aria2。
#!/bin/sh
#more trackers list, see https://github.com/ngosang/trackerslist
tracker_url='https://raw.githubusercontent.com/ngosang/trackerslist/master/trackers_all.txt'
path='http://10.10.10.5:6800/jsonrpc'
passwd='xxxxxx'
tracker=$(echo -n $(curl -s -L $tracker_url | sed 'N;s/\n//g') | tr ' ' ',')
[ -n "$tracker" ] && curl $path -d '{"jsonrpc":"2.0","method":"aria2.changeGlobalOption","id":"cron","params":["token:'$passwd'",{"bt-tracker":"'$tracker'"}]}'

在定时任务中定时执行上面的脚本就万事大吉了。定时任务不在本文的范畴里了蛤,Google 一下就有了。
修改 tracker_url、path 和 passwd 三个变量,脚本就可以为你工作了。

发表评论

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据