Package dns :: Module query |
[hide private]
[frames] | no frames]

# Module query

source code

Talk to a DNS server.

Classes | [hide private]
| UnexpectedSource Raised if a query response comes from an unexpected address or port.
| BadResponse Raised if a query response does not respond to the question asked.

Functions | [hide private]
_compute_expiration(timeout) | source code
_poll_for(fd, readable, writable, error, timeout) | source code
_select_for(fd, readable, writable, error, timeout) | source code
_wait_for(fd, readable, writable, error, expiration) | source code
_set_polling_backend(fn) Internal API. | source code
_polling_backend(fd, readable, writable, error, timeout) | source code
_wait_for_readable(s, expiration) | source code
_wait_for_writable(s, expiration) | source code
_addresses_equal(af, a1, a2) | source code
dns.message.Message object |
udp(q, where, timeout=None, port=53, af=None, source=None, source_port=0, ignore_unexpected=False, one_rr_per_rrset=False) Return the response obtained after sending a query via UDP. | source code
_net_read(sock, count, expiration) Read the specified number of bytes from sock. | source code
_net_write(sock, data, expiration) Write the specified data to the socket. | source code
_connect(s, address) | source code
dns.message.Message object |
tcp(q, where, timeout=None, port=53, af=None, source=None, source_port=0, one_rr_per_rrset=False) Return the response obtained after sending a query via TCP. | source code
generator of dns.message.Message objects. |
xfr(where, zone, rdtype=252, rdclass=1, timeout=None, port=53, keyring=None, keyname=None, relativize=True, af=None, lifetime=None, source=None, source_port=0, serial=0, use_udp=False, keyalgorithm=<DNS name HMAC-MD5.SIG-ALG.REG.INT.>) Return a generator for the responses to a zone transfer. | source code

Variables | [hide private]
| __package__ = ``'``dns``'``

Function Details | [hide private]

### _poll_for(fd, readable, writable, error, timeout) | source code
Parameters: `fd` - File descriptor (int). `readable` - Whether to wait for readability (bool). `writable` - Whether to wait for writability (bool). `expiration` - Deadline timeout (expiration time, in seconds (float)). @return True on success, False on timeout

### _select_for(fd, readable, writable, error, timeout) | source code
Parameters: `fd` - File descriptor (int). `readable` - Whether to wait for readability (bool). `writable` - Whether to wait for writability (bool). `expiration` - Deadline timeout (expiration time, in seconds (float)). @return True on success, False on timeout

### _set_polling_backend(fn) | source code
Internal API. Do not use.

### _polling_backend(fd, readable, writable, error, timeout) | source code
Parameters: `fd` - File descriptor (int). `readable` - Whether to wait for readability (bool). `writable` - Whether to wait for writability (bool). `expiration` - Deadline timeout (expiration time, in seconds (float)). @return True on success, False on timeout

### udp(q, where, timeout=None, port=53, af=None, source=None, source_port=0, ignore_unexpected=False, one_rr_per_rrset=False) | source code
Return the response obtained after sending a query via UDP. Parameters: `q` (dns.message.Message) - the query `where` (string containing an IPv4 or IPv6 address) - where to send the message `timeout` (float) - The number of seconds to wait before the query times out. If None, the default, wait forever. `port` (int) - The port to which to send the message. The default is 53. `af` (int) - the address family to use. The default is None, which causes the address family to use to be inferred from the form of of where. If the inference attempt fails, AF_INET is used. `source` (string) - source address. The default is the IPv4 wildcard address. `source_port` (int) - The port from which to send the message. The default is 0. `ignore_unexpected` (bool) - If True, ignore responses from unexpected sources. The default is False. `one_rr_per_rrset` (bool) - Put each RR into its own RRset Returns: dns.message.Message object

### _net_read(sock, count, expiration) | source code
Read the specified number of bytes from sock. Keep trying until we either get the desired amount, or we hit EOF. A Timeout exception will be raised if the operation is not completed by the expiration time.

### _net_write(sock, data, expiration) | source code
Write the specified data to the socket. A Timeout exception will be raised if the operation is not completed by the expiration time.

### tcp(q, where, timeout=None, port=53, af=None, source=None, source_port=0, one_rr_per_rrset=False) | source code
Return the response obtained after sending a query via TCP. Parameters: `q` (dns.message.Message object) - the query `where` (string containing an IPv4 or IPv6 address) - where to send the message `timeout` (float) - The number of seconds to wait before the query times out. If None, the default, wait forever. `port` (int) - The port to which to send the message. The default is 53. `af` (int) - the address family to use. The default is None, which causes the address family to use to be inferred from the form of of where. If the inference attempt fails, AF_INET is used. `source` (string) - source address. The default is the IPv4 wildcard address. `source_port` (int) - The port from which to send the message. The default is 0. `one_rr_per_rrset` (bool) - Put each RR into its own RRset Returns: dns.message.Message object

### xfr(where, zone, rdtype=252, rdclass=1, timeout=None, port=53, keyring=None, keyname=None, relativize=True, af=None, lifetime=None, source=None, source_port=0, serial=0, use_udp=False, keyalgorithm=<DNS name HMAC-MD5.SIG-ALG.REG.INT.>) | source code
Return a generator for the responses to a zone transfer. Parameters: `where` (string containing an IPv4 or IPv6 address) - where to send the message `zone` (dns.name.Name object or string) - The name of the zone to transfer `rdtype` (int or string) - The type of zone transfer. The default is dns.rdatatype.AXFR. `rdclass` (int or string) - The class of the zone transfer. The default is dns.rdatatype.IN. `timeout` (float) - The number of seconds to wait for each response message. If None, the default, wait forever. `port` (int) - The port to which to send the message. The default is 53. `keyring` (dict) - The TSIG keyring to use `keyname` (dns.name.Name object or string) - The name of the TSIG key to use `relativize` (bool) - If True, all names in the zone will be relativized to the zone origin. It is essential that the relativize setting matches the one specified to dns.zone.from_xfr(). `af` (int) - the address family to use. The default is None, which causes the address family to use to be inferred from the form of of where. If the inference attempt fails, AF_INET is used. `lifetime` (float) - The total number of seconds to spend doing the transfer. If None, the default, then there is no limit on the time the transfer may take. `source` (string) - source address. The default is the IPv4 wildcard address. `source_port` (int) - The port from which to send the message. The default is 0. `serial` (int) - The SOA serial number to use as the base for an IXFR diff sequence (only meaningful if rdtype == dns.rdatatype.IXFR). `use_udp` (bool) - Use UDP (only meaningful for IXFR) `keyalgorithm` (string) - The TSIG algorithm to use; defaults to dns.tsig.default_algorithm Returns: generator of dns.message.Message objects.