No incoming connections on relays (unless manually added)

Hey,

Wondering if anyone had some advice.

CNFT Pool | pool1drxxm3mncpnn9zjruh3ppp44zhfrlqexckgr2fzejme5k8dmv63

  • Not getting incoming connections to stick
  • UFW is fine / XXXX ports open to all
  • TopologyUpdater.sh reports working fine in logs
  • If I ask a friend to add me to their node manually, they connect and stick with me
  • Periodically see random connections come in but they last maybe a few hours then leave
  • Node has been up for weeks (other than some reboots while trying to find a fix)
  • Outgoing is fine

Relays:
au1.cnftpool.com 6011
image

au3.cnftpool.com 6033
image

TopologyUpdater.sh logs (same on both relays)

TopologyUpdater.sh config
image

Relay 3
image

image

Edited, Ignore that:

Summary

I would guess that you have asymmetric NAT. Basically for incoming connection your IP is “xxx.132.94.135”(I put xxx to mask first octet), but for outgoing is something else, that why topology updater is confused.

Just run on your relays curl ifconfig.me and see what IP it shows, I’m pretty sure it is different from “xxx.132.94.135”

Did you configure your port with CNODE_PORT, in your topology?

image

image

  • curl ifconfig.me responds with correct IP as above
  • port is set in env file, reflected in the gLiveView.sh correctly too
  • if you add me manually to your topology file, then it will connect okay so it indicates that the cnode is set up correctly

Is there any way to confirm with TopologyUpdater service if my correct port is being reflected upon notifying their service? Logs don’t reflect any port as far as I can see but it feels like I am not being added to the TopologyUpdater services correctly and thus no one is looking for me

I personally never used guild operator scripts…

But I assume you have following code:

I would recommend then to print out to logfile url what is being queried.

Add that line below line 126(curl -s -f -4 "https://api.clio.one/htopology.....):

echo "https://api.clio.one/htopology/v1/?port=${CNODE_PORT}&blockNo=${blockNo}&valency=${CNODE_VALENCY}&magic=${NWMAGIC}${T_HOSTNAME}" >> /tmp/topo.log

That code should print exact URL to /tmp/topo.log. Next time after running topologyUpdater.sh, you should see something in that file. Please paste it here…

Prints this to log; looks fine noting port 6011 which is correct.

Now I am even more at a lost end as to why no peers will come stick with me

Hmmm… I’m lost here…

Other solution would be to use p2p. I haven’t used topologyUpdater almost for a year…

Any particular reason you need to stick with it?

Yea, I tried P2P a few months ago but I moved back but again I found I wasn’t getting many incoming either.
I just restarted the node I enabled P2P on and I currently only have my 3 nodes as incoming.
Will give it another go for a while and see if that goes up

This still the best config to be using on mainnet?

image

Configs seems to be ok,

config.json I just use default one with just added those 2 lines:

  "EnableP2P": true,
  "TestEnableDevelopmentNetworkProtocols": true,