|
|
@ -166,15 +166,21 @@ class BanManager:
|
|
|
|
answers = resolver.query(question, "TXT")
|
|
|
|
answers = resolver.query(question, "TXT")
|
|
|
|
if not answers:
|
|
|
|
if not answers:
|
|
|
|
raise ValueError("No data retrieved")
|
|
|
|
raise ValueError("No data retrieved")
|
|
|
|
|
|
|
|
asns = set()
|
|
|
|
|
|
|
|
countries = set()
|
|
|
|
|
|
|
|
rirs = set()
|
|
|
|
for rdata in answers:
|
|
|
|
for rdata in answers:
|
|
|
|
asn, net, country, rir, changed =\
|
|
|
|
asn, net, country, rir, changed =\
|
|
|
|
[answer.strip("'\" ") for answer in rdata.to_text().split("|")]
|
|
|
|
[answer.strip("'\" ") for answer in rdata.to_text().split("|")]
|
|
|
|
asn = self.handleBlankResult(asn)
|
|
|
|
asn = self.handleBlankResult(asn)
|
|
|
|
country = self.handleBlankResult(country)
|
|
|
|
country = self.handleBlankResult(country)
|
|
|
|
rir = self.handleBlankResult(rir)
|
|
|
|
rir = self.handleBlankResult(rir)
|
|
|
|
return_dict["asn"].append(self.handleBlankResult(asn))
|
|
|
|
asns.add(self.handleBlankResult(asn))
|
|
|
|
return_dict["country"].append(self.handleBlankResult(country))
|
|
|
|
countries.add(self.handleBlankResult(country))
|
|
|
|
return_dict["rir"].append(self.handleBlankResult(rir))
|
|
|
|
rirs.add(self.handleBlankResult(rir))
|
|
|
|
|
|
|
|
return_dict["asn"].append(', '.join(sorted(asns)))
|
|
|
|
|
|
|
|
return_dict["country"].append(', '.join(sorted(countries)))
|
|
|
|
|
|
|
|
return_dict["rir"].append(', '.join(sorted(rirs)))
|
|
|
|
except dns.resolver.NXDOMAIN:
|
|
|
|
except dns.resolver.NXDOMAIN:
|
|
|
|
return_dict["asn"].append("nxdomain")
|
|
|
|
return_dict["asn"].append("nxdomain")
|
|
|
|
return_dict["country"].append("nxdomain")
|
|
|
|
return_dict["country"].append("nxdomain")
|
|
|
|