Here is something you can do to check where things are at on the client.
Open up a Terminal, and run dscl. It allows you to access the directory services from the command line, and when run with no options, it is interactive (and feels rather like navigating a filesystem heirarchy, complete with tab completion.)
$ dscl
ls
Your listing will probably include:
- BSD
- LDAPv3
- Local
- [a blank line]
- Search
- Contact
Now, let us see what directories you are bound to through LDAP (which includes OpenDirectory, as it uses OpenLDAP):
cd LDAPv3
ls
You should see an IP address corresponding to the Open Directory Master/Replica you are bound to. If there is nothing here, you aren't bound to anything.
cd [IP address of ODM/ODR -- tab completion can help]
ls
You should see a bunch of directories. If you get nothing, you either aren't bound, the server isn't responding, or there is a network problem.
cd Users
ls
You should see a list of your users. To get details info on one of them:
read [username]
or, for less spew, you can specify which parameters you are interested, like so:
read [username] UniqueID PrimaryGroupID RecordName RealName NFSHomeDirectory UserShell
or, to see info on all of the users, try:
readall . RealName UniqueID
Lastly, you can query the search path (searched for users to authenticate) and the contacts path (users who show up in Directory.app and Address Book.app), by doing, respectively:
readall /Search/Users RealName UniqueID
readall /Contacts/Users RealName UniqueID
Did this indicate anything regarding the binding status of your client?
One other things to try is:
ssh username@localhost
This will let you test if authentication is working. (ssh needs to be enabled first. System Preferences -> Sharing -> Remote Login).