TLDR: Transmission 在家庭网络环境下是可用的,只是 IPv6 的资源太少导致速度较慢。
背景
- BT 下载速度极慢,大约 5KB,甚至经常看到显示 0KB
- 端口检测显示:
IPv4: Closed
IPv6: Error
- Transmission 直接运行在主机上,没有使用 Docker
- 国内电信运营商,不提供公网 IPv4 (CGNAT),只有公网 IPv6(确认可以通过 IPv6 地址从外网 SSH 访问家庭内部服务器)
- 另外用的不是 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 服务,大宽带(高上传),大流量。