Added CNAME->A record function and implemented the lookup chain from

CNAME -> A record for all applicable records.

this can most likely be done much cleaner, this is a future Ben problem
This commit is contained in:
Benjamyn Love 2018-03-23 05:32:04 +11:00
parent 3e854701d0
commit 897e34c2af
2 changed files with 23 additions and 3 deletions

4
TODO Normal file
View File

@ -0,0 +1,4 @@
#TODO
Clean up messy as fuck code, you cannot code well tired, idiot -_-
NOTE: music helps a lot

20
main.py
View File

@ -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):
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