diff --git a/lib/ipwhois/net.py b/lib/ipwhois/net.py index 77025e9d..301bbab4 100644 --- a/lib/ipwhois/net.py +++ b/lib/ipwhois/net.py @@ -126,6 +126,11 @@ class Net: self.timeout = timeout self.dns_resolver = dns.resolver.Resolver() + if hasattr(self.dns_resolver, "resolve"): + self.dns_resolve = getattr(self.dns_resolver, "resolve") + else: + self.dns_resolve = getattr(self.dns_resolver, "query") + self.dns_resolver.timeout = timeout self.dns_resolver.lifetime = timeout @@ -220,7 +225,7 @@ class Net: try: log.debug('ASN query for {0}'.format(self.dns_zone)) - data = self.dns_resolver.query(self.dns_zone, 'TXT') + data = self.dns_resolve(self.dns_zone, 'TXT') return list(data) except (dns.resolver.NXDOMAIN, dns.resolver.NoNameservers, @@ -262,7 +267,7 @@ class Net: try: log.debug('ASN verbose query for {0}'.format(zone)) - data = self.dns_resolver.query(zone, 'TXT') + data = self.dns_resolve(zone, 'TXT') return str(data[0]) except (dns.resolver.NXDOMAIN, dns.resolver.NoNameservers, diff --git a/requirements.txt b/requirements.txt index af72de1e..d6e0113e 100644 --- a/requirements.txt +++ b/requirements.txt @@ -11,7 +11,7 @@ cheroot==8.6.0 cherrypy==18.6.1 cloudinary==1.28.0 distro==1.6.0 -dnspython==2.0.0 # ipwhois requires dnspython<=2.0.0 +dnspython==2.0.0 facebook-sdk==3.1.0 future==0.18.2 gntp==1.0.3 @@ -19,7 +19,7 @@ html5lib==1.1 httpagentparser==1.9.1 idna==3.3 importlib-resources==5.4.0 -ipwhois==1.2.0 +git+https://github.com/Tautulli/ipwhois.git@master#egg=ipwhois IPy==1.01 Mako==1.1.6 MarkupSafe==2.0.1