class twisted.names.root.Resolver(common.ResolverBase): (source)
Resolver
implements recursive lookup starting from a specified list of root servers.
Instance Variable | hints | See hints parameter of __init__ |
Method | __init__ | No summary |
Instance Variable | _maximumQueries | See maximumQueries parameter of __init__ |
Instance Variable | _reactor | See reactor parameter of __init__ |
Instance Variable | _resolverFactory | See resolverFactory parameter of __init__ |
Method | _roots | Return a list of two-tuples representing the addresses of the root servers, as defined by self.hints . |
Method | _query | Issue one query and return a Deferred which fires with its response. |
Method | _lookup | Implement name lookup by recursively discovering the authoritative server for the name and then asking it, starting at one of the servers in self.hints . |
Method | _discoverAuthority | Issue a query to a server and follow a delegation if necessary. |
Method | _discoveredAuthority | Interpret the response to a query, checking for error codes and following delegations if necessary. |
Inherited from ResolverBase:
Instance Variable | typeToMethod | Undocumented |
Method | exceptionForCode | Convert a response code (one of the possible values of dns.Message.rCode to an exception instance representing it. |
Method | query | Dispatch query to the method which can handle its type. |
Method | lookupAddress | Perform an A record lookup. |
Method | lookupIPV6Address | Perform an AAAA record lookup. |
Method | lookupAddress6 | Perform an A6 record lookup. |
Method | lookupMailExchange | Perform an MX record lookup. |
Method | lookupNameservers | Perform an NS record lookup. |
Method | lookupCanonicalName | Perform a CNAME record lookup. |
Method | lookupMailBox | Perform an MB record lookup. |
Method | lookupMailGroup | Perform an MG record lookup. |
Method | lookupMailRename | Perform an MR record lookup. |
Method | lookupPointer | Perform a PTR record lookup. |
Method | lookupAuthority | Perform an SOA record lookup. |
Method | lookupNull | Perform a NULL record lookup. |
Method | lookupWellKnownServices | Perform a WKS record lookup. |
Method | lookupService | Perform an SRV record lookup. |
Method | lookupHostInfo | Perform a HINFO record lookup. |
Method | lookupMailboxInfo | Perform an MINFO record lookup. |
Method | lookupText | Perform a TXT record lookup. |
Method | lookupSenderPolicy | Perform a SPF record lookup. |
Method | lookupResponsibility | Perform an RP record lookup. |
Method | lookupAFSDatabase | Perform an AFSDB record lookup. |
Method | lookupZone | Perform an AXFR record lookup. |
Method | lookupNamingAuthorityPointer | Perform a NAPTR record lookup. |
Method | lookupAllRecords | Perform an ALL_RECORD lookup. |
Method | getHostByName | Resolve the domain name name into an IP address. |
Class Variable | _errormap | A dict mapping DNS protocol failure response codes to exception classes which will be used to represent those failures. |
Class Variable | _log | Undocumented |
Method | _cbRecords | Undocumented |
Parameters | hints | A list of str giving the dotted quad representation of IP addresses of root servers at which to begin resolving names. (type: list of str ) |
maximumQueries | An optional int giving the maximum number of queries which will be attempted to resolve a single name. (type: int ) | |
reactor | An optional IReactorTime and IReactorUDP provider to use to bind UDP ports and manage timeouts. (type: IReactorTime and IReactorUDP provider) | |
resolverFactory | An optional callable which accepts reactor and servers arguments and returns an instance that provides a queryUDP method. Defaults to twisted.names.client.Resolver . (type: callable) |
Return a list of two-tuples representing the addresses of the root servers, as defined by self.hints
.
Issue one query and return a Deferred
which fires with its response.
Parameters | query | The query to issue. (type: dns.Query ) |
servers | The servers which might have an answer for this query. (type: list of tuple of str and int ) | |
timeout | A timeout on how long to wait for the response. (type: tuple of int ) | |
filter | A flag indicating whether to filter the results. If True , the returned Deferred will fire with a three-tuple of lists of twisted.names.dns.RRHeader (like the return value of the lookup* methods of IResolver . IF False , the result will be a Message instance. (type: bool ) | |
Returns | A Deferred which fires with the response or a timeout error. (type: Deferred ) |
Implement name lookup by recursively discovering the authoritative server for the name and then asking it, starting at one of the servers in self.hints
.
Issue a query to a server and follow a delegation if necessary.
Parameters | query | The query to issue. (type: dns.Query ) |
servers | The servers which might have an answer for this query. (type: list of tuple of str and int ) | |
timeout | A tuple of int giving the timeout to use for this query. | |
queriesLeft | A int giving the number of queries which may yet be attempted to answer this query before the attempt will be abandoned. | |
Returns | A Deferred which fires with a three-tuple of lists of twisted.names.dns.RRHeader giving the response, or with a Failure if there is a timeout or response error. |
Interpret the response to a query, checking for error codes and following delegations if necessary.
Parameters | response | The Message received in response to issuing query . (type: Message ) |
query | The dns.Query which was issued. (type: dns.Query .) | |
timeout | The timeout to use if another query is indicated by this response. (type: tuple of int ) | |
queriesLeft | A int giving the number of queries which may yet be attempted to answer this query before the attempt will be abandoned. | |
Returns | A Failure indicating a response error, a three-tuple of lists of twisted.names.dns.RRHeader giving the response to query or a Deferred which will fire with one of those. |