using System;
using System.Net;
using System.DirectoryServices;
using System.DirectoryServices.Protocols;
public class MainClass {
public static void Main() {
Uri uri = new Uri("http://yourSite:8080/dsml3");
DsmlDirectoryIdentifier identifier = new DsmlDirectoryIdentifier(uri);
NetworkCredential credentials = new NetworkCredential();
credentials.UserName = @"explorercnagel";
credentials.Password = "password";
DsmlSoapHttpConnection dsmlConnection = new DsmlSoapHttpConnection(identifier);
string baseDN = null;
string ldapSearchFilter = "(objectClass=*)";
string[] attributesToReturn = null;
SearchRequest searchRequest = new SearchRequest(baseDN, ldapSearchFilter,System.DirectoryServices.Protocols.SearchScope.Base, attributesToReturn);
SearchResponse searchResponse = (SearchResponse)dsmlConnection.SendRequest(searchRequest);
foreach (SearchResultEntry entry in searchResponse.Entries) {
DirectoryAttribute attribute = entry.Attributes["schemaNamingContext"];
Console.WriteLine(attribute.Name + "=" + attribute[0]);
foreach (DirectoryAttribute attr in entry.Attributes.Values) {
Console.Write(attr.Name + "=");
foreach (object value in attr) {
Console.Write(value + " ");
}
}
}
}
}
ASP.NET & Csharp (C#)
ASP.NET & Csharp (C#) , Here you can find my posts about .NET c# .
Using DsmlDirectoryIdentifier
using System;
using System.Net;
using System.DirectoryServices;
using System.DirectoryServices.Protocols;
public class MainClass {
public static void Main() {
Uri uri = new Uri("http://yourSite/dsml1");
DsmlDirectoryIdentifier identifier = new DsmlDirectoryIdentifier(uri);
NetworkCredential credentials = new NetworkCredential();
credentials.UserName = "yourName";
credentials.Password = "password";
DsmlSoapHttpConnection connection = new DsmlSoapHttpConnection(identifier, credentials);
connection.BeginSession();
string distinguishedname = "yourName";
string ldapFilter = "object=user";
string[] attributes = new string[1];
DirectoryRequest request = new SearchRequest(distinguishedname, ldapFilter, System.DirectoryServices.Protocols.SearchScope.Subtree, null);
DirectoryResponse response = connection.SendRequest(request);
connection.EndSession();
}
}
Find DNS Servers from Registry
using System;
using Microsoft.Win32;
class FindDNSServers {
public static void Main() {
RegistryKey start = Registry.LocalMachine;
string DNSservers = @"SYSTEMCurrentControlSetServicesTcpipParameters";
RegistryKey DNSserverKey = start.OpenSubKey(DNSservers);
if (DNSserverKey == null) {
Console.WriteLine("Unable to open DNS servers key");
return;
}
string serverlist = (string)DNSserverKey.GetValue("NameServer");
Console.WriteLine("DNS Servers: {0}", serverlist);
DNSserverKey.Close();
start.Close();
char[] token = new char[1];
token[0] = ' ';
string[] servers = serverlist.Split(token);
foreach (string server in servers) {
Console.WriteLine("DNS server: {0}", server);
}
}
}
Get DNS Address Info
using System;
using System.Net;
public class GetDNSAddressInfo {
public static void Main(string[] argv) {
if (argv.Length != 1) {
Console.WriteLine("Usage: GetDNSAddressInfo address");
return;
}
IPAddress test = IPAddress.Parse(argv[0]);
IPHostEntry iphe = Dns.GetHostByAddress(test);
Console.WriteLine("Information for {0}",
test.ToString());
Console.WriteLine("Host name: {0}", iphe.HostName);
foreach(string alias in iphe.Aliases)
{
Console.WriteLine("Alias: {0}", alias);
}
foreach(IPAddress address in iphe.AddressList)
{
Console.WriteLine("Address: {0}", address.ToString());
}
}
}
Find DNS Servers
using System;
using Microsoft.Win32;
public class FindDNSServers
{
public static void Main()
{
RegistryKey start = Registry.LocalMachine;
string DNSservers = @"SYSTEMCurrentControlSetServicesTcpipParameters";
RegistryKey DNSserverKey = start.OpenSubKey(DNSservers);
if (DNSserverKey == null)
{
Console.WriteLine("Unable to open DNS servers key");
return;
}
string serverlist = (string)DNSserverKey.GetValue("NameServer");
Console.WriteLine("DNS Servers: {0}", serverlist);
DNSserverKey.Close();
start.Close();
char[] token = new char[1];
token[0] = ' ';
string[] servers = serverlist.Split(token);
foreach(string server in servers)
{
Console.WriteLine("DNS server: {0}", server);
}
}
}
DNS Name Resolution
using System;
using System.Net;
public class DNSNameResolution
{
[STAThread]
static void Main(string[] args)
{
IPHostEntry MyHost = Dns.Resolve(args[0]);
foreach (IPAddress MyIP in MyHost.AddressList)
{
Console.WriteLine(MyIP.Address);
}
}
}
DNS Reverse Lookup and Lookup
using System;
using System.Collections.Generic;
using System.Text;
using System.Net;
//DnsLookup
class Program {
static void Output(IPHostEntry ipHostEntry) {
Console.WriteLine("Host: {0}", ipHostEntry.HostName);
Console.WriteLine("
Aliases:");
foreach (string alias in ipHostEntry.Aliases) {
Console.WriteLine(alias);
}
Console.WriteLine("
Address(es):");
foreach (IPAddress address in ipHostEntry.AddressList) {
Console.WriteLine("Address: {0}", address.ToString());
}
Console.ReadLine();
}
static void Lookup(string hostname) {
IPHostEntry ipHostEntry = Dns.GetHostByName(hostname);
Output(ipHostEntry);
}
static void ReverseLookup(string address) {
IPHostEntry ipHostEntry = Dns.GetHostByAddress(address);
Output(ipHostEntry);
}
static void Main(string[] args) {
Lookup("www.microsoft.com");
ReverseLookup("172.18.1.1");
}
}