Unable to connect to seed node

+2 votes
Hi,

I've got my first server set-up. I'm just unable to connect my second server to the seed node. Below is the error I'm getting:

---------------------------------------------------------------------------------------------

MultiChain Core Daemon build 1.0 alpha 16 protocol 10003

Retrieving blockchain parameters from the seed node 10.0.2.15:5767 ...
Error: Couldn't connect to the seed node 10.0.2.15 on port 5767 - please check multichaind is running at that address and that your firewall settings allow incoming connections.
---------------------------------------------------------------------------------------------

I'm pretty sure it is not a firewall problem because:

a. I used my personal desktop with my firewall off and still got the same error

b. It worked previously (maybe about 2-3 weeks ago) with the same setup without any issue.

c. I've tried using both the alpha-15 and alpha-16 versions but end up with the same problem.

Any help is much appreciated, thanks!
asked Feb 10, 2016 by V

1 Answer

+1 vote

It looks like the IP address that the first node gave you was wrong, based on its local network rather than globally accessible IP address. (MultiChain applies various heuristics to guess which IP address is the right one, but they can be wrong.) If you run ifconfig -a you should see an alternative IP address to use.

answered Feb 10, 2016 by MultiChain
Thanks a ton, it works now :)
I am having the same problem, even after explicitly specifying the IP and port on the first server:

multichaind chain1 -bind=172.16.0.12 -port=33333

This works on and off - sometimes it works and I get:

Retrieving blockchain parameters from the seed node 172.16.0.12:33333 ...
Blockchain successfully initialized.

Other times it is:

Error: Couldn't connect to the seed node .....

Please advise
You don't need to bind to a specific address - MultiChain will bind to all available IP addresses by default. In any event, are you seeing this intermittent behavior from the same second node, or from different ones? If the latter this could be due to firewall settings on the host server.
From the second node - sometimes it connects and works fine, other times it does not.

I have no firewalls in place.

I should also add, I am running the server instances in docker containers. Servers 1 and 2 are obviously on the same subnet, and I have set the default forward policy to ACCEPT on the docker host ...

Please advise, thanks.
I'd also like to add, that every time I get the failure and error

Error: Couldn't connect to the seed node .....

I can successfully telnet to server1. Are there instructions I can run over telnet, to test?

Please advise, thanks.
You can test via telnet by running telnet to connect the appropriate port for the peer-to-peer protocol, and seeing if you get a response.
I can telnet and I can connect to the port, and get a prompt on server1. What commands can I then run please?

For example, with SMTP it is first of all HELO《server name》- that kind of thing. Is there a CLI reference guide for Multichain?

Please advise, thanks.
I'm afraid you won't be able to manually communicate using the P2P protocol, but if you can telnet to the peer-to-peer port, but can't connect to it using MultiChain, that may suggest a problem that we need to look into. Please confirm and I'll get in touch with the team to see what we need to diagnose this.
Perfect, thanks! I can confirm that at ALL times I can telnet to the port, but some of the time the multichaind connection fails.

Thanks!
OK, thanks. Here's what we need:

a) Always run multichaind with the options -debug=mchn -debug=mchnminor -debug=net

b) Send us the pair of debug.log files (inside the individual blockchain's directory) from the two nodes for one case where it connects successfully - you can zip them to make them smaller.

c) Send us the same pair of files for one case where it connects unsuccessfully.

Using your email address on this system, I will email you the address to send the files back to.
Thanks for sending your files. It looks like the most likely explanation is you had an old params.dat file in the blockchain directory on the second server, so you were trying to make a connection between two incompatible blockchains. Please try removing the entire ~/.multichain/[chain-name] directory on the node you are trying to connect from, then recommence the process of connecting.
That's fixed it! :-)  Many thanks! I was unaware that you had to cull the entire ~/.multichain/[chain-name] directory each time for a new chain. Is there a FAQ / gotchas section that information can be added to please?
Great - thanks. This Q&A is the FAQ so hopefully someone can find the information in future.
Glad it helped me.!!
...