QFT 是一个用于快速(且真正可靠)点对点 UDP 文件传输的小型应用程序。
...查看侧边栏上的“发布”部分。您应该看到一个标题为 vX.YZ 的链接,单击该链接,然后为您的操作系统选择正确的文件: qft
(适用于 Linux)、 qft-mac
(适用于 Mac)和qft.exe
(适用于 Windows)。下载此文件,使其在 Linux 或 Mac 上可执行,然后按照朋友的说明操作,了解如何接收他们想要发送给您的文件。
qft sender <helper> <shared-phrase> <filename>
。qft receiver <helper> <shared-phrase> <filename>
。或者
qft gui
。 qft helper <bind-port>
qft sender <helper-address>:<helper-port> <phrase> <filename> [send-delay] [bitrate] [skip]
qft receiver <helper-address>:<helper-port> <phrase> <filename> [bitrate] [skip]
助手不是数据中继,它们仅用于建立连接。
助手们可以帮助打孔。
*UDP是无连接协议,没有握手。这里使用“连接”一词作为数据将在“连接”方之间交换的指示符。这里使用“断开连接”一词作为指示,表示“先前连接的”各方之间将不再交换数据。
QFT_STREAM
环境变量来允许流式传输(例如,当您想要从 /dev/stdin 传输时)。(shell)
替换为您的 shell 名称,通常是 bash 或 zsh): echo ' alias qftr="qft receiver tudbut.de:4277" ' >> ~ /.(shell)rc
echo ' alias qfts="qft sender tudbut.de:4277" ' >> ~ /.(shell)rc
source ~ /.(shell)rc
除非传输由于很长的暂停或计算机重新启动而完全终止,否则您很可能不需要此操作,但如果您这样做:
在两端停止 qft,然后使用 [skip] 参数再次启动(如果您之前没有指定比特率,则默认值为 256)。它将跳过这些字节并继续您指定的位置。
Connecting...
但无法连接您的一端未正确连接到助手。停止两端传输并重试。
很多人都提到这怎么像鳄鱼。事实并非如此,因为 croc 使用中继来发送所有数据。这是一个瓶颈,也意味着中继管理员要对发送的内容负责。中继还缓冲大量数据,这意味着如果发送方的连接速度比接收方的连接快得多,则其 RAM 可能会被填满。 Croc 被标记为“点对点”充其量只是一种误导,因为它很少使用 P2P 功能(它需要端口转发来执行 P2P,但很少这样做)。如果您认为 Croc 始终是点对点的,请阅读前面有关 P2P 神话的部分。
如上所述,它用于建立两个伙伴之间的连接。
您的路由器使用一种称为网络地址转换的功能。这是必需的,因为否则,使用中的 IP 地址将会过多,并且互联网将在繁忙时间停止工作。然而,这个 NAT 也是一个问题,因为它是您的 PC 和开放互联网之间的一层。当有新的传入连接时,NAT 将不知道将连接转发到 LAN 中的哪台 PC,因此该连接会被拒绝。因此,任何点对点软件都需要一个辅助服务器(也称为“STUN”服务器),双方都会询问对方的 IP 地址和端口。然后,两个对等方都可以向对方发送一堆传出连接。如果一切顺利,两个对等方都在正确的时间发送了传出连接,导致两个 NAT 都认为它们是传出连接,而实际上,它们是传入和传出连接的组合。
TL;DR:由于路由器的存在,如果没有辅助服务器,P2P 网络是不可能的。否则需要端口转发,这可能很难设置。
阅读“提示与技巧”部分中的第二个要点。