carlaKC / attackathon

utilities and instructions to run a lightning jamming attackathon
0 stars 6 forks source link

armada: Bitcoind add node not connecting armada to network #55

Closed carlaKC closed 2 months ago

carlaKC commented 3 months ago

After setting up the armada with start_attacker, I've noticed that the bitcoind node sometimes does not connect to the network of bitcoin nodes.

It's definitely setting addnode, as it has the following log: Command-line arg: addnode="bitcoind-tank-000000.warnet"

I can get around this by manually connecting it to the network nodes: warcli rpc 9 addnode bitcoind.warnet-armada add

This only happened all day on 22 may and now doesn't seem to be happening at all.

pinheadmz commented 3 months ago

Are you trying to connect to a node in namespace warnet or warnet-armada?

carlaKC commented 3 months ago

Manually connecting warnet-armada's single bitcoind to any warnet bitcoind node, which works with the above command.

It should happen automatically, but that wasn't working / couldn't find anything useful in bitcoind-tank-000000.warnet's logs (though I'm not the most familiar so could have missed something).

carlaKC commented 3 months ago

blegh actually looks like this happens randomly and yesterday was just a bad day, hit this once today. Dumping logs in here for future investigation.

armada-logs.txt warnet-0-logs.txt

pinheadmz commented 3 months ago

blegh actually looks like this happens randomly and yesterday was just a bad day, hit this once today. Dumping logs in here for future investigation.

armada-logs.txt warnet-0-logs.txt

interestingly, the logs you posted, warnet-0 logs end at 13:58:14, but armada-logs start at 13:58:29 and only run for one second. 🤷

pinheadmz commented 3 months ago

I guess if you try this again, add -debug=net to both nodes

carlaKC commented 2 months ago

warnet-0 logs end at 13:58:14, but armada-logs start at 13:58:29 and only run for one second. 🤷

Doesn't this make sense because armada is started after the warnet is booted up (and nothing is happening on warnet)? Plus the armada bitcoind also just gets stuck with no peers, so there isn't more than a second's worth of logs.

Ran with debug and the only meaningful log I get is [net:debug] trying v1 connection bitcoind-tank-000000.warnet lastseen=0.0hrs but there's nothing in the warnet pod's logs about an incoming connection.

armada-bitcoind.txt warnet-000000.txt

I'm consistently hitting this every time I spin up a network now, haven't changed anything significant locally (afaik). Issue seems to be that armada can't resolve warnet dns records because neither the addnode in our start args nor a manual attempt to connect armada -> warnet works.

kubectl exec -it -n warnet-armada bitcoind -- bitcoin-cli -rpcport=18443 -rpcpassword=2themoon -rpcuser=warnet_user addnode bitcoind-tank-000002.warnet add

Logs: armada-bitcoin: [net:debug] trying v1 connection bitcoind-tank-000002.warnet lastseen=0.0hrs warnet-000002: no net logs about connection


Sanity checked the reverse (warnet -> armada) so that I know how the logs should look and that direction is fine.

warcli rpc 9 addnode bitcoind.warnet-armada add

warnet-000009:

2024-06-17T14:44:58.152222Z New manual v1 peer connected: version: 70016, blocks=0, peer=9, peeraddr=10.98.92.34:18444

armada-bitcoin:

2024-06-17T14:44:58.109572Z [net] Added connection to 10.1.13.200:49958 peer=0
2024-06-17T14:44:58.109637Z [net] connection from 10.1.13.200:49958 accepted
carlaKC commented 2 months ago

Managed to narrow connection issues to DNS - if I kubectl get svc and use the IP for warnet-tank-000000-service, armada can connect to it.