-1

我已经设置了 bitcoind,我可以运行 bitcoin-cli 命令,我也可以通过 RPC 发出请求。

curl --user username:password --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "getblockchaininfo", "params": [] }' -H 'content-type: text/plain;' http://127.0.0.1:18332

它也有效。但是通过公共 ip 连接只是返回Connection refused

curl --user username:password --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "getblockchaininfo", "params": [] }' -H 'content-type: text/plain;' http://public-ip:18332

它返回

curl: (7) Failed to connect to external-ip port 18332: Connection refused

这是我的 bitcoin.config 文件的样子,

blocksonly=1
prune=1200
rpcauth=username:hash
rpcallowip=0.0.0.0/0

[main]

[test]

[regtest]

比特币节点正在运行一个 ubuntu 服务器,其他应用程序/端口允许外部连接,除了所有 bitcoind RPC 端口有没有解决这个问题?

4

1 回答 1

1

RPC 服务默认只绑定到本地接口。

如果要更改它,请在配置中使用 rpcbind=<ip-addr>。

但是,请注意,公开暴露 rpc 端口是一种安全风险。

于 2021-02-12T20:37:38.280 回答