If the process is up and IRC never sees it, it is almost always conf, bind, or the network refusing the connection. SSH in. Do not keep restarting from screen hoping it "catches."
Is it even running?
ps x | grep eggdrop
cd ~/botdir
tail -n 80 logs/eggdrop.log
Log lines are not always flushed immediately unless quick-logs is on. Wait a minute, or start once in the foreground:
./eggdrop -nt botnick.conf
Quit that session and the bot dies. That is expected. Use it to read the connect error, then go back to ./eggdrop botnick.conf.
Usual causes
diestill in the confset vhost4/set vhost6is the wrong IP, or you did not bind the vhost you were given- ident /
set usernamedoes not match the shell user the net expects - server line is wrong; try another server, or
+6697for TLS - keyed channel: you JOINed
#chanwithout the key (chanmode "+ntk thekey") - the net dropped you for clone/connection limits — AUP is max 2 IRC connections per shell to a given network (bot + you + ZNC all count if they hit the same net from that shell)
- listen port clash (less common for "not on IRC", more common for partyline)
Kill a stuck binary (kill the pid from ps x) before starting again. After it works, autobotchk.