About ComponentSpace DNS Component

Query DNS servers for MX and all the other resource record types defined by RFC-1034 and RFC-1035.

ComponentSpace DNS Component makes it easy to retrieve the list of configured DNS servers, construct a DNS query request using the convenient message and resource record classes, send the request to a DNS server and receive the fully parsed response. Written in 100% managed C# code, the class library offers .NET developers complete access to DNS resources from within their applications. ComponentSpace DNS is now 64-bit, .NET framework 4 and Visual Studio 2010 compatible.

ComponentSpace DNS Component may be used in any Windows or Web application by adding a reference to the assembly to access the classes in the KeyTech.Dns namespace. ComponentSpace DNS is now 64bit, .NET framework 4 and VS2010 compatible.

The DnsMessage class models DNS request and response messages. It makes it very easy to construct DNS requests and access DNS responses. A separate class describes each resource record type. Each resource record class is derived from the ResourceRecord abstract class.

The list of resource record classes includes:

  • ARecord,
  • CNAMERecord,
  • HINFORecord,
  • MBRecord,
  • MDRecord,
  • MFRecord,
  • MGRecord,
  • MINFORecord,
  • MRRecord,
  • MXRecord,
  • NSRecord,
  • NULLRecord,
  • PTRRecord,
  • SOARecord,
  • TXTRecord,
  • WKSRecord
  • A catch all OtherRecord.

The DnsClient class allows you to send DnsMessage requests and receive DnsMessage responses. Within the DnsMessage request you specify the DNS questions to ask. The DnsMessage response contains the lists of ResourceRecords.

You may send requests from within DnsClient either synchronously (blocking) using the Send method or asynchronously (non-blocking) using the BeginSend and EndSend methods. Similarly, responses may be received either synchronously (blocking) using the Receive method or asynchronously (non-blocking) using the BeginReceive and EndReceive methods. For asynchronous calls you may receive completion notification either through an event or a callback method. A timeout may be specified.

All classes that raise events support a SynchronizingObject property. All classes report errors through the DnsException.

Main Features

  • Supports RFC-1034/RFC-1035
  • No complicated DNS message construction or parsing
  • Specify the resource types to retrieve including all
  • Retrieve the list of configured DNS servers
  • Calling applications may make either synchronous or asynchronous calls
  • Asynchronous calls may either use events or callbacks
  • Specify a timeout
  • 100% managed code written in C#
  • Object oriented design specifically for the .NET framework
  • All error handling through .NET exceptions
  • Comprehensive Visual Studio .NET style documentation
  • VB.NET and C# example source code
  • Includes prompt free email support
  • Royalty free runtime
  • Source code available

This class library may also be purchased as part of the Key Technology .NET Internet Suite.