446 字
2 分钟
2024-08-14
在 Debian 系统下使用 OpenTracker 自建 BitTorrent Tracker 服务器
加载中...
加载中...

介绍#

BitTorrent Tracker 可以看作是“下载人员名单管理员”:它跟踪哪些节点正在下载同一文件,并把这些节点信息告知每个下载者,以便节点之间更快地互相连接。OpenTracker 性能优异,适合高并发场景。

安装#

安装所需依赖:

Terminal window
sudo apt-get update
sudo apt-get install -y unzip wget gcc zlib1g zlib1g-dev libowfat-dev make

下载并解压 OpenTracker 源码(示例):

Terminal window
wget https://github.com/1265578519/OpenTracker/archive/master.zip -O /root/OpenTracker.zip
unzip /root/OpenTracker.zip -d /root
mv /root/OpenTracker-master /home/OpenTracker
cd /home/OpenTracker/opentracker

如果编译时报找不到 libowfat 的头文件或库,请修改 Makefile 中关于 LIBOWFAT 的目录指向(默认系统路径通常是 /usr):

示例(Makefile 中可能存在的行):

PREFIX?=/usr
LIBOWFAT_HEADERS=$(PREFIX)/include/libowfat
LIBOWFAT_LIBRARY=$(PREFIX)/lib

如果你看到原始仓库使用的是 /opt/diet 等路径,将其替换为 /usr 或正确的系统安装路径。

可选:在 trackerlogic.h 中可以调整客户端上报和超时相关的宏(默认值一般适用):

/* 示例(文件:trackerlogic.h) */
#define OT_CLIENT_TIMEOUT_SEND (60*15)
#define OT_CLIENT_REQUEST_INTERVAL (60*30)
#define OT_CLIENT_REQUEST_VARIATION (60*6)
#define OT_PEER_TIMEOUT 45

完成修改后编译:

Terminal window
make

启动与使用#

启动服务(后台运行示例):

Terminal window
./opentracker -f opentracker.conf.sample -p 6969 &

在 BT 客户端中添加你的 Tracker 地址(若使用 80/443 或 CDN,按需加端口):

http://<ip 或 域名>:6969/announce

OpenTracker 提供统计页面,示例:

http://<ip 或 域名>:6969/stats
http://<ip 或 域名>:6969/stats?mode=everything
http://<ip 或 域名>:6969/stats?mode=top100

开机自启(systemd 示例)#

如果希望 OpenTracker 随系统启动,可在 /etc/systemd/system 下创建 opentracker.service

[Unit]
Description=Opentracker Service
After=network.target
[Service]
ExecStart=/home/OpenTracker/opentracker/opentracker -f /home/OpenTracker/opentracker/opentracker.conf.sample -p 6969
Restart=always
[Install]
WantedBy=multi-user.target

保存后启用并启动:

Terminal window
systemctl daemon-reload
systemctl enable opentracker
systemctl start opentracker

我提供的 Tracker#

你可以使用我提供的 Tracker 地址(示例):

https://tracker.zhuqiy.com:443/announce

参考#

  1. 一个 Linux VPS 上使用 C 实现的开源高性能 BitTorrent Tracker(OpenTracker 中文教程):https://bbs.itzmx.com/thread-18214-1-1.html
  2. 关于部分 HTTPS Tracker 获取不到真实 IP 的讨论:https://bbs.itzmx.com/forum.php?mod=viewthread&tid=102765&highlight=opentracker
在 Debian 系统下使用 OpenTracker 自建 BitTorrent Tracker 服务器
https://www.zhuqiy.com/posts/debian-opentracker/
作者
ZHUQIY
发布于
2024-08-14
许可协议
CC BY-NC-SA 4.0