# This Perl code displays the domain controllers for the specified domain. # --------------------------------------------------------------- # Adapted from VBScript code contained in the book: # "Active Directory Cookbook" by Robbie Allen # Publisher: O'Reilly and Associates # ISBN: 0-596-00466-4 # Book web site: http://rallenhome.com/books/adcookbook/code.html # --------------------------------------------------------------- # ------ SCRIPT CONFIGURATION ------ my $strDomain = ''; # e.g. emea.rallencorp.com # ------ END CONFIGURATION --------- use Win32::OLE 'in'; $Win32::OLE::Warn = 3; my $objRootDSE = Win32::OLE->GetObject("LDAP://$strDomain/RootDSE"); my $objDomain = Win32::OLE->GetObject("LDAP://" . $objRootDSE->Get("defaultNamingContext")); my $strMasteredBy = $objDomain->GetEx("masteredBy"); foreach my $strNTDSDN (in $strMasteredBy) { my $objNTDS = Win32::OLE->GetObject("LDAP://" . $strNTDSDN); my $objServer = Win32::OLE->GetObject($objNTDS->Parent); print $objServer->Get("dNSHostName"),"\n"; }