用 Ratum 网关在 Lazarus 挖矿
ratum-gateway 是 iohzrd 用 Rust 重写的 DATUM 网关:一个静态二进制文件,与 C 版网关用同一个 datum_gateway_config.json,并自带状态页。Lazarus 直接接受它,不需要补丁、特殊设置或审批。它和本站其他自建 DATUM 网关一样:0% 手续费,外加 DATUM 奖励。2026 年 9 月 27 日,连接 Lazarus 的网关中有 19 个在跑它,版本从 0.1.23 到 0.1.53。
每一条已发布的版本线,我们都先在测试链上对接自家 Prime 实测过,才说它能用。逐个版本的结果见文末表格。简短结论:用最新的正式版,也就是本指南安装的版本。
1. 你需要
- 本链的 Bitcoin Knots 29.4.2,完全同步,开启
server=1。它负责构建你的区块模板;29.4.2 是第一个认识长 coinbase 成熟期规则(自区块 973,440 起为共识)的版本,更旧的节点会构建被全网拒绝的区块。见本链说明。 - 一台常开的机器:Linux、macOS 或 Windows,64 位,x86 或 ARM。网关本身很小;节点裁剪后约需 20 GB。
- 一个本链收款地址,来自只在本链使用的钱包。
- 与网关在同一网络中的 BLAKE2b 矿机(任何 Siacoin 矿机)。
2. 安装 ratum-gateway
从 github.com/iohzrd/ratum/releases 下载适合你机器的版本并核对校验和。64 位 Linux:
V=0.1.53 curl -fsSLO https://github.com/iohzrd/ratum/releases/download/v$V/ratum-gateway-$V-x86_64-linux-musl.tar.gz curl -fsSLO https://github.com/iohzrd/ratum/releases/download/v$V/ratum-gateway-$V-x86_64-linux-musl.tar.gz.sha256 sha256sum -c ratum-gateway-$V-x86_64-linux-musl.tar.gz.sha256 tar -xzf ratum-gateway-$V-x86_64-linux-musl.tar.gz sudo install -m0755 ratum-gateway-$V-x86_64-linux-musl/ratum-gateway /usr/local/bin/ ratum-gateway --version
ARM Linux(例如树莓派 5)用 aarch64-linux-musl 文件,Mac 用 macos 文件,Windows 用 x86_64-windows.zip。也可以从源码编译:git clone https://github.com/iohzrd/ratum && cd ratum && git checkout v0.1.53 && cargo build --release --bin ratum-gateway。
3. 让网关及时知道新区块
在节点的 bitcoin.conf 里加上这一行并重启节点,这样出新块时网关几毫秒内就切换,而不是等下一次轮询:
blocknotify=curl -fsS -o /dev/null http://127.0.0.1:7152/NOTIFY
7152 是下面配置里网关的 api.listen_port。也可以用 kill -USR1 <pid>,效果相同。
4. 配置文件
保存为 datum_gateway_config.json。它就是 C 版网关的配置文件,所以已有的文件只要把 datum 段指向这里就能直接用。公钥是本矿池的,来自矿池实时数据。
{
"bitcoind": {
"rpcurl": "http://127.0.0.1:8332",
"rpccookiefile": "/home/YOU/.bitcoin/.cookie",
"work_update_seconds": 40,
"notify_fallback": true
},
"stratum": {
"listen_addr": "0.0.0.0",
"listen_port": 23334,
"vardiff_min": 4096,
"require_address_username": true
},
"mining": {
"pool_address": "YOUR_XBT_ADDRESS",
"coinbase_tag_primary": "Lazarus",
"coinbase_tag_secondary": "YOUR_GATEWAY_NAME"
},
"api": {
"listen_addr": "127.0.0.1",
"listen_port": 7152,
"admin_password": "CHANGE_ME",
"miner_listen_addr": "127.0.0.1",
"miner_listen_port": 8000
},
"datum": {
"pool_host": "datum.lazarus-xbt.xyz",
"pool_port": 28915,
"pool_pubkey": "29120606bbbfdeb0dcb259d13ed1fba9e6ff198ff6a0152cffb7608dc1c266bd17532393738aee7edf9aa0c9ec93b835256971f186da878f77fb3ed273dff30a",
"pool_url": "https://pool.lazarus-xbt.xyz",
"pool_pass_workers": true,
"pool_pass_full_users": true,
"pooled_mining_only": true
}
}
datum:我们的主机、端口和矿池公钥。公钥锁定这条连接:填错公钥的网关拿不到会话,也不下发任何工作——我们实测过。pool_url只是在网关状态页上放一个指向本站的链接。mining.pool_address:填你自己的地址。网关与矿池连接期间,它构建的每个 coinbase 都支付我们的分配和矿池输出,与这里填什么无关,所以不影响你的收入。只有在网关与矿池失联期间挖出的工作才会付到这里,见第 7 步。coinbase_tag_secondary:你的网关名称,也就是本站网关表显示的名字。coinbase_tag_primary只在连不上矿池时使用;连接期间网关写入的是我们的标签。pool_pass_full_users: true:网关后面的每台矿机按它自己用户名里的地址收款,多人可以共用一个网关。require_address_username: true:用户名不以地址开头的矿工会被网关拒绝,而不是替一个谁也收不到钱的名字挖矿。vardiff_min: 4096:新会话的起始难度,更快的机器会从这里往上调。admin_password保护 7152 端口上的状态页和设置页。它们用的是普通 HTTP Basic 认证,所以请把listen_addr保持在127.0.0.1或内网。
5. 启动网关,把矿机指向它
ratum-gateway -c datum_gateway_config.json。一两秒内日志会出现 DATUM pool configuration: … tag "Lazarus",接着是 Stratum job … ready (full): … coinbaser outputs, pooled。要让它常驻,可以用 systemd:
[Unit] Description=ratum-gateway (DATUM gateway for Lazarus Pool) After=network-online.target bitcoind.service [Service] User=YOU ExecStart=/usr/local/bin/ratum-gateway -c /home/YOU/ratum/datum_gateway_config.json Restart=always RestartSec=5 [Install] WantedBy=multi-user.target
每台矿机:矿池地址 stratum+tcp://网关局域网IP:23334(运行网关的那台机器,不是我们的主机),用户名 bc1…你的地址.矿工名,密码 x。我们的 DATUM 端口 28915 只和网关通信,矿机指向那里什么也拿不到。
6. 确认我们看到了它
- 一分钟内,本站网关表会以 Ratum 网关 列出它,带版本号和提交号,名称是你的 secondary 标签。第一个份额被接受后,状态变为「在算」。
- 工作进入窗口后,你的地址会出现在矿工和下次付款里。可以在
pool.lazarus-xbt.xyz/#bc1…查询。 /api/gateways里有同一行数据,带software: {"name": "ratum-gateway", …};Lazarus MCP 的gateway_status工具可以按名称回答「我的网关连上了吗」。- 网关自己的页面
http://127.0.0.1:7152/显示矿池连接、它手里的分配,以及每台已连接的矿机。
7. 连不上矿池时
我们测试过的每个 Ratum 版本,在与矿池失联时(无论是 Prime 重启还是网络中断)行为都一样:最初 12 到 26 秒里,它继续让你的矿机算它自己构建的工作,coinbase 只付给 mining.pool_address。之后才断开矿机,矿池恢复后矿机会自动重连。在这段空档里找到的区块不是矿池区块:我们看不到它,窗口里的任何人都不会从中得到付款。所以 pool_address 应该填你自己的地址:这样的区块付给你,这很公平,因为那是你的工作。如果填我们的地址,它会落进矿池钱包,却记不到任何人名下。我们很少重启 Prime,而且只在出块之后立刻重启;这个空档也已报告给 Ratum 的作者。
8. 故障排查
connecting to DATUM pool datum-beta1.mine.ocean.xyzdatum段缺失或拼错,Ratum 退回了内置默认值(OCEAN)。按上面的配置填好pool_host、pool_port与pool_pubkey。- 刚连上就
DATUM connection ended,本站也看不到你的网关pool_pubkey不对。握手是用我们的公钥加密的,别家矿池的公钥(或旧的副本)在任何工作开始之前就会被拒绝。请从“接入”一节重新复制公钥。 no work is served until it connects/disconnecting stratum clients
开着pooled_mining_only(请保持开启),而网关连不上datum.lazarus-xbt.xyz:28915。检查出站 TCP 28915 和 DNS。恢复后矿机会自动重连。- 矿机能连上,但一直收不到任务
节点还在同步,或者不是 BLAKE2b 版 Knots:节点模板里没有!blake2b规则之前,Ratum 不下发任何工作。请为本链运行 Bitcoin Knots 29.4.2 并等它同步完成。 - 启动时
Address already in use
有别的程序占了端口。Ratum 还会开一个矿工查询端口api.miner_listen_port(默认 8000);改掉它或 API 端口即可。 - 某个矿工的授权被拒
这是require_address_username在起作用:第一个.之前的部分不是地址。请用bc1…你的地址.矿工名。不开这个检查的话,份额会被接受,但记在一个谁也收不到钱的名字上。 - 本站网关表上有少量
bad-coinbase-outputs或过期拒绝
Prime 刚重启或链上出了新块之后属正常:之前的任务带的是旧的分配。几秒内消失,不会损失任何记账。 - 链拒绝你的区块,或网关因 #419 被拒
你的节点早于 Knots 29.4.2,不认识长 coinbase 成熟期规则。升级节点后重连,拒绝会自动解除。
9. 换用 Ratum,或换到 Lazarus
从 C 版网关(CONVOY、iohzrd、FlyTheElephant 或 StartOS):停掉 datum_gateway,用同一个文件启动 ratum-gateway -c;如果 8000 端口已被占用,再加上 api.miner_listen_port。收益跟着地址走,不跟着网关走,所以已在窗口里的工作仍然是你的。新网关有新的密钥,会在本站网关表上显示为新的一行,旧的那行变为离线。
从别家矿池的 Ratum 配置(Omega、B2Pool、P2Block、AlphaPool):只改 datum 段,换成上面的主机、端口和公钥;如果设置了 pool_url 也一并改掉。指向别家公共网关的 secondary 标签在这里没有意义,留着或删掉都行。P2Block 的分支有 solo 模式:把 mining.solo 设为 false,否则网关根本不连矿池。AlphaPool 的 28916 端口和它的公钥在这里无效,我们的是 28915。
换回去就是反过来改。没有任何锁定:你在这里做的工作,只要还在窗口里,就由我们找到的区块支付。
我们实测了什么
| 版本 | 区块、收款人 | 只付矿池的完整工作 | 失联时 |
|---|---|---|---|
| iohzrd 0.1.28 | 5 / 5 记为 split,13–14 个收款人 | 4 毫秒 / 222 秒 线上 0.020% | 不经矿池 18 秒 |
| iohzrd 0.1.39 | 10 / 10 记为 split,13–15 个收款人 | 0 毫秒 / 230 秒 线上 0.030% | 不经矿池 26 秒 |
| iohzrd 0.1.53(最新正式版) | 7 / 7 记为 split,13–15 个收款人 | 3 毫秒 / 229 秒 线上 0.084% (份额尚少) | 不经矿池 17 秒 |
| iohzrd master 0.1.54 | 9 / 9 记为 split,13–15 个收款人 | 6 毫秒 / 227 秒 线上 — | 不经矿池 19 秒 |
| B2Pool 分支(ocminer)0.1.25 | 9 / 9 记为 split,13–15 个收款人 | 9 毫秒 / 227 秒 线上 0.000% (份额尚少) | 不经矿池 19 秒 |
| P2Block 分支 0.1.29 | 7 / 7 记为 split,13–15 个收款人 | 6 毫秒 / 232 秒 线上 — | 不经矿池 20 秒 |
方法:一条启用 BLAKE2b 与长 coinbase 成熟期规则的 Bitcoin Knots 29.4.2 regtest 链、一份我们的 Prime(与矿池运行的版本相同)、每个网关版本,以及两台 CPU 矿机;每个版本约八分钟,每个模板都带交易,另有对手每 15 秒出一个块。检查项:公钥锁定连接;每个记为 split 的区块在链上的支付与记录完全一致;DATUM 费率路径与奖励;地址.矿工名 与 地址~标签.矿工名 用户名;Prime 重启;以及没有任何拒绝。「线上」是在只付给矿池的完整任务上被接受的份额所占比例,取自我们 Prime 对该版本所有已连接网关的计数。我们推荐的 iohzrd C 版网关按同一口径为 0.018%。每个 Ratum 新版本我们都会重跑同一套测试并更新此表。
接入
用户名只有一个:你的地址。
两条路,一条规则。你的 stratum 用户名就是收款地址。
推荐 · 零手续费 · 拿奖励
你自己的 DATUM 网关
0%
由你的节点组块并挑选交易。Lazarus 只规定 coinbase 分配并验证你的 shares。On top of your full share, every block credits you a cut of the public stratum’s fee.
下方配置
最简单 · 指向即可
公共 stratum
25%
我们的节点、我们的模板。任意 BLAKE2b ASIC 或矿机。同一个 TIDES 窗口——以后改走网关,已接受的工作跟着走。12.5 points of the fee goes to the DATUM miners; run a gateway and you are on the receiving end.
下方配置
要么全有,要么没有
独挖
7.5%
没有窗口,不分享。找到区块,整笔奖励扣除手续费归你;找不到就什么也没有。
下方配置
选哪个 DATUM 网关
如果你自己跑节点,从下面选一个。四者都支持 BLAKE2b,无需补丁即可连到这里。用公共 stratum 可跳过这一段。
-
推荐 iohzrd Master
c031568;StartOSpow_0.4.1_23用的是较早的7491a50。每台矿机都拿到完整分账,并按区块 weight 与 sigop 上限裁剪,所以找到的区块付给整个窗口。我们对自己的 Prime 实测:每个新区块之后约 20 毫秒内,以及矿池分账迟到期间,它可能下发只付给矿池的任务。 -
FlyTheElephant Master
a5f28aa:CONVOY 的 BLAKE2b 代码加上 FlyTheElephant 的修复。每台矿机都拿到完整的分账 coinbase,并按区块 weight 与 sigop 上限裁剪,所以找到的区块会付给整个窗口。和目前所有 C 语言网关一样,每个新区块之后的片刻,以及矿池分账迟到期间,它可能下发只付给矿池的任务;一个单文件补丁即可修复。安装指南与测试结果。 -
CONVOY Master
ac9b70c。对它能识别的矿机(包括蚂蚁 A3)仍按固件分档,所以这些矿机找到的区块可能只付给前 ~17 位矿工。和其他 C 语言网关一样,每个新区块之后约 20 毫秒内,以及矿池分账迟到期间,它可能下发只付给矿池的任务。
CONVOY 的入门指南把 Bitcoin Knots 和 DATUM 网关写得更细——节点、编译网关、再把矿机指过去。读中文版,或看 English。网关的主机、端口和公钥用本页下面的;Lazarus 的费率与 DATUM 奖励以本页为准,不是他们的。
- Stratum
- 用户名
- bc1q…你的地址.矿机名
- 密码
- x
- 手续费
- 25% 的窗口份额,在 coinbase 内扣除. 12.5 points of it is credited to the DATUM miners in the window — run your own gateway and it is paid to you instead
- 算法
- BLAKE2b — Sia 风格区块头,不是 SHA-256d
- 支付
- 你在 TIDES 窗口中的份额,写入矿池找到的每个区块的 coinbase。见 下一次支付。
我们在 :23334 上的公共网关本身就是这套 Prime 上的 DATUM 网关——你会在 网关 里看到它——所以这里的工作和你自建网关的工作会记入同一地址的同一窗口。新会话从难度 4096 开始;vardiff 随后约每 20 秒按 2× 向你的算力靠拢。
你来组块。我们只分配 coinbase。运行 Bitcoin Knots 和 DATUM 网关,把网关指向 Prime,把矿机指向网关。由你的节点选交易;Prime 把窗口的 coinbase 分配交给你的网关,验证每一份 share,并记入你的地址。如果你的矿机找到区块,那是你的模板,里面有所有人的支付。该运行哪个网关。更长的安装说明:CONVOY 入门(中文) / English。
DATUM 奖励。 The public stratum pays a 25% fee. 12.5 points of it is not kept by the pool: on every block found it is credited to every DATUM miner holding work in the window, pro rata by DATUM work. It lands on your balance whether or not your address made that block’s coinbase, and is paid with your next output once it clears the minimum. Small gateways get their exact share; nobody is skipped.
- 主机
- datum.lazarus-xbt.xyz
- 端口
- 28915
- 公钥
- —
- 手续费
- 0% 的窗口份额 — no cut versus 公共 stratum
- 奖励
datum_gateway_config.json 中的 stratum 与 datum 段
- 为本链运行 Bitcoin Knots,打开
server=1,并提供网关能读的 cookie 或 RPC 用户。 - 编译网关,把上面的
stratum和datum段合并进配置,并把mining.pool_address设为你的收款地址。分配未点名的剩余金额会到那里。原版 DATUM 若省略stratum.vardiff_min会默认 16384——那既是下限也是起点,Prime 无法再调低。请设为 4096,让新会话从那里开始;更快的机器 vardiff 仍会往上走。 - 把矿机指向你网关的 stratum(通常是
stratum+tcp://127.0.0.1:23334)。用户名为地址.矿机名:第一个.之前的部分是收款人,必须是本链接受的地址。 - 在 网关 下看到你的网关,在 矿工 下看到你的地址。原版构建仍可能发出一份省略窗口的 coinbase 任务:当前的 iohzrd、CONVOY 和 FlyTheElephant 仅在矿池分配来晚时如此。旧的 FlyTheElephant / OCEAN 系
v0.4.1-beta构建(没有+lazarus-split)仍会在每个高度的第一份任务上如此。Prime 会接受这份工作,若这样的任务找到了区块,会记下矿池随后欠窗口的金额。 - 这四步之外,更完整的 Knots + DATUM 说明见 CONVOY 入门指南(中文),然后回到这里拿 Lazarus 的主机、端口、公钥和配置片段。用 Ratum?它有单独的指南,整份配置都已指向这里。
按网关设置,钱付给谁
| 网关设置 | 矿池收到的用户名 | 付给 |
|---|---|---|
pool_pass_full_users: true(上面的配置) |
矿机自己的 stratum 用户名,原样传递 | 每位矿工自己的地址,同一网关后的矿工分开收款 |
pool_pass_workers: truepool_pass_full_users: false |
网关的 mining.pool_address,然后是 . 和矿机用户名 |
付给网关地址;矿机名仍会到达矿池 |
两者都为 false |
仅网关的 mining.pool_address |
付给网关地址;矿池收不到矿机名 |
独挖是赌注,不是工资。你的 shares 买不到任何东西——只证明你在干活。其中一份成为区块时,该块的全部奖励扣除我们的手续费,付给用户名里的地址,并写在该块自己的 coinbase 里。在那之前,无论挖多久都没有收入。矿池挖矿让你稳定分得矿池找到的每个块;独挖很少发生、一旦发生就很大。多数矿工应留在矿池。
- 用户名
- bc1q…你的地址.矿机名
- 密码
- x
- 手续费
- 7.5% 的区块奖励,作为你解出的 coinbase 中的一笔输出。块与块之间既不扣留,也不欠你任何东西。
- 支付
- 区块的其余部分——补贴与其中每一笔交易费——直接到你的地址,满 6,481 个确认后可花费(区块 973,440 之前为 100 个)。
- 你的几率
- 按你的算力预计出块时间显示在你的 数据 页。
独挖工作故意不进入 TIDES 窗口。若你想两者都要,可把一部分矿机指向独挖、其余指向矿池端口;矿池的继续赚窗口份额,独挖的去追整块。你的独挖 shares 不会出现在 矿工 或 下一次支付——请看 独挖。
已经在跑自己的节点?那就直接对着它独挖——那不需要我们,也不该付钱给我们。这些端口是给不想跑节点、又想独挖的矿工。