Explorar o código

use google nameserver

Son NK %!s(int64=5) %!d(string=hai) anos
pai
achega
40c2040ddc
Modificáronse 1 ficheiros con 24 adicións e 4 borrados
  1. 24 4
      app/dns_utils.py

+ 24 - 4
app/dns_utils.py

@@ -6,7 +6,12 @@ def get_mx_domains(hostname) -> [(int, str)]:
     domain name ends with a "." at the end.
     domain name ends with a "." at the end.
     """
     """
     try:
     try:
-        answers = dns.resolver.query(hostname, "MX")
+        my_resolver = dns.resolver.Resolver()
+
+        # 8.8.8.8 is Google's public DNS server
+        my_resolver.nameservers = ['8.8.8.8']
+
+        answers = my_resolver.query(hostname, "MX")
     except Exception:
     except Exception:
         return []
         return []
 
 
@@ -27,7 +32,12 @@ _include_spf = "include:"
 def get_spf_domain(hostname) -> [str]:
 def get_spf_domain(hostname) -> [str]:
     """return all domains listed in *include:*"""
     """return all domains listed in *include:*"""
     try:
     try:
-        answers = dns.resolver.query(hostname, "TXT")
+        my_resolver = dns.resolver.Resolver()
+
+        # 8.8.8.8 is Google's public DNS server
+        my_resolver.nameservers = ['8.8.8.8']
+
+        answers = my_resolver.query(hostname, "TXT")
     except Exception:
     except Exception:
         return []
         return []
 
 
@@ -48,7 +58,12 @@ def get_spf_domain(hostname) -> [str]:
 
 
 def get_txt_record(hostname) -> [str]:
 def get_txt_record(hostname) -> [str]:
     try:
     try:
-        answers = dns.resolver.query(hostname, "TXT")
+        my_resolver = dns.resolver.Resolver()
+
+        # 8.8.8.8 is Google's public DNS server
+        my_resolver.nameservers = ['8.8.8.8']
+
+        answers = my_resolver.query(hostname, "TXT")
     except Exception:
     except Exception:
         return []
         return []
 
 
@@ -66,7 +81,12 @@ def get_txt_record(hostname) -> [str]:
 def get_dkim_record(hostname) -> str:
 def get_dkim_record(hostname) -> str:
     """query the dkim._domainkey.{hostname} record and returns its value"""
     """query the dkim._domainkey.{hostname} record and returns its value"""
     try:
     try:
-        answers = dns.resolver.query(f"dkim._domainkey.{hostname}", "TXT")
+        my_resolver = dns.resolver.Resolver()
+
+        # 8.8.8.8 is Google's public DNS server
+        my_resolver.nameservers = ['8.8.8.8']
+
+        answers = my_resolver.query(f"dkim._domainkey.{hostname}", "TXT")
     except Exception:
     except Exception:
         return ""
         return ""