как подключиться к etherium geth node в локальной сети (не localhost)

У меня geth работает в локальной сети (отдельная машина). curl'ing на http: // localhost: 8545 работает нормально. Как мне подключиться к этому узлу geth с другой машины в моей частной сети? Скручивание до http://10.x.x.x:8545 просто возвращает отказ в соединении.

Сам geth запущен и работает на другом компьютере 10.x.x.x, а geth attach, curl и т. д. все работают на localhost в этом окне.

например это работает:

curl -X POST -H Content-Type: application / json --data '{jsonrpc: 2.0, method: web3_clientVersion, params: [], id: 67}' http: // localhost: 8545

результат: ➜ {jsonrpc: 2.0, id: 67, результат: Geth / v1.9.17-unstable-5b081ab2-20200714 / darwin-amd64 / go1.13.6}

это не удается (с другого компьютера в этой частной сети):

curl -X POST -H Content-Type: application / json --data '{jsonrpc: 2.0, method: web3_clientVersion, params: [], id: 67}' http://10.xxx:8545

результат ➜ curl: (7) Не удалось подключиться к порту 10.x.x.x. 8545: В соединении отказано

(используя реальные IP вместо x, конечно)

В противном случае оба узла обмениваются данными (ssh, просмотр веб-сайтов, совместное использование файлов и т. Д.)


person rjrunner44    schedule 16.07.2020    source источник


Ответы (1)


Вам нужно будет включить флаг --rpcaddr, чтобы принять соединение. откуда-то / из любого места, --wsaddr флаг для подключений через веб-сокеты.

Пример:

$ geth --rpc --rpcaddr 0.0.0.0
$ geth --rpc --wsaddr 0.0.0.0
$ geth --rpc --rpcaddr 0.0.0.0 --wsaddr 0.0.0.0

Это позволяет вам принимать соединения от любого интерфейса и сети. Вы можете использовать geth attach, curl, web3 provider.

person Ming    schedule 10.12.2020