0%

centos7 使用OpenTracker自建高性能Tracker服务器

序言

参考

opentracker是一个BitTorrent伺服软件,是一个啤酒软件,其特点是快速性和低系统资源消耗。

目录

1 特点
2 所用技术
3 使用情况
4 外部链接
5 参考
特点
opentracker的速度比其他的伺服软件快很多,占用内存也更少,就连在嵌入式系统中都运行自如。程序的实例可以在集群中同时运行,因为不同实例间可以相互同步。opentracker同时支持HTTP协议和UDP协议,后者的负载仅为前者的一半[1]。同时,opentracker还支持IPv6[2]、gzip压缩和黑名单[3]。因为曾有人的IP地址暴露在伺服列表中而以侵害著作权被起诉[4],opentracker可以生成随机IP地址而避免以上情况。

所用技术
opentracker可以完全在内存中运行,这就是它速度快的原因。它完全由C语言写成,使用libowfat库管理网络连接。

使用情况
程序的作者运营着全球第二大的BitTorrent服务器denis.stalker.h3q.com,而全球最大的BitTorrent服务器海盗湾也在2007年底开始使用opentracker之前他们使用自己的Hypercube。挪威的挪威广播公司也用opentracker来发布自己的电视剧。
教程参考链接

以上摘自维基百科

内容

搭建环境

1
2
3
yum -y install epel-release
yum -y groupinstall "Development Tools"
yum -y install openssl-devel zlib-devel

下载相关文件编译

文件已经上传到了国内的github上这样,虽然速度不咋地,胜在稳定。

1
2
3
4
git clone https://github.com/Qifcn/OpenTracker.git
cd OpenTracker
tar -xzvf libowfat.tar.gz
tar -xzvf opentracker.tar.gz

编译

1
2
3
4
5
cd libowfat
make
cd ..
cd opentracker
make

按照步骤做,不用make install

二进制文件移动到/usr/bin:

1
cp opentracker /usr/bin

一个服务文件:

1
2
3
4
5
6
7
8
9
10
11
12
vim /usr/lib/systemd/system/opentracker.service

[Unit]
Description=opentracker server

[Service]
User=root
ExecStart=/usr/bin/opentracker -p 1337 -P 1337
Restart=on-abort

[Install]
WantedBy=multi-user.target

我这里监听的端口是1337,这个端口可以自行更改,并且opentracker支持同时监听多端口。
-p(小写p)指TCP端口,-P(大写P)指UDP端口。

设置开机启动并自启动

1
2
systemctl enable opentracker.service  
systemctl start opentracker.service

其他管理命令

1
2
3
systemctl status opentracker.service
systemctl stop opentracker.service
systemctl restart opentracker.service

制作种子的时候,我们添加Tracker服务器时,可以这么写:

http://你的服务器公网IP:1337/announce

或者:

udp://你的服务器公网IP:1337/announce

当然也可以同时添加http和udp,这个不受影响。

OpenTracker还有一个自带的统计功能:

http://你的服务器公网IP:1337/stats

更详细的统计信息访问:

http://你的服务器公网IP:1337/stats?mode=everything