B2POOL 连接中…

有什么就用什么。

大多数矿池只有一个端口,并且默认后面挂的是矿机。这里每一类硬件都有自己的端口,因为 BLAKE2b 足够便宜,CPU 是真正的参与者,而不是照顾面子。在下面选你的机器,接下来那一屏就是你需要填的三个字段 —— 不用注册账户,也没有密码要记。你的收款地址就是你的账户。

或者整件事自己来:你自己的节点构建区块,由你挑选交易,矿池只回答谁该拿多少。同样是 1 % 的费率,而且这是 stratum 退场唯一不会波及的路径。一步步搭建你自己的 DATUM 网关 →

每一份份额都进入矿池近期工作的滑动窗口。矿池找到的每个区块都分摊到这个窗口上,所以一份份额是从多个区块里各拿一点,而不是从一个区块里拿全部 —— 而且不管获胜的那份份额是不是你的,你都有报酬。

六个地区,一个矿池,一个余额。本页所有接入点都跟着你的选择走 —— 我们正在测量哪个离你最近。

费用 Stratum V1、DATUM 与 RATUM 均为 1 %。

区块由你自己构建。你自己的节点挑选交易、组装模板;你的网关只向我们问一个问题——谁该拿多少——再把我们的回答写进 coinbase。区块存在之前我们根本看不到它,而我们无法审查自己并不构建的东西。这条链本就该这样挖。

代价是一台长期开机的机器、约 40 GB 磁盘,以及一到三天的首次同步。不需要编译——网关只是一个 2.4 MB 的静态二进制文件。Bitcoin Knots 29.4.2 或更新版本是必需的:更旧的节点会把过早花费的 coinbase 放进你的模板,而网络从第 973,440 个区块起就会拒绝它。

每一条命令、每一项设置,逐步进行 →

接口地址
de.b2pool.io:28915这里连接的是你的网关,绝不是矿机。
网关
0.1.23 或更新或从 40cf813 起构建的 C 版 datum_gateway。
最低难度
2,048
支付窗口
8 × 全网难度
费率
1 %

一个自由开源的挖矿程序

Supryolo —— MIT 许可,无抽成,无开发者分成,而且快。

github.com/ocminer/supryolo 能在 NVIDIA(CUDA)、AMD(OpenCL)和 CPU 上挖 BLAKE2b,并在可用时自动选择 AVX2 内核。FPGA 和 ASIC 后端在计划中。把它公布的基准数据放到各设备该用的端口上看:

设备算力端口每隔多久一份份额…
NVIDIA RTX 509017.21 GH/s444432 s
AMD RX 7900 XTX5.78 GH/s444495 s
Ryzen 9 3950X,15 线程367 MH/s555512 s

算力是项目自己的数据;节奏是按端口难度算出来的。注意 CPU 那一行 —— 十二秒一份份额,那是处理器在真干活,不是做做样子。

编译它需要 CMake 3.24 或更新版本、一个 C++20 编译器和 OpenSSL 开发文件。CUDA 工具包是可选的,只有 NVIDIA 显卡才需要。

git clone https://github.com/ocminer/supryolo
cd supryolo
cmake -S . -B build -DCMAKE_BUILD_TYPE=Release -DCMAKE_CUDA_ARCHITECTURES=120
cmake --build build -j

没有 CUDA 工具包,或者只有 CPU 的机器?不带它编译:

cmake -S . -B build-cpu -DCMAKE_BUILD_TYPE=Release -DYOLO_CUDA=OFF -DYOLO_OPENCL=OFF
cmake --build build-cpu -j

然后把它指到这里。显卡用 FPGA/显卡端口:

./build/supryolo --url stratum+tcp://de.b2pool.io:4444 \
  --user <your-payout-address>.rig1 --gpu-device 0 --no-cpu

或者 CPU 用难度 1 的端口:

./build/supryolo --no-gpu --cpu-threads 15 \
  --url stratum+tcp://de.b2pool.io:5555 --user <your-payout-address>.cpu1

--list-devices 列出它找到的设备,--benchmark 不连接就测速,另外还有 --gpu-core-clock、--gpu-mem-clock、--powerlimit 和 --gpu-fan-speed 供你调参。

Supryolo 不是我们的,我们也不因为推荐它而拿一分钱 —— 它是 MIT 许可,没有开发者抽成。我们链接它,是因为用显卡或处理器上这条链,它是最快的路;也因为一个公开了协议却没有可用开源客户端的矿池,只算半个东西。

选最近的地区

从你自己的浏览器到每个地区实测,不是看地图猜的。

法兰克福

测量中…

de.b2pool.io:3333

赫尔辛基

测量中…

hel.b2pool.io:3333

芝加哥

测量中…

ord.b2pool.io:3333

洛杉矶

测量中…

lax.b2pool.io:3333

基辅

测量中…

ua.b2pool.io:3333

香港

测量中…

hkg.b2pool.io:3333

端口会跟着上面的硬件标签页和支付方式开关走,所以每个地区下面那一行就是可以直接粘贴的地址。它们都汇入同一个矿池、同一个余额 —— 选最近的那个,省下的只是每份份额的往返时间。

选对你 ping 最低的那个 —— 你连接的 stratum 端点就跑在那台主机上,往返时间越短,从找到份额到被计入的间隔就越短。它们都汇入同一个矿池和同一个余额,所以切换不花你任何代价。

从中国大陆挖矿

从大陆挖矿该用香港这个接入点,理由是路由而不是距离:它走 CN2 直连线路进入中国电信网络,所以路径完全不碰拥堵的 ChinaNet 骨干,高峰时段也稳得住。在主机上各 ping 十次实测:到北京约 60 毫秒(中国联通,57–67 毫秒),而到法兰克福约 180 毫秒(177–187 毫秒)。往返时间大约只有三分之一,而且因为路径始终在 CN2 上,高峰时段也保持得住。华南还要更近。

这对你提交的每一份份额都有影响,不是只影响一次 —— 往返时间越长,你的硬件就越可能在已经过期的工作上白费力气。如果你在那边有矿场,搬之前请自己测:从你自己的网络跑 ping hkg.b2pool.io 和 mtr hkg.b2pool.io,比网站上的任何说法都更能定这件事,我们也更希望你自己核实。

两个永远不变的字段

不管你选了哪个端口,这两个都一样。

矿机
<收款地址>.<矿机名>例如 bc1q8zq…vty4.shed-01 —— 地址就是你的账户,矿机名只是在矿工页面上区分你的各台机器。
密码
x填什么都行。这个字段存在只是因为 stratum 要求有它。d=<数字> 可以设定你自己的难度下限。
你的报酬来自
来自支付窗口,每个区块都有 每个区块都分摊到矿池近期工作的滑动窗口上 —— 窗口是全网难度的八倍。视区块是怎么找到的,你要么直接从它的 coinbase 收款,要么由矿池转账。只有补贴参与分配;区块的交易手续费留在矿池。
费率
区块补贴的 1.0%区块里的交易手续费留在矿池,用于覆盖运营成本。
  1. 01

    弄一个地址

    为这条链新建一个钱包,复制一个接收地址。绝不要重复使用在分叉另一侧已经持币的地址。

  2. 02

    选择端口

    你的硬件决定用哪个端口,你想怎么拿钱决定它是共享的那个号还是 SOLO 的那个号。除此之外两者没有任何区别。

  3. 03

    填三个字段

    地址、矿机名、密码。打开你矿机的网页界面或命令行,把上面标签页里的值填进去。

  4. 04

    保存并查看

    保存,让机器重连,然后看有没有被接受的份额。一两分钟内,你的页面就会出现在「矿工」下面。

然后,由区块直接支付给你。

没有提现这一步,因为根本无需提现。

当矿池找到一个区块时,你的地址会被写入该区块的 coinbase — 也就是创造这些币的那笔交易 — 旁边就是你的份额。从那一刻起这些币就属于你;它们从不躺在矿池钱包里,也从不依赖运营者是否转出。刚挖出的币仍需先成熟才能花费 — 这是链的规则,对链上每位矿工都一样。低于 10,000 sat 的金额会结转到你的下一份份额。

矿池支付方式详解 →

两个接入点做备用

把另一个地区填成 Pool 2,矿机名和密码一样。

比如法兰克福作 Pool 1、赫尔辛基作 Pool 2。每个地区都汇入同一个矿池和同一个余额,所以切换只花掉重连的那几秒。两个槽位用同一个端口号 —— 端口在各地的含义完全相同。

出问题的时候

矿机连上后立刻断开

几乎总是矿机名字段的问题。它必须是你的收款地址,后面可以跟一个点和矿机名。如果地址格式不对,矿池会直接断开连接,而不是往一个没人能花的地址上挖。

份额提交了但全被拒绝

先看机器的时钟 —— 系统时间跟真实时间差太多是最常见的原因。然后再看矿机名字段。换端口没有用:所有端口跑的是同一个协议,区别只在起始难度。

什么都没提交,但矿机说自己在算

你多半用了给更快硬件准备的端口,第一份份额还没到。把该端口的起始难度乘以 4.295 × 109 再除以你的算力:那就是等待时间。在收到你的第一份份额之前,矿池没法给你降难度,所以一张停在矿机端口上的显卡可能安静好几天。往下换一个端口,或者在密码字段里用 d= 自己指定难度,完全跳过这段等待。

租算力平台报「Low worker difficulty」

用矿机端口。它从 16,384 起步,从不低于 1,024,足以越过任何租算力平台可能要求的最低值。如果平台自己有难度字段,别动它 —— 矿池的值会直接透传过去。

租来的算力通常远大于 16,384 所适合的规模:在 100 TH/s 下那是每 0.7 秒一份份额,在动态难度稳定下来之前,双方都不需要这么大的流量。在密码字段里写 d=1000000,起步就接近每 45 秒一份份额。

我能自己设起始难度吗?

可以。在密码字段里写 d= 加一个数字 —— 大的租用算力写 d=50000,小的写 d=2000。矿池会在你的第一条 mining.set_difficulty 里用这个难度回应,在你的第一份份额之前。这也是它唯一起作用的时刻:在第一份份额到达之前,动态难度什么也调不了,所以那之前完全由起始值决定。

这个数字会被四舍五入到最近的 2 的幂。在这条链上,份额目标是 2224−1 右移整数位,所以 32,768 和 65,536 之间什么都没有 —— d=50000 变成 65,536,d=2000 变成 2,048。端口下限依然有效:要求低于端口允许的值,你拿到的就是下限。如果你的矿机会说 mining.suggest_difficulty,效果完全一样。

为什么 CPU 不能拿到更低的难度?

因为链本身有下限。难度 1 的一份份额要 232 次哈希 —— 大约 43 亿次 —— 再没有更小的工作单位可以发放。CPU 端口已经贴在这个下限上了。八个核心在那里大约每 81 秒一份份额,矿池再怎么做也快不了。

网站上的算力比矿机上低

矿池只能测到它收到的份额,所以是在一个时间窗口里估算你的速率,数字会来回跳。请按小时比,不要按分钟。如果持续差出几个百分点以上,通常意味着有被拒绝的份额或线路不稳。

没有矿机能先试试吗?

可以 —— CPU 端口就是干这个的。任何会说 stratum 的 BLAKE2b CPU 挖矿程序都能连上并提交份额,这足以在你把真正的硬件指过来之前,确认你的地址和矿机名能被接受。