比特彗星 常见问题的收集与解决

光猫里的上网方式是 ipv4/ipv6 设置的这个选项,但网络状态里ipv6显示为 “disconnected”
upnp也是打开的,光猫和路由器都是打开的,但我常用的手机端彗星里显示upnp端口映射失败(这个一直是失败的,没成功过)电脑端的彗星upnp有成功过,但电脑端也一样的没有ipv6并且时而绿灯时而黄灯
明天我试一下光猫改桥接并用路由器拨号

这个是光猫里面显示的还是哪里显示的?
建议截图发一下 没有图不好判断情况

可以加一下QQ群
650779337
回答群问题时说明一下是论坛来的

回报:
我把光猫改成桥接后,ipv4的问题都解决了,端口也不堵塞了
upnp依旧不管用,ipv6路由器显示已连接但实际上不通
群我加一下哈,感谢大佬的耐心热心解答

1個讚

测速种子

可用于测试BT下载的速度即测试下载速是否能跑满下行带宽或者达到预期值
适用于排除网络和软件设置问题 从开始下载到速度达峰需要一段时间

其实任意热门资源都可以用作测速
只要该资源 所能连接到的 做种/上传者 所提供的下载速度大于你的下行带宽即可

这里选用 乌班图镜像 (Ubuntu)作为测速种子
虽然大部分的做种者在国外 但足够热门 仍可满足测速需求
建议下载LTS版本的

[https://cn.ubuntu.com/download/alternative-downloads]

1個讚

[LUCKY STUN 穿透]使用webhook自动修改 qbittorrent 的监听端口

在 lucky stun 穿透获得的外部端口发生变化后除了要修改路由设备上的映射规则
还需要修改BT下载软件的监听端口

得益于 qbittorrent 较为完善的 webUI 其在接口中定义了多种修改配置的参数
当然也包括监听端口 这样我们就可以非常轻松的使用lucky stun穿透中的webhook功能
在穿透端口发生变化时自动修改监听端口

qbittorrent webUI 接口定义:WebUI API (qBittorrent 4.1) · qbittorrent/qBittorrent Wiki · GitHub


配置方法

打开webhook开关
填写一下内容


接口地址:

http://[IP和webUI端口]/api/v2/app/setPreferences

请求方法:POST

请求头:

Content-type:application/x-www-form-urlencoded

请求主体:

json={"listen_port":#{port}}

打开 禁用Webhook接口调用成功字符串检测

示例


接口地址的IP和端口按照实际情况修改
如果lucky和 qb运行在同一设备上(非docker)上IP使用127.0.0.1即可
建议勾选上qb webUI设置中的 “对本地主机上的客户端跳过身份验证”


如果不运行在同一设备上运行则这里的IP端口填写qb所运行在的设备上的IP和以及对应的端口
并勾选 “对IP子网白名单中的客户端跳过身份验证”
将运行lucky的设备IP段添加到这个白名单上


以防止由于身份验证的问题导致调用失败
填写完成后可以点击旁边的手动触发测试各项参数设置是否正确


这里所说的内置数据不是真实数据应该指的是 穿透地址端口这些信息
这并不影响我们检查各项设置是否正确

之所以要打开禁用Webhook接口调用成功字符串检测是
因为调用成功后并不会返回任何字符串 只有一个 HTTP 200 OK 看起来像这样


如果设置有问题比如 没有免除身份验证就会报403


地址或端口填写错误则可能报“No connection could be made because the target machine actively refused it.”
或者直接弹出一个小的错误提示


若是 请求主体 写错就可能会报 HTTP 400


至此我们就完成了使用webhook自动修改 qbittorrent 的监听端口的设置
再配合上之前的教程使用UPNP工具添加内网端口不同的映射规则即可实现完全自动化
之前教程:

增补


问:任务变成一个红叉 从新启动任务也是这样?

答:这说明任务出错了可以选中任务看一下任务日志或者摘要

问:遇到这些报错要这么解决呢?

答:如果是
[拒绝访问]

可能是文件夹权限问题
可以尝试手动在当前下载目录中创建文件 看看是否有权限问题
或者直接更换下载目录


[系统找不到指定的路径]

这可能是文件路径过长导致的
可以尝试更换路径更短的位置再进行下载

也有可能是下载路径中包含空格
不过这个问题应该只在很旧的版本中才会发生(1.79之前的版本)

在1.99中似乎有一个小bug 右键任务移动文件时似乎也会出现这个问题

还有可能是硬盘发生问题比如掉盘了
整个分区直接在Windows里就识别不到了

如果不是硬件故障的话更换目录下载基本都可解决

问:那如果是感叹号呢?

答:黄色感叹号表示下载文件丢失 即文件不在原来的位置了

问:我把文件移动到其他的地方了 要如何让任务恢复正常呢?

答:可以删除任务然后再重新添加 将下载路径选择到现在文件所在的位置

如果生成了临时文件就将其删除右键任务>重新检查完整性
校验完成后即可恢复正常

或者选择任务右键>文件移动到 选择现在文件所在的目录即可
移动后右键任务>重新检查完整性

注意目录不要搞错了 多文件任务会生成文件夹 不要选择这个文件夹
要选择其上一层的目录


参考:

比特彗星-意外退出程序后下载列表清空问题


问:程序意外退出后(如停电) 下载列表清空了该怎么办?

答:这应该是 下载列表没有正常保存导致的
不过好在 彗星本身其实有配置保存机制

便携版配置文件保存在程序安装目录中
而安装版则在 C盘的用户文件夹 AppData 中即

%appdata%\BitComet

打开目录可以看到一些 名为Downloads.xml.[日期].bak 的文件

这些就是下载列表的备份文件日期部分表示其备份的时间
退出彗星删除现在的Downloads.xml文件

选择备份文件中日期最靠近现在的一个文件
将其后面的 ".[日期].bak"后缀删去
即变成Downloads.xml

现在再打开彗星就可以看到下载列表已经恢复了

问:要是目录下没有备份文件呢?

答:一般来说都会有 要是没有生成的话就比较麻烦了
不过依然有办法那就是使用种子存档

种子存档功能默认启用 在添加任务时会自动保存一份种子文件

查看存档的种子文件 右键可以重新添加到下载列表中

其保存在torrents文件夹中和配置文件在同一个目录

不过我们不需要重新下载文件
在创建任务的时候选择之前任务下载的目录

注意多文件任务会生成文件夹 不要选择这个文件夹
要选择其上一层的目录

选择好目录创建好任务后立刻停止任务
检查下载目录 可能会生成临时文件其应该和之前下载的文件在一起
这说明目录选择正确 删除这些临时文件

右键任务>重新检查完整性
校验完成后任务进度即可恢复

注意要是之前只选择下载了部分文件那么现在也需要重新选择
默认状态会下载全部文件

问:那程序配置有备份吗?

答:程序配置 BitComet.xml 文件并没有备份

问:那要是丢失了就无法恢复了吗?

答:确实是这样的 不过程序配置应该不太容易丢失
如果实在担心的话可以对这两个文件进行备份
比如FreeFileSync等备份软件


参考:

[LUCKY]在Windows下使用STUN穿透实现Minecraft联机并设置srv记录

本教程目标
在无公网环境下低成本的实现较为稳定的 Minecraft Java版联机(服务器)


目前常见的联机(服务器)方法及其问题
针对好友联机和小(微)型服务器

家庭宽带 公网直连(IPv4或IPv6)

优点:完全原生网络效率和稳定性上不存在问题
缺点:IPv4公网难获取 IPv6普及度仍然不够高 玩家不一定有IPv6


组网方案 (比如EasyN2N)

优点:对玩家网络要求不是很高 可以实现P2P直连 即使P2P直连不成功也可以走服务器中转
缺点:中转状态下速度和稳定性受限于中转服务器 同时需要在设备上额外安装客户端


租用高性能VPS直接开服

优点:网络方面相当于原生公网
缺点:高性能服务器价格较高 对于好友联机和微型服务器来讲

租用低性能VPS+frp穿透 在个人电脑上开服

优点:网络方面相当于原生公网(相当于是买了个公网IP)
缺点:即使是低性能服务器依然要些花钱(主要是带宽) 如果VPS离开玩家和mc服务端较远延迟可能还是较高
毕竟比直接部署在VPS上要多绕一些路径


免费frp穿透服务

优点:对玩家网络要求不高
缺点:和组网方案类似 稳定性和速度等受限于穿透节点


这里介绍STUN穿透法

优点:几乎相当于原生公网有较大的带宽其上限为家庭宽带本身的上限
(一般的100M家庭宽带都有30Mbps的上传 )

缺点:端口号不定期变化
解决方法:设置srv记录(其可以记录端口号)
Minecraft(Java)支持解析srv记录 无需手动输入端口号

这是除了租用VPS外最接近公网直连的方法


得益于lucky将 stun穿透 端口转发 webhook 以及DDNS更新功能整合在一起
我们可以轻松的实现stun穿透联机的设想

配置思路

1.在dynv6上创建免费动态域名 并添SRV记录
2.使用lucky 的stun穿透和端口转发功能打开端口并将流量导向服务端
3.在stun传穿透的IP或者端口发生变化时可以触发webhook请求 使用其向dynv6的更新api发送请求
更新srv记录中的端口
4.玩家输入仅需动态域名 客户端自动解析srv记录中的地址和端口即可登入游戏


配置方法

网络环境检测和优化

尽管大部分stun穿透教程都会强调必须是全锥型NAT才能穿透
但这其实指的是最外面一层的运营商NAT 而大部分的运营商NAT都是全锥型的

不过现在的家庭网络环境中几乎都存在多层NAT 而NAT类型测试只能测出其“最差”的一层 其很可能显示为"端口受限(锥)型NAT" 这其实是由于 路由器/光猫上的NAT造成的
不过这并不会影响我们使用stun穿透 可以按照这篇教程进行网络优化

教程:比特彗星-端口阻塞解决方案-2.3网络环境检测和优化 - 哔哩哔哩

优化到只剩一层运营商NAT和 和一层光猫/路由器 NAT
共两层NAT 且NAT类型检查结果不为对称型即可进行穿透


下载和安装lucky

请参考之前教程 LUCKY STUN穿透在Windows上使用UPnP工具为BT客户端自动添加内外端口号不同的映射规则 - 哔哩哔哩


注册dynv6

访问 dynv6.com 点击右上角的 sign up
填写邮箱和密码后即可

邮箱中会收到一封确认邮件
要点击邮件内的链接确认账户

值得注意的是确认页面有谷歌人机验证
可能需要代理才能正常显示

如果没有代理可以使用下面链接中的方法使验证显示出来


设置 动态域名和srv记录

添加动态域名

点击右上角的 My Zones 选择 More

点击右侧的 create new zone

设置你喜欢的名字 只能为数字和字母
选择一个方便记忆的一级域名这里选择 dynv6.net
IP地址先不设置 之后会设置解析
创建

创建完成后会自动切换到该域名的配置页面
选择 records 选项卡
添加 记录 类型选择 srv

填写 name host name port 这几个选项

端口号任意填写之后会修改

name中填写的是

_minecraft._tcp.mc

host name 中填写的则是(注意最后有一个点)

ie12test.dynv6.net.

配置效果

检查解析效果

命令提示符运行以下命令

nslookup -q=srv 你的域名

例如

nslookup -q=srv _minecraft._tcp.mc.ie12test.dynv6.net

注意前面的_minecraft._tcp. 不能少

看到如下中的内容表示设置正确


关于srv记录

其中的 _minecraft._tcp 表示服务类型为 Minecraft 协议为TCP 这个部分是必须要有的且不能修改的

而后面的.mc 相当于一个三级域名可以自由修改 游玩时在地址栏里输入 mc.ietest.dynv6.net即可
如果改为.abc 那游玩时就要输入 abc.ietest.dynv6.net
前面的_minecraft._tcp在游玩时不用输入 mc客户端会在你输入的域名前面自动加上 进行查询

hostname 选项表示使用的实际域名或者IP
这里直接使用的是它的上级域名即 ietest.dynv6.net 也可以使用任意的其他域名
填写的时候别忘了后面要加上一个点即英文状态下的句号

一些教程会说srv记录可以隐藏端口但这其实是不准确的

之所以srv看起来可以隐藏端口是因为在服务器地址栏中输入的是

mc.ietest.dynv6.net

而实际在客户端查询域名的时候使用的是

_minecraft._tcp.mc.ie12test.dynv6.net

也就是mc.ietest.dynv6.net这个地址其实不需要设置IP地址
所以直接解析这个地址解析不出ip来

而且实际使用的地址是_minecraft._tcp.mc.ie12test.dynv6.net 中srv记录里指定的地址
即使你直接解析这个地址也是解析不出来IP的
因为dns解析一般默认解析的都是 A(ipv4地址)和AAAA(IPv6地址)

必须要像刚才检查解析效果时那样指定查询记录类型为srv才行

其中的svr hostname 就是真实的域名或者IP

所以这只能算是一种障眼法
只对不了解srv记录的人有一定效果
不能真的隐藏服务器的源IP地址


获取域名ID和记录ID以及token

通过dynv6的 REST API 我们可以更新srv 记录中的端口号

api 定义:REST API for dynv6

但是在这之前我们需要先获取两个ID号和一个Token
一个是域名ID即zoneID另一个是记录ID(srv记录的)即recordID
而Token 相当于是一串密码用来进行身份验证

我们先从token开始

点击右上角的账户名选择 keys

在HTTP Tokens 应该已经有了一个默认的Token
点开details 查看内容

注意不要泄露token 如果泄露应马上更换

将token复制下来马上获取ID的时候要用到

ID的获取相对麻烦一些
dynv6的文档中用的是curl
我们直接使用lucky中的 webhook 功能就不用再去下curl了


打开lucky
点击左侧的 计划任务
添加计划任务

设置内容:

开关关闭
执行周期和时间任意 这个只是测试用的

添加子任务

类型 callweb

接口地址:

https://dynv6.com/api/v2/zones

请求方法:GET
请求头:

Authorization: Bearer 之前获取的TOKEN
Accept: application/json

启用 禁用成功字符检测

保存任务

点击手动触发

查看日志中输出的信息
如果配置正确会返回 域名和ID

这里的ID就是域名ID即zoneID
有了这个我们才能获取记录ID


接下来获取record ID

修改计划任务中的内容

将请求地址修改为:

https://dynv6.com/api/v2/zones/刚才获取的ID/records

其他都不变
保存规则再次点击手动触发
查看日志中的返回内容如果配置正确会返回域名和ID

这次的ID就是记录ID了即recordID

现在我们就可以进行srv记录的端口更新了
这个要到stun穿透里面设置不过我们可以先在这测试一下


再次修改任务

接口地址改为:

https://dynv6.com/api/v2/zones/你的域名ID/records/你的记录ID

请求方法:PATCH

请求主体填写

{
"name": "记录名称",
"port": 1024
}

记录名称是刚才获取记录ID时返回的 name 值
端口号为任意 仅用于测试

例如

{
"name": "_minecraft._tcp.mc",
"port": 1024
}

保存规则点击手动触发
查看日志中的返回内容如果配置正确会返回srv记录的详细信息
同时查看端口是否已经更新

记录下刚才填写的配置一会儿在stun穿透里面设置

(这里踩了个坑 name 必须要有不然会报错 之前没加上一直报错 还在QQ群友帮助测试后才发现这个问题)


设置DDNS解析

选择左侧的动态域名解析
添加任务

名称任意

托管服务商:dynv6

token 填写之前获得的token

类型:选择IPv4

域名列表
填写 之前srv记录指向的域名

保存规则

检查效果
显示公网ip未改变即设置正确


设置stun穿透

选择左侧的stun内网穿透
添加穿透规则


规则名称任意

穿透类型选择 ipv4 tcp

监听端口可自定义 不和其他程序冲突即可

目标地址设置为

127.0.0.1

目标端口设置为mc服务端监听的端口
这里用的是25678

打开webook开关

填写的内容和之前在计划任务中测试时的基本相同

接口地址:

https://dynv6.com/api/v2/zones/你的域名ID/records/你的记录ID

请求方法:PATCH

请求头:

Authorization: Bearer 之前获取的TOKEN
Accept: application/json

请求主体填写

{
"name": "记录名称",
"port": #{port}
}

记录名称是之前获取记录ID时返回的 name 值

例如

{
"name": "_minecraft._tcp.mc",
"port": #{port}
}

调用成功字符串检检测:SRV
(要大写)

填写完成后点击右上角的手动触发
查看是否调用成功

成功会返回记录的详细信息
注意这里的端口号变成了6666

保存规则

最终效果


游戏测试环节

Minecraft 1.16.5 Java
局域网游戏
使用 自定义局域网联机(Lan Server Properties) mod固定端口


参考


为什么连接上那么多用户他们都有下载速度,我却没有

把utp关掉

1個讚

我试试看如何


最多400多kb每秒了

这样的话就正常了

大佬为啥这个utp反而会让下载降低速度呢


有的资源还是下不动,这个资源还是上传大于下载,挺纳闷的,我端口也是黄灯阻塞呀

utp一开始的设计目的确实是为了提高传输速度的
不过彗星达到utp优化的不是很好
而且utp是以udp为基础的运营商限速可能会比较厉害
所以到头来还不如tcp

1個讚

之所以说黄灯没上传
是因为黄灯下别人无法连接你(无法被别人连接)
但是你可以去连接别人(绿灯用户)
这样上传的效率比较低
但是一旦连上了也还是会有上传的

1個讚


大佬,pex来源是什么意思·

PEX就是 Peer exchange节点交换

简单来说就是询问已经连接上的用户 看看他们知不知道更多其他在下载/上传的用户
图上来源显示为PEX则表示这些用户是从其他用户那里问来的

1個讚