Fighting with "TNS-03505: Failed to resolve name" and OID 11g

Posted by Dirk Nachbar on Tuesday, May 10, 2011 with No comments
I am currently setting up an Oracle Internet Directory for the usage of tnsnames resolution and run in a nice error.

The installation and setup were straight forward (even as I had to do it under Windows :-) ), I created a test tnsnames entry in my new OID 11g with the Net Manager from an Oracle Client 11.1. So far so good.
But when I wanted to test my new tnsnames entry in the OID with a simple tnsping, I receive immediately following error:

tnsping testdb
TNS Ping Utility for 32-bit Windows: Version - 
Production on 10-MAY-2011 18:16:57
Copyright (c) 1997, 2007, Oracle. All rights reserved.
Used parameter files:
TNS-03505: Failed to resolve name

Really cool :-) I checked several times my sqlnet.ora and ldap.ora, which are correct. Metalink points to a know problem with OID 11g, that by default an anonymous bind is disabled. So quicktest from my client with ldapbind:

ldapbind -h myoidserver -p 3060
bind successful

Looks ok . . . but even when this ldapbind shows you successful, be aware, in my case it proof nothing :-(

I connected to the Fusion Middleware Control Enterprise Manager, open below my Farm the Entry "Identity and Access", chose the subentry "oid1" (might have a different name in your case) and select under the menu point "Oracle Internet Directory" in the center window the option "Administration/Server Properties" and saw under the General Tab for the option "Anonymous Bind" that it was disabled.

I just switched the option to "Allows", click the Apply button.

After that I try again from my client the tnsping and it worked perfectly this time :-)