运行自己的节点
为什么要运行 monerod、需要什么硬件以及如何配置
自己的节点就是 monerod 下载并独立验证整条区块链。连接到自己节点的钱包不会向任何人暴露你的 IP,也不必信任任何他人的数据。你需要:64 位的 2–4 核 CPU、4–8 GB 内存、一块 SSD,空间约 100 GB(修剪模式)或约 250 GB(完整模式;数据截至 2026 年 1 月,仍在增长),以及稳定的网络连接。
为什么
- 隐私:远程节点能看到你的 IP 以及你何时发送交易。自己的节点则不会。
- 信任:你自己检查所有规则——发行、签名、证明。没有人能给你喂一段伪造的历史。
- 帮助网络:公共节点向他人提供区块,还可以为钱包提供服务(受限 RPC)。
- 通过 P2Pool 挖矿需要自己的节点。
硬件要求
| 最低配置(修剪模式) | 舒适配置(完整模式) | |
|---|---|---|
| CPU | 64 位,2 核(树莓派 4/5 即可) | 4 核以上 x86-64——初始同步更快 |
| 内存 | 4 GB | 8 GB 以上 |
| 硬盘 | SSD 约 100 GB + 余量 | SSD/NVMe 约 250 GB + 增长余量 |
| 网络 | 不限流量;初始下载量 ≈ 数据库大小 | 开放 18080 端口以接受入站节点 |
| 初始同步 | 一天到数天 | 在好的 NVMe 上几小时到一天 |
LMDB 数据库会进行大量的随机读取。在机械硬盘上,同步可能需要几周。如果你只有机械硬盘,请使用修剪模式并保持耐心。
完整还是修剪
修剪节点保留验证新区块所需的一切,但会丢弃旧交易中 7/8 的“可修剪”数据(签名和证明——见交易结构)。它在同步时会完整验证整条链,完全适合给自己的钱包使用。节省空间:大约三分之二。唯一的区别是,修剪节点无法向他人提供完整的历史。
快速上手
- 从 getmonero.org/downloads 下载 CLI 压缩包并验证哈希(
hashes.txt,由 binaryFate 签名)。 - 运行:
./monerod --prune-blockchain --enable-dns-blocklist
数据保存在 ~/.bitmonero(Linux/macOS)或 C:\ProgramData\bitmonero(Windows)。进度显示在日志中;交互式控制台接受 status、sync_info、print_height、exit 等命令。
钱包连接到 127.0.0.1:18081——在 Feather/GUI 中就是“节点”设置。
配置文件
与其使用很长的命令行,不如使用 ~/.bitmonero/bitmonero.conf:
# 数据与修剪
data-dir=/var/lib/monero
prune-blockchain=1
db-sync-mode=safe
# P2P
p2p-bind-ip=0.0.0.0
p2p-bind-port=18080
out-peers=32
in-peers=64
enable-dns-blocklist=1
no-igd=1
# 仅供自己使用的 RPC(完全访问权限)
rpc-bind-ip=127.0.0.1
rpc-bind-port=18081
# 供他人钱包使用的公共受限 RPC(可选)
rpc-restricted-bind-ip=0.0.0.0
rpc-restricted-bind-port=18089
public-node=1
confirm-external-bind=1
# 供 P2Pool 使用的 ZMQ(可选)
zmq-pub=tcp://127.0.0.1:18083
# 通过 Tor 发送自己的交易(需要运行中的 tor)
# tx-proxy=tor,127.0.0.1:9050,16
端口
| 端口 | 用途 | 是否对互联网开放? |
|---|---|---|
| 18080 | 节点之间的 P2P | 是,如果你想帮助网络(接受入站节点) |
| 18081 | 完整 RPC(节点控制) | 否,仅限本机 |
| 18089 | 供钱包使用的受限 RPC(约定俗成) | 可选——用于公共节点 |
| 18082 / 18083 | ZMQ RPC / ZMQ pub(P2Pool) | 否 |
作为服务运行(Linux,systemd)
[Unit]
Description=Monero daemon
After=network-online.target
[Service]
User=monero
ExecStart=/opt/monero/monerod --config-file /etc/monero/bitmonero.conf --non-interactive
Restart=on-failure
RestartSec=30
[Install]
WantedBy=multi-user.target
保存为 /etc/systemd/system/monerod.service,然后运行 systemctl enable --now monerod。查看状态:/opt/monero/monerod status(该命令会自行连接到 RPC)。
通过 Tor:隐藏服务
你可以让节点以 .onion 地址访问——供你外出时自己的钱包使用,无需向互联网开放端口。在 torrc 中添加一个端口为 18089 的隐藏服务,并在 monerod 配置中添加 anonymous-inbound=your.onion:18083,127.0.0.1:18083,24,以便通过 Tor 进行 P2P 通信。详细说明见门罗币压缩包中的 ANONYMITY_NETWORKS.md。