As a follow up to an earlier post, I think we found the problem.
Earlier, we were experiencing intermittent ORA-12545 errors.
Before this happened, the server group was performing some disaster recovery testing. Somehow, and of course they say they didn't touch it, the file permissions were changed on the /etc/hosts file. Only root had read permissions.
This caused commands like NSLOOKUP to fail completely. Really, you'd think this wouldn't be a problem with a tnsnames.ora entry where the HOST parameter was an IP address. I mean, with an IP address it's not like you have to resolve it.
Apparently though, that's not the case. Oracle appears to sometimes attempt to resolve the host name of the "HOST=" parameter even when it's an IP address.
As soon as we enabled world read access to the /etc/hosts file, the problems stopped happening.