Recursive queries: in a recursive query, the queried server is responsible for resolution. The queried name server must either provide a response or return an error. Most DNS clients (including Windows 95/98 and other servers not running a name server) rely on other name servers for resolution. Such clients issue a recursive query to the name server. Recursive queries are like a request issued to a secretary.
Iterative queries: also referred to as non-recursive queries. Name servers often use this type of query between each other. As compared to the recursive queries, these queries do not require as much work. In an iterative query, the name server will return the best answer it knows or just point it to another name server to assist the resolution process of the querying name server.
Inverse queries: the DNS database keys based on IP address (IN-ADDR.ARPA) or domain name. Based on other fields in a resource record, queries may request other arbitrary types of information for a domain. Such queries require an exhaustive search of the DNS database and are referred to as inverse queries.
Negative caching: this is the process of temporarily caching non-existent queries about name servers and data. The negative caching prevents the name server from re-issuing queries for data that it already knows does not exist.
Zone change notification (NOTIFY): the NOTIFY request is used by the primary name server to notify the slave servers about changes in the zone data. The slave server then queries the primary master for its SOA records. If the serial number in the SOA is higher, the slave server performs a zone transfer.
Dynamic updates: these allow authorized hosts to send requests to change/add/modify/delete zone data. The dynamic updates feature is not available in the BIND 4 series.
Nslookup: a utility available with the BIND distribution. This utility allows you to issue queries and debug the name server setup and configuration.