Ethereum – How to Connect MyEtherWallet to a Private Blockchain

go-ethereummyetherwalletnodejsnodesprivate-blockchain

I am unable to make etherwallet v3.4.2 to connect to my private blockchain.

The way I run my private network: (please note that it works perfectly fine)

geth --port 3000 --networkid 23422 --identity node1 --verbosity 3 --nodiscover \
--nat none --datadir="/home/MyEthereumEbloc" --rpc --rpcaddr="localhost" --rpcport \
8545 --rpccorsdomain="*" --ipcapi "admin,eth,net,web3,debug" \
--rpcapi "admin,eth,net,web3,debug" --autodag=true 

In order to use etherwallet in private chain setup, I completed following guide and answer : As guided, I am able to get blank page for the http://< my_ip >:8000/api.mew and the index.html opens on http://< my_ip >:8000. Everything is in order and fine. But the moment I open the webpage I see following error on the output of node runLocalServer.js and this error message keep repeat itself.

node runLocalServer.js
{ [Error: connect ECONNREFUSED]
  code: 'ECONNREFUSED',
  errno: 'ECONNREFUSED',
  syscall: 'connect' }
{ [Error: connect ECONNREFUSED]
  code: 'ECONNREFUSED',
  errno: 'ECONNREFUSED',
  syscall: 'connect' }

In addition to that as an example, I create new account address on etherwallet. And inside geth I tried to send some ether to that address. Transaction successfully completed, but on the etherwallet, account balance of that account is still empty. Also I send a transaction inside etherwallet, which won't show up on my private blockchain.

I have been told that etherwallet can't find my eth node, hence there is disconnection between them. But I could not figure it how I could fix this problem.

Setup Custom Node:

On the website at http://< my_ip >:8000, Top Right Box => Add Custom Node:
Than I set Node Name: node1, URL: https://<my_ip> and port: 8545 as on the example window popped up.

enter image description here

After that on the top of the page I see the following error:

enter image description here

Please note that I tried < my_ip > as 127.0.0.1 and original ip address of my server but both showed that error. In order to connect to the local node, because of the --rpc flag I assume only localhost can connect into my node. So maybe I need to make modifications on Response.js file via web3 to connect my node?

Thank you for your valuable time and help. I am sorry if there is grammar errors.

Best Answer

I think your main issue is, you are binding only to the localhost address, are you running geth on a remote server? or are you running it on your local machine and also running the mew_relay on the same machine?

If you are running your geth on a remote server and running the relay on your local machine id suggest changing to --rpcaddr="0.0.0.0" then try again by using your remote server IP for the host, "0.0.0.0" will bind the rpc to all available addresses on that machine.

For Setup Custom Node: you are trying to use your ip "127.0.0.1" as https. Try downloading the latest version dist-v3.4.2.zip of mew from here and open the index.html file now add a custom node by typing your URL as "http://127.0.0.1" it should work now.

Online version of mew won't work because it is on HTTPS and HTTPS won't allow you to communicate with HTTP URLs. Therefore you have to download and run mew locally.

Don't forget to check the Custom checkbox instead of ETH.

Related Topic