Can you reach localhost by "normal" means? telnet localhost 25
I cannot.
Can you share the specific output of the command? It might help. From what you've told us, localhost resolves to the IPv6 local address, and that address is present on your "lo" device. You *should* be able to connect. The type of error might indicate what is still wrong with the system.
Trying 71.28.79... telnet: connect to address 71.28.79.87: Connection timed out
So are you saying that if you do 'telnet localhost 25' it actually tries to connect to '71.28.79.87'?
If so, then that seems to indicate that host lookups are still being done primarily through DNS and it isn't looking in your /etc/hosts file.
What happens if you do
telnet 127.0.0.1 25
what about
telnet ::1 25
P.