diff --git a/TODO b/TODO new file mode 100644 index 0000000..ec756cc --- /dev/null +++ b/TODO @@ -0,0 +1,4 @@ +#TODO +Clean up messy as fuck code, you cannot code well tired, idiot -_- + +NOTE: music helps a lot diff --git a/main.py b/main.py index 36f92a6..6086612 100755 --- a/main.py +++ b/main.py @@ -53,6 +53,11 @@ def printWhois(resultData): except Exception as e: pass +def cnameToA(cname): + data = dns.resolver.query(cname, "A") + for rdata in data: + return rdata + def parseInput(inData): tmpInData = inData.lower() tmpInData = tmpInData.strip() @@ -67,8 +72,18 @@ def parseInput(inData): def recLookup(inData): for dnsrec in dnsrecords: try: - for rdata in dns.resolver.query(inData, dnsrec): - print( indent + colour_pretty + "%s:\t%s%s" % (dnsrec, colour_good, rdata) + colour_default) + data = dns.resolver.query(inData, dnsrec) + for rdata in data: + rdataTMP = rdata.to_text().split(" ") + if dnsrec != "MX": + if dnsrec != "NS": + print( indent + colour_pretty + "%s:\t%s%s" % (dnsrec, colour_good, rdata) + colour_default) + else: + tmpData = cnameToA(rdata.to_text()) + print( indent + colour_pretty + "%s:\t%s%s -> %s" % (dnsrec, colour_good, rdata, tmpData) + colour_default) + else: + tmpData = cnameToA(rdataTMP[1]) + print( indent + colour_pretty + "%s:\t%s%s -> %s" % (dnsrec, colour_good, rdata, tmpData) + colour_default) except Exception as e: pass @@ -81,7 +96,8 @@ def subLookup(inData, sub): record = rdata else: for rdata in dns.resolver.query(sub + '.' + inData, "CNAME"): - record = rdata + record = rdata.to_text() + record = record + " -> " + cnameToA(sub + "." + inData).to_text() print(indent + colour_pretty + "%s:\t%s%s" % (sub, colour_good, record) + colour_default) except Exception as e: pass