我正在尝试创建一个 torrent 来与家人分享大量照片,但无法上传。作为概念验证,我首先尝试播种并将文件下载到我自己的电脑上。以下是我尝试的方法:
在 ~/torrent_upload 中:
ctorrent -t -u "udp://tracker.coppersurfer.tk:6969/announce" -s example.torrent ./data.zip
cp ./example.torrent ../torrent_download/example.torrent
ctorrent ./example.torrent
在 ~/torrent_download 中:
ctorrent ./example.torrent
输出如下:
对于 torrent_upload:
META INFO
Announce: udp://tracker.coppersurfer.tk:6969/announce
Created On: Thu Jan 12 19:40:46 2017
Piece length: 262144
Created with: Enhanced-CTorrent/dnh3.3.2
FILES INFO
<1> ./2016_11_05.zip [186422111]
Total: 177 MB
warn, couldn't set bit field refer file "example.torrent.bf": No such file or directory
This is normal if you are seeding.
Listening on 0.0.0.0:2706
Press 'h' or '?' for help (display/control client options).
- 0/0/1 [1/712/1] 0MB,0MB | 0,0K/s | 0,0K E:0,0 Connecting
Checking completed.
FILES INFO
<1> ./2016_11_05.zip [186422111] 712/712 (100%)
Total: 177 MB
Seed for others 72 hours
\ 0/0/1 [712/712/712] 0MB,0MB | 0,0K/s | 0,0K E:0,0 Connecting
最后一行留在Connecting
对于 torrent_download:
META INFO
Announce: udp://tracker.coppersurfer.tk:6969/announce
Created On: Thu Jan 12 19:40:46 2017
Piece length: 262144
Created with: Enhanced-CTorrent/dnh3.3.2
FILES INFO
<1> ./2016_11_05.zip [186422111]
Total: 177 MB
Creating file "./2016_11_05.zip"
Listening on 0.0.0.0:2705
Press 'h' or '?' for help (display/control client options).
/ 0/0/1 [0/712/0] 0MB,0MB | 0,0K/s | 0,0K E:0,0 Connecting
最后一行仍为Connecting
。以口头模式运行 ctorrents 并没有真正添加任何有用的信息。我只看到类似于以下内容的重复行:
1484220255 Cache: 0K/16M Hits: 0 Miss: 0 0% Pre: 0/0
/ 0/0/1 [712/712/712] 0MB,0MB | 0,0K/s | 0,0K E:0,0 Connecting
1484220256 Cache: 0K/16M Hits: 0 Miss: 0 0% Pre: 0/0
- 0/0/1 [712/712/712] 0MB,0MB | 0,0K/s | 0,0K E:0,0 Connecting
在这两个过程上。
知道我遗漏了什么吗?读到一些人说这是端口问题,我需要打开路由器上的端口以允许上传,尽管似乎不是每个人都同意这一点。我尝试打开上传 ctorrent 正在监听的端口 2706,但这并没有改变任何东西。
其他人则将责任归咎于跟踪器网站。我不知道如何验证我使用的跟踪器是否有效,但我尝试了几个,结果都一样。
我认为跟踪器站点可能需要一些时间来开始连接对等点,但是我把上传和下载过程都拖了一整夜,结果没有起作用。
我已经将我的 IP 地址设置为静态 - 并且无论如何我认为这应该无关紧要,因为我现在基本上正在进行本地到本地的连接。
我尝试下载流行的种子,例如 Ubuntu 镜像,以确保下载部分没有损坏并且它可以正常运行。
编辑以回答Seth的问题:
我尝试在两台不同的机器上播种最新的 Ubuntu ISO。在正常模式下运行时,似乎没有上传任何内容,但以下是详细模式下的摘录:
1484232174 Connected to tracker
1484232174 Reported to tracker: 0 uploaded, 0 downloaded
1484232175 Disconnected from tracker
1484232175 new peers=50; next check in 1800 sec
1484232175 Connecting to 178.62.36.240:51413 (peer 0x7ff38a701b50)
1484232175 Connecting to 84.215.30.5:51413 (peer 0x7ff38a702140)
...
1484232175 peer 0x7ff38a502230 gave 0x00000000001000 as reserved bytes
1484232175 Peer 0x7ff38a502230 ID: -qB3370-70bW.N2QYtAi
...
1484232175 0x7ff38a5015d0: Connection reset by peer
1484232175 close: bad handshake
1484232175 0x7ff38a5015d0 close
...
1484232237 peer 0x7ff38d000bf0 gave 0x00000000001000 as reserved bytes
1484232237 Peer 0x7ff38d000bf0 ID: -TR2840-144jjvhhi98x
1484232237 0x7ff38a702ab0 bitfield has 99%
1484232237 0x7ff38a702ab0 seed<->seed detected
...
1484232175 Unknown message type 20 from peer 0x7ff38d200000
1484232175 0x7ff38d200000 is a seed (bitfield is full)
1484232175 0x7ff38d200000 seed<->seed detected
1484232175 close: receive
...
- 0/22/2903 [3040/3040/3040] 0MB,0MB | 0,0K/s | 0,0K E:0,3
1484232238 Cache: 0K/16M Hits: 0 Miss: 0 0% Pre: 0/0
在我看来,似乎正在与同伴进行一些通信,尽管没有任何上传。不知道这是因为某些错误(例如,错误的握手、未知的消息类型 20 等消息)还是仅仅因为 Ubuntu 是一个如此受欢迎的 torrent,以至于没有同伴需要我的任何东西。
我也尝试在一台机器上播种我的种子并在另一台机器上下载,结果发现它们都报告重复:
| 0/0/1 [712/712/712] 0MB,0MB | 0,0K/s | 0,0K E:0,0 Connecting
warn, connect to tracker failed: Operation timed out
所以这看起来毕竟是跟踪器的问题。但我尝试过很多不同的跟踪器,但都出现了同样的消息,所以可能是我这边的某些问题阻碍了与跟踪器的通信,例如我创建 torrent 的方式。
答案1
所以这实际上是跟踪器的问题。在尝试了第五或第六个跟踪器后,我终于可以上传了。这似乎是个很愚蠢的原因,但感谢 Seth 让我深入研究了这个问题,并最终解决了这个问题。