Implements a server for the DNS (Domain Name Server) protocol.
TIdDNSServer = class(TIdComponent);
TIdDNSServer is a TIdComponent descendant that implements a server for the DNS (Domain Name Server) protocol, as described in the Internet Standards documents:
TIdDNSServer is not like most typical server implementations in the Indy library. The DNS protocol requires that the server be able to respond to both TCP-based and UDP-based requests, so TIdDNSServer does not follow the convention of inheriting from a TIdTCPServer or TIdUDPServer ancestor class. Instead, it implements the TCPTunnel and UDPTunnel properties that act as the server(s) used in its implementation.
UDPTunnel is, in essence, the DNS server and responds to all DNS queries issued by clients.
TCPTunnel is used primarily to perform updates and receive notifications of updates for zone tranfer information when ServerType contains the value stSecondary indicating a secondary DNS server implementation. TCPTunnel is activated only in this scenrio, and uses a TIdDomainExpireCheckThread instance to determine when expired Domain information needs to be reloaded from the primary DNS server.
Set ServerType to indicate if the DNS server is the primary Domain Name Service server or a secondary server dependent on updates from the primary DNS server.
Copyright © 1993-2006, Chad Z. Hower (aka Kudzu) and the Indy Pit Crew. All rights reserved.
Post feedback to the Indy Docs Newsgroup.