D7net
Home
Console
Upload
information
Create File
Create Folder
About
Tools
:
/
proc
/
self
/
root
/
usr
/
share
/
doc
/
python3-dns
/
examples
/
Filename :
reverse.py
back
Copy
#!/usr/bin/env python # Usage: reverse.py <zone_filename>... # # This demo script will load in all of the zones specified by the # filenames on the command line, find all the A RRs in them, and # construct a reverse mapping table that maps each IP address used to # the list of names mapping to that address. The table is then sorted # nicely and printed. # # Note! The zone name is taken from the basename of the filename, so # you must use filenames like "/wherever/you/like/dnspython.org" and # not something like "/wherever/you/like/foo.db" (unless you're # working with the ".db" GTLD, of course :)). # # If this weren't a demo script, there'd be a way of specifying the # origin for each zone instead of constructing it from the filename. from __future__ import print_function import dns.zone import dns.ipv4 import os.path import sys reverse_map = {} for filename in sys.argv[1:]: zone = dns.zone.from_file(filename, os.path.basename(filename), relativize=False) for (name, ttl, rdata) in zone.iterate_rdatas('A'): try: reverse_map[rdata.address].append(name.to_text()) except KeyError: reverse_map[rdata.address] = [name.to_text()] keys = reverse_map.keys() keys.sort(key=dns.ipv4.inet_aton) for k in keys: v = reverse_map[k] v.sort() print(k, v)
Name
Size
Last Modified
Owner
Permissions
Actions
ddns.py
1.176
KB
September 20 2016 4:24:02
root
0644
e164.py
0.148
KB
September 20 2016 4:24:02
root
0644
mx.py
0.22
KB
September 20 2016 4:24:02
root
0644
name.py
0.457
KB
September 20 2016 4:24:02
root
0644
reverse.py
1.321
KB
September 20 2016 4:24:02
root
0644
reverse_name.py
0.173
KB
September 20 2016 4:24:02
root
0644
xfr.py
0.384
KB
September 20 2016 4:24:02
root
0644
zonediff.py
10.861
KB
September 20 2016 4:24:02
root
0644
2017 © D7net | D704T team