dnspython is a DNS toolkit for Python. It supports almost all of the record
types. It can be used for queries, zone transfers, and dynamic updates. It
supports TSIG authenticated messages and EDNS0. dnspython provides both high
and low level access to DNS. The high level classes perform queries for data
of a given name, type, and class, and return an answer set. The low level
classes allow direct manipulation of DNS zones, messages, names, and records.