lukechilds / docker-electrumx

Run an Electrum server with one command
MIT License
109 stars 124 forks source link

Can only connect from Electrum Wallet via hostname, not ip address (internal nor external) #42

Closed maltokyo closed 4 years ago

maltokyo commented 4 years ago

My setup is as follows:

Ubuntu Server 18.04 - hostname: myhost and IP 192.168.1.3 with fully synched full node and ElectrumX hosted (and the router has public IP - let's say with public IP1.2.3.4 with port forwarding for 50002 "on", and pointing to 192.168.1.3 )

Mac with Electrum wallet - IP 192.168.1.4 (same network as above, same router)

From my mac, I can connect to from Electrum wallet and use it perfecting using server as myhost:50002 but CANNOT connect with 192.168.1.3:50002 or 1.2.3.4:50002

Is there something I miss or some way to diagnose the issue? From home network, all is ok as I can just use the hostname that works, but I cannot connect from same network with IP or from external network with public IP. Please advise how I could troubleshoot this, I cant find any connection error in the logs of ElectrumX.

Docker file:

version: "3"

services:
  electrumx:
    image: lukechilds/electrumx
    ports:
      - "50002:50002"
    volumes:
      - /some/drive/zElectrumX_data:/data
    environment:
      - DAEMON_URL=un:pw:43782
      - COIN=BitcoinSegwit
maltokyo commented 4 years ago

Interestingly, testing the connection from mac works for both the host and the IP, so I really dont get why one works and the other does not.

Test connection using command: openssl s_client -connect myhost:50002 gives result:

% openssl s_client -connect myhost:50002      
CONNECTED(00000005)
depth=0 O = ElectrumX
verify error:num=18:self signed certificate
verify return:1
depth=0 O = ElectrumX
verify return:1
---
Certificate chain
 0 s:/O=ElectrumX
   i:/O=ElectrumX
---
Server certificate
-----BEGIN CERTIFICATE-----
MIIDCTCCAfGgAwIBAgIUFP3btXX.........................

Test connection using command: openssl s_client -connect 192.168.1.3:50002 gives same result:

% openssl s_client -connect 192.168.1.3:50002
CONNECTED(00000003)
depth=0 O = ElectrumX
verify error:num=18:self signed certificate
verify return:1
depth=0 O = ElectrumX
verify return:1
---
Certificate chain
 0 s:/O=ElectrumX
   i:/O=ElectrumX
---
Server certificate
-----BEGIN CERTIFICATE-----
MIIDCTCCAfGgAwIBAgIUFP3.............
lukechilds commented 4 years ago

I'm not sure I understand the issue, in you second comment it looks like everything is working as expected. https://github.com/lukechilds/docker-electrumx/issues/42#issuecomment-550073919

maltokyo commented 4 years ago

Thank you for your reply. No it doesn’t work connection from electrum with IP address. Only using host name. In the second comment I test the connection using host name and IP address with SSL and you can see that both work fine. Only Electrum won’t connect via the same SSL.

maltokyo commented 4 years ago

@lukechilds this was resolved here https://github.com/kyuupichan/electrumx/issues/919 Just deleting the SSL Cert cache for the related connection wallet data folder solved it. Closing here.