RFC 1035:DOMAIN NAMES - IMPLEMENTATION AND SPECIFI...
RFC-Ref

query


Click on the red underlined text to get to the source

... experimental behavior should always be expected in parts of the system beyond the official protocol. The official protocol parts include standard queries, responses and the Internet class RR ...


... mail information associated with a particular domain name. To enable the user to request a particular type of information, an appropriate query type is passed to the resolver with the domain name. To the user, the domain ...
... starts with knowledge of at least one name server. When the resolver processes a user query it asks a known name server for the information; in return, the resolver either receives the desired ...
... host runs programs that retrieve information from the domain system, name servers that answer queries from other hosts, or various combinations of both functions. The simplest, and perhaps most typical, configuration is shown below: ...
... | +---------+ +----------+ | +--------+ | | user queries | |queries | | | | User |-------------->| |---------|->|Foreign | ...
... +---------+ +----------+ | +--------+ | | user queries | |queries | | | | User |-------------->| |---------|->|Foreign | | Program | | Resolver | | | Name | ...
... User programs interact with the domain name space through resolvers; the format of user queries and user responses is specific to the host and its operating system ...
... host and its operating system. User queries will typically be operating system calls, and the resolver and its cache ...
... subroutine to be linked in with every program that needs its services. Resolvers answer user queries with information they acquire via queries to foreign name servers and the local cache ...
... services. Resolvers answer user queries with information they acquire via queries to foreign name servers and the local cache. ...
... Note that the resolver may have to make several queries to several different foreign name servers to answer a particular user query, and ...
... Note that the resolver may have to make several queries to several different foreign name servers to answer a particular user query, and hence the resolution of a user query may involve several network accesses ...
... different foreign name servers to answer a particular user query, and hence the resolution of a user query may involve several network accesses and an arbitrary amount of time. The queries to foreign name ...
... hence the resolution of a user query may involve several network accesses and an arbitrary amount of time. The queries to foreign name servers and the corresponding responses have a standard format described in this memo, and may be datagrams ...
... | Master |-------------->| Server | | |Resolver| | files | | | |<--------|--| | | |/ | | queries | +--------+ +---------+ +----------+ | ...
... name server acquires information about one or more zones by reading master files from its local file system, and answers queries about those zones that arrive from foreign resolvers. ...
... | Master |-------------->| Server | | |Resolver| | files | | | |<--------|--| | | |/ | | queries | +--------+ +---------+ +----------+ | A |maintenance | +--------+ ...
... A |maintenance | +--------+ | +------------|->| | | queries | |Foreign | | | | Name | +------------------|--| Server | ...
... name server to acquire a copy of a zone or to check that an existing copy has not changed. The messages sent for these maintenance activities follow the same form as queries and responses, but the message sequences are somewhat different. ...
... | +---------+ +----------+ | +--------+ | | user queries | |queries | | | | User |-------------->| |---------|->|Foreign | ...
... +---------+ +----------+ | +--------+ | | user queries | |queries | | | | User |-------------->| |---------|->|Foreign | | Program | | Resolver | | | Name | ...
... | Master |-------------->| Server | | |Resolver| | files | | | |<--------|--| | | |/ | | queries | +--------+ +---------+ +----------+ | A |maintenance | +--------+ ...
... A |maintenance | +--------+ | +------------|->| | | queries | |Foreign | | | | Name | +------------------|--| Server | ...
... | |----------------+ | | +---------+ recursive | | | queries | | | V | | +---------+ recursive +----------+ | +--------+ ...
... V | | +---------+ recursive +----------+ | +--------+ | | queries | |queries | | | | Stub |-------------->| Recursive|---------|->|Foreign | ...
... +---------+ recursive +----------+ | +--------+ | | queries | |queries | | | | Stub |-------------->| Recursive|---------|->|Foreign | | Resolver| | Server | | | Name | ...


... QTYPE fields appear in the question part of a query. QTYPES are a superset of TYPEs, hence all TYPEs are valid QTYPEs. In addition, the ...
... QCLASS fields appear in the question section of a query. QCLASS values are a superset of CLASS values; every CLASS ...
... RRs cause no additional section processing, but name servers may choose to restart the query at the canonical name in certain cases. See the description of name server ...
... Most of these fields are pertinent only for name server maintenance operations. However, MINIMUM is used in all query operations that retrieve RRs from a zone. Whenever a RR ...
... retrieve RRs from a zone. Whenever a RR is sent in a response to a query, the TTL field is set to the maximum of the TTL field from the RR ...
... address to host name mapping, and to facilitate queries to locate all gateways on a particular network in the ...
... Note that both of these services are similar to functions that could be performed by inverse queries; the difference is that this part of the domain name space is structured according to address, and hence can ...
... Thus a program which wanted to locate gateways on net 10 would originate a query of the form QTYPE=PTR, QCLASS=IN, QNAME=10.IN-ADDR.ARPA. It ...
... The program could then originate QTYPE=A, QCLASS=IN queries for MILNET- GW.ISI.EDU. and GW.LCS.MIT.EDU. to discover the Internet addresses ...
... host address 10.0.0.6 would pursue a query of the form QTYPE=PTR, QCLASS=IN, QNAME=6.0.0.10.IN-ADDR.ARPA ...
... RR type in a cache doesn't convey any information about the other because the query which acquired the cached information might have used a QTYPE of MF, MD ...


... header includes fields that specify which of the remaining sections are present, and also specify whether the message is a query or a response, a standard query or some other opcode, etc. ...
... specify which of the remaining sections are present, and also specify whether the message is a query or a response, a standard query or some other opcode, etc. ...
... The names of the sections after the header are derived from their use in standard queries. The question section contains fields that describe a question to a name server. These fields are a query type ...
... queries. The question section contains fields that describe a question to a name server. These fields are a query type (QTYPE), a query class (QCLASS), and a ...
... question to a name server. These fields are a query type (QTYPE), a query class (QCLASS), and a query domain name ...
... (QTYPE), a query class (QCLASS), and a query domain name (QNAME). The last three sections have the same format: a possibly empty list of concatenated ...
... name server; the additional records section contains RRs which relate to the query, but are not strictly answers for the question. ...
... 16 bit identifier assigned by the program that generates any kind of query. This identifier is copied the corresponding reply and can be used by the requester ...
... identifier is copied the corresponding reply and can be used by the requester to match up replies to outstanding queries. ...
... A one bit field that specifies whether this message is a query (0), or a response (1). ...
... A four bit field that specifies kind of query in this message. This value is set by the originator of a query ...
... bit field that specifies kind of query in this message. This value is set by the originator of a query and copied into the response. The values are: ...
... a standard query (QUERY) ...
... a standard query (QUERY) ...
... an inverse query (IQUERY) ...
... AA bit corresponds to the name which matches the query name, or the first owner name in the answer section. ...
... Recursion Desired - this bit may be set in a query and is copied into the response. If RD is set, it directs ...
... RD is set, it directs the name server to pursue the query recursively. Recursive query support is optional. ...
... name server to pursue the query recursively. Recursive query support is optional. ...
... Recursion Available - this be is set or cleared in a response, and denotes whether recursive query support is available in the name server. ...
... Reserved for future use. Must be zero in all queries and responses. ...
... Format error - The name server was unable to interpret the query. ...
... Server failure - The name server was unable to process this query due to a problem with the name server. ...
... name server, this code signifies that the domain name referenced in the query does not exist. ...
... Not Implemented - The name server does not support the requested kind of query. ...
... The question section is used to carry the "question" in most queries, i.e., the parameters that define what is being asked. The section contains QDCOUNT (usually 1) entries, each of the following format: ...
... a two octet code which specifies the type of the query. The values for this field include all codes valid for a ...
... a two octet code that specifies the class of the query. For example, the QCLASS field is IN for the Internet ...
... used for any DNS activity, datagrams are preferred for queries due to their lower overhead and better performance ...
... UDP is not acceptable for zone transfers, but is the recommended method for standard queries in the Internet. Queries sent using UDP ...
... for standard queries in the Internet. Queries sent using UDP may be lost, and hence a retransmission ...
... UDP may be lost, and hence a retransmission strategy is required. Queries or their responses may be reordered by the network, or by processing in name ...
... client should try other servers and server addresses before repeating a query to a specific address of a server. ...
... refresh operation) to be made on a single connection. Since the server would be unable to answer queries anyway, a unilateral close or reset may be used instead of a graceful close. ...


... UDP requests while it waits for TCP data for refreshing or query activities. Similarly, a name server should not attempt to provide recursive service ...
... data structure. The main purpose of this structure is to find the nearest ancestor zone, if any, for arriving standard queries. ...
... . In designing the tree framework the designer should recognize that query processing will need to traverse the tree using case-insensitive ...
... database via a simple pointer replacement. It is very important that when a zone is refreshed, queries should not use old and new data simultaneously. ...
... Errors in zone definitions that cause overlapping zones, etc., may cause erroneous responses to queries, but problem determination is simplified, and the contents of one "bad" zone can't corrupt another. ...
... cache data use absolute times. Absolute numbers are taken with respect to some known origin and converted to relative values when placed in the response to a query. When an absolute TTL is negative after conversion to relative, then the data is expired and should be ignored. ...
... Standard query processing ...
... The major algorithm for standard query processing is presented in [RFC-1034]. ...
... When processing queries with QCLASS=*, or some other QCLASS which matches multiple classes, the response should never be authoritative ...
... zone within the its expiration parameter. In this case, the name server should answer queries as if it were not supposed to possess the zone. ...
... Inverse queries (Optional) ...
... Inverse queries are an optional part of the DNS. Name servers are not required to support any form of inverse queries ...
... queries are an optional part of the DNS. Name servers are not required to support any form of inverse queries. If a name server receives an inverse query ...
... queries. If a name server receives an inverse query that it does not support, it returns an error response with the "Not Implemented" error set in the header. While ...
... error response with the "Not Implemented" error set in the header. While inverse query support is optional, all name servers must be at least able to return the error response. ...
... The contents of inverse queries and responses ...
... Inverse queries reverse the mappings performed by standard query operations; while a standard query ...
... Inverse queries reverse the mappings performed by standard query operations; while a standard query maps a domain name ...
... queries reverse the mappings performed by standard query operations; while a standard query maps a domain name to a resource, an inverse query maps a resource to a ...
... while a standard query maps a domain name to a resource, an inverse query maps a resource to a domain name. For example, a standard query ...
... to a resource, an inverse query maps a resource to a domain name. For example, a standard query might bind a domain name to a host ...
... to a host address; the corresponding inverse query binds the host address to a domain name ...
... Inverse queries take the form of a single RR in the answer section of the message, with an empty question section. The owner name of the ...
... take the form of a single RR in the answer section of the message, with an empty question section. The owner name of the query RR and its TTL are not significant. The response carries ...
... TTL are not significant. The response carries questions in the question section which identify all names possessing the query RR WHICH THE NAME SERVER KNOWS. Since no name server ...
... about all of the domain name space, the response can never be assumed to be complete. Thus inverse queries are primarily useful for database management and debugging activities. Inverse ...
... are primarily useful for database management and debugging activities. Inverse queries are NOT an acceptable method of mapping host ...
... Where possible, name servers should provide case-insensitive comparisons for inverse queries. Thus an inverse query asking for an MX RR of ...
... case-insensitive comparisons for inverse queries. Thus an inverse query asking for an MX RR of "Venera.isi.edu" should get the same response as a query ...
... query asking for an MX RR of "Venera.isi.edu" should get the same response as a query for "VENERA.ISI.EDU"; an inverse query for HINFO RR ...
... "Venera.isi.edu" should get the same response as a query for "VENERA.ISI.EDU"; an inverse query for HINFO RR "IBM-PC UNIX ...
... PC UNIX" should produce the same result as an inverse query for "IBM-pc unix". However, this cannot be guaranteed because name servers may possess RRs that ...
... When a name server processes an inverse query, it either returns: ...
... When the response to an inverse query contains one or more QNAMEs, the owner name and TTL of the RR ...
... TTL of the RR in the answer section which defines the inverse query is modified to exactly match an RR found at the first QNAME. ...
... RRs returned in the inverse queries cannot be cached using the same mechanism as is used for the replies to standard queries. One reason ...
... RRs returned in the inverse queries cannot be cached using the same mechanism as is used for the replies to standard queries. One reason for this is that a name might have multiple RRs of the same type, and ...
... for this is that a name might have multiple RRs of the same type, and only one would appear. For example, an inverse query for a single address of a multiply homed host might ...
... Inverse query and response example ...
... The overall structure of an inverse query for retrieving the domain name that corresponds to Internet address 10.1.0.52 is shown below: ...
... This query asks for a question whose answer is the Internet style address 10.1.0.52. Since the owner name is not known, any ...
... TTL of the RR is not significant. The response to this query might be: ...
... Note that the QTYPE in a response to an inverse query is the same as the TYPE field in the answer section of the inverse query. Responses to ...
... Note that the QTYPE in a response to an inverse query is the same as the TYPE field in the answer section of the inverse query. Responses to inverse queries may contain multiple questions when the inverse is not ...
... TYPE field in the answer section of the inverse query. Responses to inverse queries may contain multiple questions when the inverse is not unique. If the question section in the response is not empty, then the RR in the answer section is modified to correspond to be an exact copy ...
... Inverse query processing ...
... Name servers that support inverse queries can support these operations through exhaustive searches of their databases, but this becomes ...
... Completion queries and responses ...


... Transforming a user request into a query ...
... cache in the usual manner, but still used by the current request, even after intervals of many seconds due to system load, query retransmission timeouts, etc. ...
... resolver from accessing the name servers it needs. While local limits on the number of times a resolver will retransmit a particular query to a particular name server address are ...
... Sending the queries ...
... As described in [RFC-1034], the basic task of the resolver is to formulate a query which will answer the client's request and direct that query to name servers which can provide the information. The resolver ...
... formulate a query which will answer the client's request and direct that query to name servers which can provide the information. The resolver will usually only have very strong hints about which servers to ask, in ...
... the form of NS RRs, and may have to revise the query, in response to CNAMEs, or revise the set of name servers the resolver is asking, in response to ...
... and some internally generated. Each request is represented by some state information, and the desired behavior is that the resolver transmit queries to name servers in a way that maximizes the probability that the request is answered, minimizes the time that the request takes, and avoids excessive transmissions. The key algorithm ...
... information of the request to select the next name server address to query, and also computes a timeout which will cause the next action should a response not arrive. The next action will usually be a transmission to some other server, but may be a temporary error to the ...
... The resolver always starts with a list of server names to query (SLIST). This list will be all NS RRs ...
... header for reasonableness. Discard datagrams which are queries when responses are expected. ...
... Some name servers send their responses from different addresses than the one used to receive the query. That is, a resolver cannot rely that a response will come from the same address ...
... resolver cannot rely that a response will come from the same address which it sent the corresponding query to. This name server bug is typically encountered in UNIX systems. ...
... The results of an inverse query should not be cached. ...
... The results of standard queries where the QNAME contains "*" labels if the data might be used to construct wildcards. The ...


... RRs for ISI.EDU. The MX RRs at ISI.EDU name VENERA.ISI.EDU and VAXA.ISI.EDU, and type A queries can find the host addresses. ...
... domain name for the mailbox is used as the QNAME field in a QTYPE=MAILB query. ...
... Several outcomes are possible for this query: ...
... The query can return a name error indicating that the mailbox ...
... The query can return a Mail Rename (MR) RR. ...
... The query can return a MB RR. ...
... The query can return one or more Mail Group (MG) RRs ...
... The query can return a MB RR as well as one or more MG ...



Google
Web
RFC-Ref