Query on dblink returning ORA-12545 error

I have a dblink between Oracle 9i and Oracle 10g. When I execute this query sometimes I get the result, but sometimes I get the error "ORA-12545."

I have a dblink between Oracle 9i and Oracle 10g. When I execute this query sometimes I get the result, but sometimes I get the error "ORA-12545: Connect failed because target host or object does not exist." It's intermittent. Do you have any idea about the problem?
select sysdate
from dual@DBLINK;
The ORA-12545 error is indicating that the resolution of your remote server's hostname is failing (occasionally). Your TNS alias contains a host to connect to. The first thing I would do is to make sure the server name in this TNS alias is of the form "server.domain". Many times, we do not include the domain name. So instead of "(HOST=my_db_server)" in my TNS entry, make sure it looks like "(HOST=my_db_server.acme.com)." If this does not solve the problem, then instead of relying on DNS to resolve the host name, you can either use the IP address or define the host name in your server's hosts file.

Dig Deeper on Oracle database administration