ClawNetworkClawNetwork

配置参考

CLI 参数、环境变量和网络配置。

CLI 参考

claw-node init

参数默认值说明
--networkdevnet网络:devnettestnetmainnet
--data-dir~/.clawnetwork数据目录

claw-node start

参数默认值说明
--network, -ndevnet网络:devnettestnetmainnet
--rpc-port9710RPC 端口
--p2p-port9711P2P 端口
--bootstrap(内置)额外引导节点地址(multiaddr 格式)
--singlefalse单节点模式
--allow-genesis(网络预设)当没有链数据时允许创建新的创世块。默认值:devnet 为 true,mainnet/testnet 为 false
--skip-version-checkfalse跳过启动时的版本检查(仅用于开发/紧急情况)

config.toml 参考

节点配置文件位于 ~/.clawnetwork/config.toml。由 claw-node init 自动创建并预置合理的默认值。CLI 参数会覆盖配置文件中的值。

结构

# ClawNetwork 节点配置
# CLI 参数会覆盖这些值。

[node]
network = "mainnet"  # 加入的网络:"devnet"、"testnet" 或 "mainnet"

[network]
rpc_port = 9710      # JSON-RPC HTTP 服务器端口
p2p_port = 9711      # P2P 网络端口
# bootstrap = ["/ip4/1.2.3.4/tcp/9711"]  # 额外的引导节点(multiaddr 格式)
# single = false     # 强制单节点模式(无 P2P)

[log]
format = "text"      # 日志格式:"text" 或 "json"
# filter = "claw=info"  # 日志级别过滤(如 "claw=debug,other=info")

字段参考

区间字段类型默认值说明
nodenetwork字符串"devnet"网络预设:"devnet""testnet""mainnet"。链初始化后无法更改。
networkrpc_port整数9710JSON-RPC HTTP 服务器绑定的端口。
networkp2p_port整数9711P2P 网络套接字绑定的端口。
networkbootstrap字符串数组(内置)额外的引导节点,采用 multiaddr 格式(如 /ip4/1.2.3.4/tcp/9711)。内置引导节点会自动使用。仅在需要添加自定义引导节点时取消注释。
networksingle布尔值false如为 true,强制单节点模式(无 P2P)。主网/测试网引导节点仍会被禁用。
logformat字符串"text"日志输出格式:"text"(人类可读)或 "json"(结构化)。
logfilter字符串(未设置)日志级别过滤指令。示例:"claw=info""claw=debug,other=warn"。详见 tracing-subscriber 语法文档。

引导节点

主网引导节点

[network]
bootstrap = ["/ip4/178.156.162.162/tcp/9711"]

自定义引导节点

bootstrap 数组中添加自定义引导节点:

[network]
bootstrap = ["/ip4/YOUR_IP/tcp/9711"]

或使用 CLI 参数(优先级更高):

claw-node start --bootstrap /ip4/YOUR_IP/tcp/9711 --bootstrap /ip4/OTHER_IP/tcp/9711

环境变量

变量默认值说明
RUST_LOGclaw=info日志级别
CLAW_RPC_URLhttp://localhost:9710RPC 端点
CLAW_RPC_CORS_ORIGINS仅 localhost允许的 CORS 来源(逗号分隔,公共 RPC 可设为 *

端口

端口协议说明
9710TCP/HTTPJSON-RPC API
9711TCPP2P 网络

CORS 配置

默认情况下,节点仅允许来自 localhost 的请求(http://localhost:*http://127.0.0.1:*)。这对本地开发是安全的,但对外提供公共 RPC 时需要额外配置。

通过 CLAW_RPC_CORS_ORIGINS 环境变量控制哪些来源可以访问节点的 RPC API。

允许所有来源(公共 RPC)

CLAW_RPC_CORS_ORIGINS=* claw-node start --network mainnet

适用于需要被任意 dApp 或浏览器访问的公共 RPC 节点。

允许指定来源

CLAW_RPC_CORS_ORIGINS=https://myapp.com,https://explorer.example.com claw-node start --network mainnet

逗号分隔的来源列表,仅允许来自这些域名的请求。

systemd 示例

在 systemd 服务文件中添加 Environment 指令:

[Service]
ExecStart=/usr/local/bin/claw-node start --network mainnet
Environment="CLAW_RPC_CORS_ORIGINS=*"

Docker 示例

docker run -d \
  -e CLAW_RPC_CORS_ORIGINS=* \
  -p 9710:9710 -p 9711:9711 \
  ghcr.io/clawlabz/claw-node:latest start --network mainnet

注意: 这与行业惯例一致——类似于 Geth 的 --http.corsdomain 和 Substrate 的 --rpc-cors 参数。

RPC 限制

限制
速率限制100 请求/秒/IP
请求体大小256 KB
P2P 消息大小16 MB
最大连接数50