Just recently converted one of my block producer node as my 2nd relay. Everything was setup like how it is like my 1st relay, but somehow my 2nd relay would not add the block producer ip into topology.json even after I restart the node. Any idea why? I’ve also ran the ./deploy system sh before this but no luck.
Here’s my observation:
telnet between block producer and my 2nd relay is working fine
./gLiveView in my block producer shows that it is connected to my 2nd relay
This is the output below for topology.json in my 2nd relay
/opt/cardano/cnode/files$ cat topology.json
{ “resultcode”: “402”, “datetime”:“2021-03-24 06:01:17”, “clientIp”: “x.x.x.x”, “iptype”: 4, “msg”: “IP is not (yet) allowed to fetch this list”, “Producers”: [ { “addr”: “relays-new.cardano-mainnet.iohk.io”, “port”: 3001, “valency”: 2, “debug”:“default fallback result” } ] }
/opt/cardano/cnode/files$
Should I manually edit the topology and include my block ip producer there? I have already one adding the block ip into topologyUpdater.sh. Please advise
define your block producer as a custom peer in your topologyUpdater.sh script:
#CUSTOM_PEERS="None" # Additional custom peers to (IP:port[:valency]) to add to your target topology.json
# eg: "10.0.0.1:3001|10.0.0.2:3002|relays.mydomain.com:3003:3"
with that, the topologyUpdater will include the block producer address
Thanks, but I’ve managed to add it by manually edit the /opt/cardano/cnode/files/topology.json, added my block producer ip and iohok relay.
However, it is supposed to connect to 10 or more peers, but now it is showing 2-3, I guess there is a time frame to wait before the relay is accepted into public net
Ok - it is new info for me, that topologyUpdater can leave manually added address in the file during an update - so it is a nice feature…
yes, there is a time frame - after 3 successful execution of the tologogyUpdater, I think
according to the deploy script, it says 4 executions ( 3 hours ), I waited 4-5 hours before I open this thread, but it didn’t work. Since that I’ve manually added in the topology.json, I guess I have to wait for another 3 hours to see if it work this time.
TopologyUpdater first checks from what IP your are trying to fetch the list. So only the IP address is the question to able to update the topology file, and not how many times you edited the topology.json file.
After i’ve manually edited the topology by adding the default iohk relay and my own producer block ip, I no longer receive the message. Now it’s the matter of waiting for it to automatically adding the other peers.
topologyUpdater.sh relies on env file where you can set environment veriables for the script like LOG_DIR
that is the node logs folder - do you have that folder?
unfortunately no, I couldn’t find it in the logs folder for my 2nd relay, but it does exist for my first one though, thanks for pointing out that there should be some sort of logs in here
ok, so I just found out that I made a typo in the topology updater file, there was an extra “.” in the ip and I can’t believe I missed that despite I’ve check the script for more than 5 times. Sorry for wasting your time, everything works fine now, my 2nd relay is now able to connect to multiple other relays.