C# Class Heijden.DNS.Resolver

Resolver is the main class to do DNS query lookups
Datei anzeigen Open project: sipsorcery/sipsorcery Class Usage Examples

Public Properties

Property Type Description
DefaultDnsServers List

Public Methods

Method Description
BeginGetHostEntry ( IPAddress ip, AsyncCallback requestCallback, object stateObject ) : IAsyncResult

Asynchronously resolves an IP address to an System.Net.IPHostEntry instance.

BeginGetHostEntry ( string hostNameOrAddress, AsyncCallback requestCallback, object stateObject ) : IAsyncResult

Asynchronously resolves a host name or IP address to an System.Net.IPHostEntry instance.

ClearCache ( ) : void

Clear the resolver cache

EndGetHostEntry ( IAsyncResult AsyncResult ) : IPHostEntry

Ends an asynchronous request for DNS information.

GetArpaFromIp ( IPAddress ip ) : string

Translates the IPV4 or IPV6 address into an arpa address

GetDnsServers ( ) : System.Net.IPEndPoint[]

Gets a list of default DNS servers used on the Windows machine.

GetHostEntry ( IPAddress ip ) : IPHostEntry

Resolves an IP address to an System.Net.IPHostEntry instance.

GetHostEntry ( string hostNameOrAddress ) : IPHostEntry

Resolves a host name or IP address to an System.Net.IPHostEntry instance.

Query ( string name, DNSQType qtype, QClass qclass, int timeout ) : Heijden.DNS.DNSResponse

Do Query on specified DNS servers

Query ( string name, DNSQType qtype, int timeout ) : Heijden.DNS.DNSResponse

Do an QClass=IN Query on specified DNS servers

Query ( string name, DNSQType qtype, int timeout, List dnsServers ) : Heijden.DNS.DNSResponse
QueryCache ( string name, DNSQType qtype ) : Heijden.DNS.DNSResponse

Do an QClass=IN Query on the previously cached results.

QueryCache ( string name, DNSQType qtype, QClass qclass ) : Heijden.DNS.DNSResponse

Do an QClass=IN Query on the previously cached results.

Resolver ( ) : System

Resolver constructor, using DNS servers specified by Windows

Resolver ( IPAddress ServerIpAddress, int ServerPortNumber ) : System

Constructor of Resolver using DNS server and port specified.

Resolver ( IPEndPoint DnsServers ) : System

Constructor of Resolver using DNS servers specified.

Resolver ( string ServerIpAddress ) : System

Constructor of Resolver using DNS address.

Resolver ( string ServerIpAddress, int ServerPortNumber ) : System

Constructor of Resolver using DNS address and port specified.

Private Methods

Method Description
AddToCache ( Heijden.DNS.DNSResponse response, string questionKey ) : void
GetActiveDNSServer ( ) : IPEndPoint
GetResponse ( Heijden.DNS.DNSRequest request, List dnsServers, int timeout ) : Heijden.DNS.DNSResponse
IncrementTimeoutCount ( IPEndPoint dnsServer ) : void
MakeEntry ( string HostName, int timeout ) : IPHostEntry
ResetTimeoutCount ( IPEndPoint dnsServer ) : void
SearchInCache ( Question question ) : Heijden.DNS.DNSResponse
TcpRequest ( Heijden.DNS.DNSRequest request, List dnsServers, int timeout ) : Heijden.DNS.DNSResponse

UdpRequest ( Heijden.DNS.DNSRequest request, List dnsServers, int timeout ) : Heijden.DNS.DNSResponse

Verbose ( string format ) : void

Method Details

BeginGetHostEntry() public method

Asynchronously resolves an IP address to an System.Net.IPHostEntry instance.
public BeginGetHostEntry ( IPAddress ip, AsyncCallback requestCallback, object stateObject ) : IAsyncResult
ip System.Net.IPAddress The IP address to resolve.
requestCallback AsyncCallback /// An System.AsyncCallback delegate that references the method to invoke when /// the operation is complete. ///
stateObject object /// A user-defined object that contains information about the operation. This /// object is passed to the requestCallback delegate when the operation is complete. ///
return IAsyncResult

BeginGetHostEntry() public method

Asynchronously resolves a host name or IP address to an System.Net.IPHostEntry instance.
public BeginGetHostEntry ( string hostNameOrAddress, AsyncCallback requestCallback, object stateObject ) : IAsyncResult
hostNameOrAddress string The host name or IP address to resolve.
requestCallback AsyncCallback /// An System.AsyncCallback delegate that references the method to invoke when /// the operation is complete. ///
stateObject object /// A user-defined object that contains information about the operation. This /// object is passed to the requestCallback delegate when the operation is complete. ///
return IAsyncResult

ClearCache() public method

Clear the resolver cache
public ClearCache ( ) : void
return void

EndGetHostEntry() public method

Ends an asynchronous request for DNS information.
public EndGetHostEntry ( IAsyncResult AsyncResult ) : IPHostEntry
AsyncResult IAsyncResult /// An System.IAsyncResult instance returned by a call to an /// Overload:Heijden.Dns.Resolver.BeginGetHostEntry method. ///
return System.Net.IPHostEntry

GetArpaFromIp() public static method

Translates the IPV4 or IPV6 address into an arpa address
public static GetArpaFromIp ( IPAddress ip ) : string
ip System.Net.IPAddress IP address to get the arpa address form
return string

GetDnsServers() public static method

Gets a list of default DNS servers used on the Windows machine.
public static GetDnsServers ( ) : System.Net.IPEndPoint[]
return System.Net.IPEndPoint[]

GetHostEntry() public method

Resolves an IP address to an System.Net.IPHostEntry instance.
public GetHostEntry ( IPAddress ip ) : IPHostEntry
ip System.Net.IPAddress An IP address.
return System.Net.IPHostEntry

GetHostEntry() public method

Resolves a host name or IP address to an System.Net.IPHostEntry instance.
public GetHostEntry ( string hostNameOrAddress ) : IPHostEntry
hostNameOrAddress string The host name or IP address to resolve.
return System.Net.IPHostEntry

Query() public method

Do Query on specified DNS servers
public Query ( string name, DNSQType qtype, QClass qclass, int timeout ) : Heijden.DNS.DNSResponse
name string Name to query
qtype DNSQType Question type
qclass QClass Class type
timeout int Timeout for lookup in seconds.
return Heijden.DNS.DNSResponse

Query() public method

Do an QClass=IN Query on specified DNS servers
public Query ( string name, DNSQType qtype, int timeout ) : Heijden.DNS.DNSResponse
name string Name to query
qtype DNSQType Question type
timeout int Timeout for lookup in seconds.
return Heijden.DNS.DNSResponse

Query() public method

public Query ( string name, DNSQType qtype, int timeout, List dnsServers ) : Heijden.DNS.DNSResponse
name string
qtype DNSQType
timeout int
dnsServers List
return Heijden.DNS.DNSResponse

QueryCache() public method

Do an QClass=IN Query on the previously cached results.
public QueryCache ( string name, DNSQType qtype ) : Heijden.DNS.DNSResponse
name string Name to query
qtype DNSQType Question type
return Heijden.DNS.DNSResponse

QueryCache() public method

Do an QClass=IN Query on the previously cached results.
public QueryCache ( string name, DNSQType qtype, QClass qclass ) : Heijden.DNS.DNSResponse
name string Name to query
qtype DNSQType Question type
qclass QClass
return Heijden.DNS.DNSResponse

Resolver() public method

Resolver constructor, using DNS servers specified by Windows
public Resolver ( ) : System
return System

Resolver() public method

Constructor of Resolver using DNS server and port specified.
public Resolver ( IPAddress ServerIpAddress, int ServerPortNumber ) : System
ServerIpAddress System.Net.IPAddress DNS server to use
ServerPortNumber int DNS port to use
return System

Resolver() public method

Constructor of Resolver using DNS servers specified.
public Resolver ( IPEndPoint DnsServers ) : System
DnsServers System.Net.IPEndPoint Set of DNS servers
return System

Resolver() public method

Constructor of Resolver using DNS address.
public Resolver ( string ServerIpAddress ) : System
ServerIpAddress string DNS server address to use
return System

Resolver() public method

Constructor of Resolver using DNS address and port specified.
public Resolver ( string ServerIpAddress, int ServerPortNumber ) : System
ServerIpAddress string DNS server address to use
ServerPortNumber int DNS port to use
return System

Property Details

DefaultDnsServers public_oe static_oe property

Gets list of OPENDNS servers
public static List DefaultDnsServers
return List