Node is unreachable

Yes the node is running.

Your node is not reachable from the internet, so something is not configured correctly.
I suppose when you check your address and port from the node configuration on yougetsignal - the port is closed (you should put address from ADDRESS parameter to the Remote Address, port to the Port Number)?
And if you check it with IP address is it closed too?
Do you have some firewall?

Yes i understand that. It seems to come from Docker since the port is reachable with the other command (see the screenshot at the beginning of this thread).

Do you know of any way to fix Docker not working correctly or diagnosing the issue with Docker?

Both the ip adress and domain show a closed port with docker/storj, and an open port with the other command.

I do not have any firewall rules. With the other command, the port is stated as open, so it goes through correctly.

in the docker RUN command - are you specifying the IP for outbound? - there should be no IP listed in your RUN command… just to check

( other than for the )

What i mean is, like,…

Can you try to run “other command” from the docker container? (the storagenode container should be removed). I.e.

docker run -it --rm -p 28967:28967 ubuntu
apt update; apt install -y ncat
ncat -l -p 28967

and check your port on yougetsignal

Do you have a firewall enabled and running?

Affirmative, there is just the domain, no ip address specified. The domain resolves to the correct ip address.

Yes it works fine, see screenshot below :

I do not have any firewall enabled and running.

are you running in any kind of VM environment where you can do a os rebuild ?

obviously backup your identify if you do have the ability to do this…

I’m running on bare metal, I’m thinking of just giving up and running it on another computer. I just migrated to this server, I have everything backed up.

might not be a bad shout…

for myself - this is the reason i went with virtual machine to run storj docker

Please make sure that your ADDRESS option includes port, and port mapping option do not have any IP specified.

The adress includes the port (xx.xx.xx.xx:port)

What do you mean by “port mapping option” ? If you are talking about the -p parameter, it is like pasted above : “port:port/protocol” (28967:28967/tcp)

yes, I mean the port mapping option - it allows to specify the bind address. If you did not specify it - then it should work.
Maybe there is something weird with docker networking, but this will be the first time.
The usual problems are:

  • the local IP of the device doesn’t match IP in the port forwarding rule (the local IP of the device has changed after reboot, but the rule contains the previous address);
  • the external IP has changed, but your node either uses a previous IP in the ADDRESS option, or DDNS hostname is not updated;
  • the ISP placed you behind their NAT (CGNAT) - the WAN IP will not match your public IP;
  • the identity is not signed (to check - Identity | Storj Docs)
1 Like

I did specify the -p option in the command above, can you confirm that the command is correct?

Regarding the other points, unfortunately I checked everything and it doesn’t seem to be related to any of those :

The local ip matches the NAT rule, it’s a fixed local ip on the router by mac adress of the server, that’s not going to change.

The external ip resolves correctly on that domain, there’s a ddns service running and actualizing regularly (on another computer locally on the same network)

I checked for CGNAT but that doesn’t seem to be the case since the port is “open” when I use the other command (meaning it matches and goes through). Storj worked fine on the other computer too before the migration.

The identity is signed and it was working well on the other computer, I don’t get any error regarding an unsigned identity on this new machine, the identity files are in the right folder and working correctly.

I’m really at a loss, node has been offline for way too long now, I’m going to lose the data I have. I think it’s a docker problem.

Could it be that you used a snap version of docker? If so - please, remove it and install a normal version.
The snap version will not work normally.

How would I know if I installed the snap version ? I followed the official instructions.

If you did not use snap command on any step - you should be running a normal version.
Please show:

  1. your port forwarding rules
  2. sudo ufw status
  3. ip address
  4. WAN IP with IP from yougetsignal (you can partially hide the address, I just want to make sure that they are identical).

I gave up, it’s a loss of time.

Try to use a binary version directly without docker.
You need to copy the config file and update paths to the identity and data to your paths from the host. You need to provide a wallet address in the operator.wallet: option and your external address in the contact.external-address: option.
Then you can run a binary from the command line

storagenode run --config-dir /mnt/storj/storagenode

or setup it as a service: storagenode-deb/ at f51da2cd02c3a90b063f33fd90f4785fc05c78e0 · storj/storagenode-deb · GitHub

It’s probably a good solution but my node has been offline for too long, I lost all the data I stored and the storj that was held for me too. It would have been nice to suggest me this solution earlier, especially when I said that the problem probably came from docker in my second message (!) in this thread.