边缘订阅者连接 (CLI)
旧版 CLI 订阅 — 将于 2026 年 8 月 30 日停用
本页面适用于已在使用 CLI / 链上席位 订阅方式(doublezero-solana shreds pay)的用户。该系统将于 2026 年 8 月 30 日停用。
新订阅请使用 Subscribe to shreds (Edge) 上的门户流程。
连接到 DoubleZero 即表示我同意 DoubleZero 使用条款。请注意,数据仅供您内部使用,不得转发(参见第 2(e) 节)。
步骤 1:DoubleZero 设置
1. 完成设置
安装 Solana CLI。
按照设置说明安装和配置 DoubleZero 客户端。
如果您之前已设置过 DoubleZero,请确保使用 sudo apt update && sudo apt install doublezero-solana 获取最新的 Doublezero-Solana CLI。
2. 配置防火墙
允许 GRE、BGP、PIM 和 shred 流量。
iptables:
sudo iptables -A OUTPUT -p gre -j ACCEPT
sudo iptables -A INPUT -i doublezero1 -s 169.254.0.0/16 -d 169.254.0.0/16 -p tcp --dport 179 -j ACCEPT
sudo iptables -A OUTPUT -o doublezero1 -s 169.254.0.0/16 -d 169.254.0.0/16 -p tcp --dport 179 -j ACCEPT
sudo iptables -A OUTPUT -o doublezero1 -p pim -j ACCEPT
sudo iptables -A INPUT -i doublezero1 -p udp --dport 7733 -j ACCEPT
sudo iptables -A INPUT -i doublezero0 -p udp --dport 44880 -j ACCEPT
UFW:
sudo ufw allow proto gre from any to any
sudo ufw allow in on doublezero1 from 169.254.0.0/16 to 169.254.0.0/16 port 179 proto tcp
sudo ufw allow out on doublezero1 from 169.254.0.0/16 to 169.254.0.0/16 port 179 proto tcp
sudo ufw allow in on doublezero1 to any port 7733 proto udp
sudo ufw allow in on doublezero0 to any port 44880 proto udp
UFW 没有 pim 协议支持。出站 PIM 由 UFW 的默认出站策略允许;如果您拒绝出站流量,请在 /etc/ufw/before.rules 中添加 PIM 的原始规则。
3. 启用协调器
协调器监控链上状态,并在您的席位被分配时自动配置隧道。默认情况下未启用。
doublezero enable
步骤 2:设置钱包
1. 创建 Solana 密钥对
doublezero-solana CLI 使用标准 Solana 密钥对进行链上席位管理。如果您还没有:
solana-keygen new
这会写入 ~/.config/solana/id.json。要使用不同路径,请在任何 doublezero-solana 命令中传入 --keypair <path>。
打印您的钱包地址:
solana address
2. 为钱包充值
您的钱包需要两种代币:
- SOL — 用于 Solana 交易手续费。将 SOL 转入上面打印的钱包地址。
- USDC — 用于席位资金。CLI 从您钱包的关联代币账户(ATA)中提取主网 USDC 铸币(
EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v)。
步骤 3:购买席位
1. 查找最近的设备
在购买席位之前,确定从您的机器延迟最低的设备:
doublezero latency
记下延迟最低结果中的设备代码(例如 <Device_Name>)。您在购买席位时将使用它。
2. 查看价格
在投入资金之前查看当前设备价格。定价包含两个部分:基础城域价格 和 每设备溢价。您也可以在此处查看价格和可用性。
所有设备:
doublezero-solana shreds price
指定设备:
doublezero-solana shreds price --device-code <Device_Name>
doublezero-solana shreds price --device <PUBKEY>
某城域的所有设备:
doublezero-solana shreds price --metro <PUBKEY>
输出列:Device Code、Metro Code、Metro Name、Status、Settled Seats、Available Seats、Base Price (USDC)、Premium (USDC)、Epoch Price (USDC)。
纪元价格是该设备上每个席位每纪元的总费用(基础 + 溢价)。使用 --wide 显示完整公钥,或使用 --json 输出 JSON 格式。
3. 购买席位
通过单个命令购买席位。此操作将初始化您的席位、为托管账户充值并请求分配:
doublezero-solana shreds pay \
--device-code <Device_Name> \
--client-ip <Target_IP> \
--amount <Cost_Of_Seat>
参数:
| 标志 | 描述 |
|---|---|
--device <PUBKEY> |
通过公钥指定目标设备(与 --device-code 互斥) |
--device-code <CODE> |
通过可读代码指定目标设备(例如 <Device_Name>) |
--client-ip <IP> |
您机器的公共 IPv4 地址 |
--amount <USDC> |
充值的 USDC 金额(十进制格式,例如 100 = 100 USDC)。必须达到最低纪元价格。 |
--source-token-account <PUBKEY> |
自定义 USDC 来源账户(默认为您钱包的 ATA) |
--accept-partial-epoch |
跳过纪元剩余时间警告(见下文) |
--fee-payer <PATH> |
使用不同的钱包支付 SOL 交易手续费 |
--dry-run |
模拟交易而不实际执行 |
--with-compute-unit-price <PRICE> |
设置计算单元价格,以便在拥堵时更快被纳入 |
席位分配后,守护进程会自动建立 GRE 隧道。使用以下命令检查连接:
doublezero status
纪元时间
席位按 Solana 纪元(约 2 天)分配。如果您付款时当前纪元剩余不足 10%,CLI 会警告您的席位将立即分配,但仅覆盖当前纪元的剩余部分。下一个纪元开始时,将从您的托管账户中扣除一笔单独的费用。
建议一次充值超过 1 个纪元的资金,以免失去席位。您可以在此处查看当前纪元的剩余时间。
您可以使用 --accept-partial-epoch 跳过此警告。
保持托管账户资金充足
如果结算时您的托管账户余额低于纪元价格,您的席位将不会被分配,隧道将被拆除,并且您将失去累积的任期。任期决定您在未来纪元中的优先级 — 失去任期意味着您将作为新用户重新竞争。
您可以为此账户超额充值以覆盖多个纪元。每次结算从您的托管账户中扣除一个纪元的价格,剩余余额结转。例如,充值 5 倍的每纪元价格可以在无需再次充值的情况下保持席位活跃长达 5 个纪元。
要补充托管账户资金,可随时再次运行 shreds pay:
doublezero-solana shreds pay \
--device-code <Device_Name> \
--client-ip <Target_IP> \
--amount 500
请注意,Target_IP 必须是接收 shred 的机器上的公共 IPv4 地址。您可以在目标机器上运行 curl -4 ifconfig.me 之类的命令来查找。
监控席位
本节详细介绍如何通过 CLI 查看席位。您也可以使用 https://data.doublezero.xyz/api/v1/docs 来监控席位并协助管理托管账户。
查看您的活跃席位和托管余额:
您的所有席位:
doublezero-solana shreds list
按设备筛选:
doublezero-solana shreds list --device-code <Device_Name>
按客户端 IP 筛选:
doublezero-solana shreds list --client-ip <Target_IP>
按钱包筛选:
doublezero-solana shreds list --withdraw-authority <PUBKEY>
输出列:Device Code、Client IP、Tenure、Balance (USDC)、Est. Epochs Paid。
"Est. Epochs Paid" 列显示按当前价格您的余额可覆盖多少个纪元。如果价格变动,该估算值会相应调整。
提取席位和托管资金
此命令释放您的席位并关闭托管账户。您将收到当前纪元未使用部分的按比例退款,以及任何剩余的托管余额,退还至您的钱包。您将失去席位和所有累积的任期。
doublezero-solana shreds withdraw \
--device-code <Device_Name> \
--client-ip <Target_IP>
您可以使用 --device <PUBKEY> 或 --device-code <CODE> 来指定设备,与其他命令相同。
要将 USDC 退款发送到不同的代币账户:
doublezero-solana shreds withdraw \
--device-code <Device_Name> \
--client-ip <Target_IP> \
--refund-token-account <PUBKEY>
此操作不可撤销。提取后,您的席位将消失且任期重置。
Shred 地址(IP 与端口)
Leader Shred 和高质押 Retransmit Shred 将通过 doublezero1 接口的端口 7733 到达。doublezero0 接口用于单播流量。端口 5765 是来自 shred 发布者的心跳监控 — 不包含 shred 数据。
对于 shred 消费,IP 地址 标识组播流,端口 标识该流上的 UDP 服务。
以下所有 shred 流在 doublezero1 上使用 UDP 端口 7733。
您可以使用以下命令查看任何组播组的 IP:
doublezero multicast group list
Leader Shred
edge-solana-shreds:233.84.178.1:7733
Root Shred
edge-solana-root:233.84.178.16:7733
Retransmit Shred
edge-solana-retrans-eu:233.84.178.12:7733edge-solana-retrans-apac:233.84.178.13:7733edge-solana-retrans-amer:233.84.178.14:7733
GRE 隧道头部 — XDP
通过网络传输的 shred 流量经过 GRE 封装。在将数据馈入现有管道(例如基于 XDP 的 deshredder)之前,您可能需要剥离 GRE 头部。
工具和仪表盘
Edge 记分板
记分板使用 slot 级数据对 DoubleZero Edge 和其他提供商的 shred 交付速度进行基准测试,实时比较性能。使用此仪表盘查看 Edge shred 相对于其他提供商的胜率。您可以仅查看 leader shred 的结果,也可以查看完整的 feed 比较。您还可以按地区深入查看预期性能。
Edge 发布者
仪表盘左上角的"Publishing Shreds"指标显示在 DoubleZero Edge 上发布 leader shred 的所有 Solana 验证者的总质押权重百分比。您可以查看网络上每个发布者的详细信息。
Edge 订阅者、设备和活动
您可以在此页面轻松搜索您的客户端 IP,查看已订阅的席位和状态。点击具体的席位订阅可查看付款历史和活动。您还可以在 设备 页面查看可用设备,以及在 活动 页面查看所有近期活动。
数据 API 文档
如需以编程方式访问数据端点,请参阅 API 文档:https://data.doublezero.xyz/api/v1/docs。
故障排除
如果您遇到此处未涵盖的问题,请先通过现有渠道联系我们,然后再自行解决。如果您没有专属渠道,请搜索 Discord 并在需要时提交工单。
确保您的客户端是最新版本:
运行:sudo apt update && sudo apt install doublezero-solana
托管余额不足
如果结算时您的托管账户余额低于纪元价格,席位将不会被分配,隧道将被拆除,任期将丢失。请在下次结算前使用 shreds pay 补充资金。
付款后席位未分配
- 您可能在纪元后期付款 — 席位将在下一个纪元生效。
- 设备上的所有席位可能已被任期更长的在位者占用。使用
shreds price检查可用席位。 - 如果您在结算前提取了资金,则席位不具有资格。
隧道无法建立
- 验证守护进程是否运行:
sudo systemctl status doublezerod - 验证协调器是否已启用:
doublezero enable - 验证防火墙规则是否已设置(GRE、BGP、PIM、
doublezero1上的 shred 流量、doublezero0上的端口 44880) - 验证您的席位在当前纪元是否活跃:
doublezero-solana shreds list - 检查连接状态:
doublezero status
守护进程的客户端 IP 从主机的公共 IP 自动发现 — 请验证它与席位命令中使用的 --client-ip 是否匹配。
纪元警告提示
当纪元剩余不足 10% 时,CLI 会发出警告。您的选项:
- 如果您想立即获得席位,请使用
--accept-partial-epoch接受 - 等待下一个纪元以获得完整纪元的覆盖
"金额低于当前价格"
pay 命令会根据最低纪元价格(城域基础价 + 设备溢价)验证您的金额。使用 shreds price 检查当前定价并增加您的金额。
"组播用户已存在"
您已通过其他路径拥有活跃订阅。请先使用 doublezero disconnect 断开连接,然后重试 shreds pay。