跳到主要内容

比特彗星常见问题-有关绿灯的常见误区

2024.12.08

在比特彗星有关绿灯的讨论中存在一些比较常见的误区
本文中我们会解释这些问题


绿灯的作用

许多有关比特彗星使用的讨论中都会强调要获得绿灯
之所以强调绿灯是因为其代表端口开放

也就意味着你可以接受其他人的连接请求
从而直接提高上传速度 间接提高下载速度

关于BT下载的特性和和开放端口的重要性
在之前的教程中已经有所讲解:链接

这种端口开放显示机制不局限于比特彗星 其也适用于大部分的P2P文件下载/共享软件
比如qbittorrent中右下角的绿色地球/插头 以及 电骡/驴(eMule)
中的 “High ID” 和 “Low ID”


显示为绿灯的条件

想要让比特彗星的右下角显示绿灯其实非常简单

只要比特彗星在接收到外部主动传入的TCP连接后 右下角就会显示为绿灯
这包括主动进行的端口检测和被动的接受其他用户的连接请求
不会区分连接的来源和IP协议

这意味着无论这个TCP连接使用IPv4还是IPv6 是来自于互联网还是本地局域网
甚至是本地环回地址 其都可以使右下角显示为绿灯

请记住绿灯只是一种显示方式 开放端口才是真正目标的


什么是 “双绿灯”

在有关绿灯讨论中大概会听到“双绿灯”这样一个说法

有关于“双绿灯”最常见的误区
认为其表示左下角有两个绿色的点

示例

然而这是不正确的 其正确的含义应该是
比特彗星所监听的IPv6端口和IPv4端口都是开放的
即在统计中展开TCP监听端口可以看到 IPv4和IPv6都显示已开通

示例

其更为准确的称呼应该为“双栈”或“双栈公网”
这里的栈指协议IP栈 双栈就是IPv4和IPv6协议
简而言之就是IPv4和IPv6端口都开放


什么是“假绿灯”和“快乐灯”

其实“假绿灯”和“快乐灯”是一回事 即在端口没有开放的情况下
右下角却显示了端口开放

其实造成这种现象的原因也很简单 只要满足了前文中所说的绿灯条件
右下角就会显示绿灯 即使对外端口在事实上并没有开放

一种最常见的情况就是 在本地开了两个客户端 下载同一个资源
两个客户端通过局域网地址或本地环回地址连接上
客户端检测到了主动传入的连接 显示了绿灯


要验证和检查当前的绿灯是否为 真绿灯
可以通过在线的端口扫描工具实现 若扫描显示端口开放
即为真绿灯反之为假绿灯

端口扫描工具:链接


我已经做了XXX但为什么还是没有XXX

最常见的一种提问就是 “我已经做了 端口映射/UPnP/DMZ 为什么还是没有绿灯?”

其实出现这样的提问也不难理解 因为很多网上的教程就是这样写的
说开个 端口映射/UPnP/DMZ 就行了

这种方法放在10或20年可能是有效的现在的网络环境已经和当年大不相同了

当然这其实都不是最大的问题 最大的问题是这些教程不会告诉你你前因后果
只是展示一个操作过程 其既不教你检测自身实际的网络环境
也不告诉你为什么要这样做 但由于其操作简单 被大量的复制和传播

要想解决端口阻塞问题还是要从实际情况出发
根据网络情况进行分析和排查 端口阻塞解决方案:链接


为什么绿灯下载还是缓慢或无法下载

在端口开放后 有些资源依然下载缓慢或无法下载 这其实是资源本身的问题
在之前的教程中我们已经讲解了 BT下载基本原理
以及下载缓慢和无法下载的一些解决方法

  • 下载缓慢和无法下载问题[重置]: 链接
  • P2P模式 和C/S模式的差异: 链接

简而言之 BT下载 需要有用户上传才行
即你的下载是其他持有相同资源用户的上传
其一般不依赖中心化的服务器

所以 获得绿灯即开放端口 只是提升连接用户的效率 而并非凭空产生资源
当然对标准BT客户端来说是这样的
“巧妇难为无米之炊” 没有可供下载的东西自然无法下载

而那些通过服务器拉取资源 再提供给用户下载的非标准客户端(程序)
不在讨论的范围内 比如迅雷或一些网盘所提供的所谓离线下载
当然这些离线下载既有危害也有价值