Hell, I'm struggling to get a PoA network to run with nodes on several servers. I've reduced the problem to try to get a 2 sealers network since with more than 2 nodes it doesn't even start. With 2 nodes, it started, then I killed one node and it stuck.
I removed one node's geth directory, and try syncing from scratch, but I keep getting this:
DEBUG[09-26|09:31:37.939] Ethereum message handling failed id=077ea0d162f14b7a conn=dyndial err=EOF
DEBUG[09-26|09:31:37.939] Removing Ethereum peer peer=077ea0d162f14b7a
DEBUG[09-26|09:31:37.939] Removing p2p peer id=077ea0d162f14b7a conn=dyndial duration=39.835s peers=0 req=false err="read tcp 103.230.15.133:37982->13.124.90.14:30382: i/o timeout"
DEBUG[09-26|09:31:37.940] Block body download terminated err="block body download canceled (requested)"
DEBUG[09-26|09:31:37.940] Transaction receipt download terminated err="receipt download canceled (requested)"
DEBUG[09-26|09:31:37.940] Skeleton fill terminated err="block header download canceled (requested)"
DEBUG[09-26|09:31:37.940] Skeleton chain invalid peer=077ea0d162f14b7a err="block header download canceled (requested)"
DEBUG[09-26|09:31:37.940] Header download terminated peer=077ea0d162f14b7a
DEBUG[09-26|09:31:37.940] Synchronisation terminated elapsed=30.241010243s
WARN [09-26|09:31:37.940] Synchronisation failed, retrying err="block body download canceled (requested)"
DEBUG[09-26|09:31:38.101] Adding p2p peer name=Geth/v1.8.15-stable-... addr=13.124.90.14:30382 peers=1
DEBUG[09-26|09:31:38.101] Ethereum peer connected id=077ea0d162f14b7a conn=dyndial name=Geth/v1.8.15-stable-89451f7c/linux-amd64/go1.10
DEBUG[09-26|09:31:41.702] Found seed node in database id=485df49d29823cfb addr=103.230.15.133:30380 age=427201h31m41.702795396s
Basically,
err="read tcp 103.230.15.133:37982->13.124.90.14:30382: i/o timeout"
every time, before or after removing the geth DB.
Since it started when I killed the network to restart it in a screen instance, it's obivously not a real connection problem between the machines (I can ssh from one to the other without any problem).
It seems like geth just bugs and does not deliver the blocks it has. Any help please?