如何验证节点上 RSK 运行 的版本?

How do I verify the version of RSK running on a node?

我可以通过 RPC 访问 RSK 节点的私有部署, 但不能直接访问文件系统。 我如何检查该系统上 运行 的 RSK 节点版本?

没有直接访问文件系统, 您无法验证 RSKj 的版本(RSK 节点实现) 那是那台机器上的运行。 但是,您可以检查它 声称 的版本是 运行, 使用 RPC 请求:web3_clientVersion.

例如,使用publicpublic节点:

curl \
  -X POST \
  -H "Content-Type:application/json" \
  --data '{"jsonrpc":"2.0","method":"web3_clientVersion","params":[],"id":1}' \
  https://public-node.rsk.co/

(将 https://public-node.rsk.co/ 替换为 目标部署的 RPC 端点 URL。)

这应该输出以下内容:

{"jsonrpc":"2.0","id":1,"result":"RskJ/3.0.0/Linux/Java1.8/IRIS-ba01ea2"}

然后您可以在 RSKj github 存储库上查看 RSKj 的标记版本。 例如,上面的输出对应于 https://github.com/rsksmart/rskj/releases/tag/IRIS-3.0.0


请注意,如果您看到以下输出:

{"jsonrpc":"2.0","id":1,"result":"RskJ/2.2.0/Linux/Java1.8/PAPYRUS-dev"}

这意味着您仍然是 运行 旧版本的 RSK 节点, 在 Iris 共识改变之前, 你应该升级到最新版本并重新同步你的块!