TOC

Transmission 下载速度太慢的问题排查

TLDR: Transmission 在家庭网络环境下是可用的,只是 IPv6 的资源太少导致速度较慢。

背景

  1. BT 下载速度极慢,大约 5KB,甚至经常看到显示 0KB
  2. 端口检测显示:
IPv4: Closed
IPv6: Error
  1. Transmission 直接运行在主机上,没有使用 Docker
  2. 国内电信运营商,不提供公网 IPv4 (CGNAT),只有公网 IPv6(确认可以通过 IPv6 地址从外网 SSH 访问家庭内部服务器)
  3. 另外用的不是 51413 端口,是自动选择的一个随机端口

排查过程

确认网络端口监听情况

-> % ss -lnptu | grep 52030
udp   UNCONN 0      0                                         0.0.0.0:52030      0.0.0.0:*    users:(("transmission-gt",pid=95205,fd=16))
udp   UNCONN 0      0         [2409:8a4d:c36:cc90:6726:cd06:8dd1:a50]:52030         [::]:*    users:(("transmission-gt",pid=95205,fd=17))
tcp   LISTEN 0      4096                                      0.0.0.0:52030      0.0.0.0:*    users:(("transmission-gt",pid=95205,fd=14))
tcp   LISTEN 0      4096      [2409:8a4d:c36:cc90:6726:cd06:8dd1:a50]:52030         [::]:*    users:(("transmission-gt",pid=95205,fd=15))
  • Transmission 已正常监听 IPv6 TCP
  • Transmission 已正常监听 IPv6 UDP
  • DHT IPv6 已启用
  • Transmission 本身无异常

Transmission 配置检查

-> % grep bind ~/.config/transmission-daemon/settings.json
grep: /home/catroll/.config/transmission-daemon/settings.json: 没有那个文件或目录

-> % find ~/.config | grep transmi
/home/catroll/.config/transmission
/home/catroll/.config/transmission/queue.json
/home/catroll/.config/transmission/dht.dat
/home/catroll/.config/transmission/blocklists
/home/catroll/.config/transmission/resume
/home/catroll/.config/transmission/resume/41b63ba2712e7c235773322064adb802e9092444.resume
/home/catroll/.config/transmission/bandwidth-groups.json
/home/catroll/.config/transmission/settings.json
/home/catroll/.config/transmission/stats.json
/home/catroll/.config/transmission/torrents
/home/catroll/.config/transmission/torrents/41b63ba2712e7c235773322064adb802e9092444.torrent

-> % grep bind ~/.config/transmission/settings.json
    "bind-address-ipv4": "",
    "bind-address-ipv6": "",
    "rpc-bind-address": "0.0.0.0",
  • Transmission 未禁用 IPv6
  • 可自动绑定 IPv6 地址

系统 IPv6 检查

-> % sysctl net.ipv6.conf.all.disable_ipv6
net.ipv6.conf.all.disable_ipv6 = 0

系统 IPv6 已启用,没有 Disable。

防火墙检查

-> % sudo ufw status verbose
[sudo: authenticate] Password:
状态:不活动

本机无 UFW 阻挡。

核心验证:IPv6 外网连接测试

-> % nc -6 -vz 2409:8a4d:c36:cc90:6726:cd06:8dd1:a50 52030
Connection to 2409:8a4d:c36:cc90:6726:cd06:8dd1:a50 52030 port [tcp/*] succeeded!

这意味着:

  • IPv6 已真正 Open
  • Transmission UI 的 “IPv6 Error” 属于假阳性
  • 不影响真实 BT 通信

为什么 UI 仍显示 IPv6 Error

说明 Transmission 的端口检测机制存在问题,可能原因:

  • 仅支持 IPv4 检测
  • IPv6 检测逻辑老旧
  • GTK 客户端实现问题
  • 第三方检测服务器不支持 IPv6
  • 仅检测 TCP 不检测完整 BT 协议

下载 Ubuntu 镜像测试

wget https://releases.ubuntu.com/26.04/ubuntu-26.04-desktop-amd64.iso.torrent

结果发现下载速度很快。

Ubuntu 官方 torrent seed 数极多,IPv6 支持完善,高质量 peer 多。
说明 Transmission 与 IPv6 网络本身没有问题,问题在于资源 peer 质量与数量不足。

具体底层原理需要整理确认,但是这个认知应该没有问题:依据 BT 的特性,如果没有无法从外网访问本机,下载效果就会受到很大影响,尤其是冷门资源受影响就更加严重。
BT 网络仍然以 IPv4 为主,IPv4 peer 无法主动连接本机(被 NAT 阻断),导致可访问 peer 数量大幅减少。

Seedbox 概念

本质是部署在公网机房中的 BT 下载服务器

BT/PT 网络
    ↓
Seedbox 下载
    ↓
SFTP/WebDAV/rclone
    ↓
本地同步

核心价值:

  • 公网 IPv4
  • 高带宽
  • 长时间在线
  • 更好的 PT Ratio

国内云服务厂商流量费用高、P2P 风控严格、QoS 限速、BT 不友好、上传带宽小,不适合作为长期 Seedbox。
海外 VPS,甚至可以购买专业 Seedbox 服务,大宽带(高上传),大流量。

如果你有魔法,你可以看到一个评论框~