BACKD00R 1337
Server IP : 164.52.202.56  /  Your IP : 216.73.216.204
Web Server : Apache
System : Linux e2e-70-56.ssdcloudindia.net 4.18.0-553.27.1.el8_10.x86_64 #1 SMP Tue Nov 5 04:50:16 EST 2024 x86_64
User : rubyaromatics ( 1052)
PHP Version : 7.2.34
Directory (0755) :  /sbin/../share/doc/perl-Algorithm-Diff/../python3-dns/examples/

[  Home  ][  Terminal  ][  Upload File  ]

Current File : //sbin/../share/doc/perl-Algorithm-Diff/../python3-dns/examples/reverse.py
#!/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)

security is just an illusion