blob: 297afcb01fd3bcc0dc3f08a2c9a0e051755f2c82 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
|
import sys
import trio
import dns.message
import dns.asyncquery
import dns.asyncresolver
async def main():
if len(sys.argv) > 1:
host = sys.argv[0]
else:
host = "www.dnspython.org"
q = dns.message.make_query(host, "A")
r = await dns.asyncquery.udp(q, "8.8.8.8")
print(r)
q = dns.message.make_query(host, "A")
r = await dns.asyncquery.tcp(q, "8.8.8.8")
print(r)
q = dns.message.make_query(host, "A")
r = await dns.asyncquery.tls(q, "8.8.8.8")
print(r)
a = await dns.asyncresolver.resolve(host, "A")
print(a.response)
zn = await dns.asyncresolver.zone_for_name(host)
print(zn)
answer = await dns.asyncresolver.resolve_at("8.8.8.8", "amazon.com", "NS")
print("The amazon.com nameservers are:")
for rr in answer:
print(rr.target)
if __name__ == "__main__":
trio.run(main)
|