先来普及一下什么是BT Tracker服务器(引自维基百科解释):
BitTorrent tracker(中文可称:BT服务器、tracker服务器等)是帮助BitTorrent协议在节点与节点之间做连接的服务器。
BitTorrent客户端下载一开始就要连接到tracker,从tracker获得其他客户端IP地址后,才能连接到其他客户端下载。在传输过程中,也会一直与tracker通信,上传自己的信息,获取其它客户端的信息。
一般BitTorrent客户端可以手动添加tracker。tracker也会提供很多端口。
由于tracker对BT下载起到客户端协调和调控的重要作用,所以一旦被封锁会严重影响BT下载,如2009年12月,某神秘不能说的组织对BTchina一系列的tracker进行打击,因此也促使新BT客户端支持DHT网络实现无中心tracker,分布式资源分享的影响。
知道BT下载原理了,就会明白如果Aria2不能获取到有效BT Tracker服务器就无法和其它正在下载该文件的用户建立通讯共享下载分享文件,那么今天要分享的这个这脚本就是自动获取更新最新可以的BT Tracker服务器列表,帮助引导aria2程序成功链接到BT Tracker服务器;
再来谈谈公网IP对BT下载速度的影响,在国内绝大部分个人用户是没有公网ip的,都是内网ip;听说有公网ip能够显著改善BT下载速度,这个我在远程VPS上测试过,确实速度很猛下载很快,除非很冷门没几个人在分享;
正式开始说重点聊aria2自动更新BT Tracker服务器列表脚本:
假设:
Aria2安装路径为:
/root/aria2
Aria2配置文件路径:
/root/.aria2/aria2.conf
首先关停aria2服务
创建Aria2 bt-tracker列表更新脚本
vim /root/trackers-list-aria2.sh
内容如下:
#!/bin/bash
/usr/sbin/service aria2 stop
list=`wget -qO- https://raw.githubusercontent.com/ngosang/trackerslist/master/trackers_all.txt|awk NF|sed ":a;N;s/\n/,/g;ta"`
if [ -z "`grep "bt-tracker" /root/.aria2/aria2.conf`" ]; then
sed -i '$a bt-tracker='${list} /root/.aria2/aria2.conf
echo add......
else
sed -i "s@bt-tracker.*@bt-tracker=$list@g" /root/.aria2/aria2.conf
echo update......
fi
授权脚本
chmod +x /root/trackers-list-aria2.sh
然后运行这个脚本
此时启动ari2吧,BT Tracker最新可以服务器地址列表已经集成到了aria2中,试试下载BT效果如何