Product/Component Concerned: eDirectory / LDAP
Target Audience: Beginners
Platform: All (Demonstrated on Linux)
What is RootDSE?
RootDSE stands for Root DSA (Directory Service Agent) Specific Entry, which is the root of the LDAP server. This entry is a pseudo object in the tree, which means it's an unnamed entry at the root of the tree. This entry holds the configuration information about the connected eDirectory server. As mentioned, the rootDSE is an unnamed entry, a search against the eDirectory tree won't return you the rootDSE object.
What information does the RootDSE contain?
The following is list contains the most common information that a rootDSE holds.
- The location of the schema
- Supported Extensions
- Supported Controls
- Vendor name and version of the Server
- The DSA Name of the server
- Tree Name
- Supported SASL Mechanisms
- Versions of LDAP supported
- LDAP server statistics (includes the number of operations happened, referral mechanism used etc)
How to get the information from the RootDSE?
All the above information can be read by doing a simple LDAP search against the RootDSE object using the following settings:
- Set the search base to an empty string
- Set the search filter to objectclass=* (which is the default filter of the ldapsearch tool)
- Set the search scope to BASE
This can be done through the ldapsearch tool or even through a simple application written using any LDAP SDK.
So, the ldapsearch to do the RootDSE search would look like:
ldapsearch -h <hostname> -p <port number> -b "" -s base "objectclass=*"
The following is the sample output of the RootDSE search:
vendorName: Novell, Inc.
vendorVersion: LDAP Agent for Novell eDirectory 8.8 SP6 (20601.12)
The following details can be inferred from the above output:
|Location of the schema
||cn=schema (the subschema subentry). This entry can be given as the 'BASE' of a LDAP search and the schema can be read
||Extensions are in ASN.1OID format. Each OID corresponds to a different extension (like adding new replicas, refreshing the LDAP server, etc)
||Controls are in ASN.1OID format. Each OID corresponds to a different control (like paged results, server side sort etc)
|Vendor name and version of the server
||Novell, Inc is the vendor Name
LDAP Agent for Novell eDirectory 8.8 SP6 (20601.12) is the version
|The DSA name of the server
|Supported SASL Mechanisms
|Versions of LDAP supported
||2 and 3
|LDAP server statistics (includes the number of operations happened, referral mechanism used etc)
SearchOps: 1867 ? Specifies the number of searches that had been done on the server
simpleAuthBinds: 1869 ? Specifies the number of authenticated binds that had been done on the server
unAuthBinds: 1462? Specifies the number of anonymous binds that had been done on the server
Chainings: 0 ? Chaining Count
referralsReturned: 0 ? Referral Count
extendedOps: 1862 ? Specifies the number of extended operations that had been done on the server
Disclaimer: As with everything else at Cool Solutions, this content is definitely not supported by Novell (so don't even think of calling Support if you try something and it blows up).
It was contributed by a community member and is published "as is." It seems to have worked for at least one person, and might work for you. But please be sure to test, test, test before you do anything drastic with it.