DNS故障判定和性能测试工具



  • 项目地址

    https://github.com/farrokhi/dnsdiag

    它能做什么?

    曾经想知道你的ISP是否在劫持你的DNS流量?
    有没有观察到您的DNS响应有任何不当行为?
    曾被重定向到错误的地址并怀疑您的DNS有问题吗?

    在windows上 你可以通过像netsh winsock reset 或者像360 LSP修复插件 来修复

    在linux下可以使用DNSdiag来对您的DNS请求和响应执行基本判断

    可以使用任意请求测试任何给定DNS服务器的响应时间dnsping 就像传统的ping实用程序一样,它为DNS请求提供了类似的功能

    还可以跟踪DNS请求到达目标的路径,以确保它没有被重定向或被劫持。这可以通过比较发送到同一DNS服务器的不同DNS查询来完成,dnstraceroute并观察路径之间是否存在任何差异

    dnseval评估多个DNS解析器,并帮助您为您的网络选择最佳DNS服务器

    虽然强烈建议您使用自己的DNS解析器并且永远不要信任任何第三方DNS服务器,但是如果您需要为您的网络选择最佳DNS转发器,dnseval可以让您将不同的DNS服务器与性能(延迟)和可靠性进行比较(损失)观点。

    安装之前你需要做什么?

    这个脚本需要python3以及最新的 dnspython和 cymruwhois。

    dnspython安装:

    wget http://www.dnspython.org/kits/1.9.4/dnspython-1.9.4.tar.gz
    
    tar -zxvf  dnspython-1.9.4.tar.gz
    
    cd dnspython-1.9.4
    
    python setup.py install
    
    

    成功安装之后:

    ┌─[root@parrot]─[/home/hacker/dnspython-1.9.4]
    └──╼ #python setup.py install
    running install
    running build
    running build_py
    running install_lib
    creating /usr/local/lib/python2.7/dist-packages/dns
    copying build/lib.linux-x86_64-2.7/dns/tsig.py -> /usr/local/lib/python2.7/dist-packages/dns
    copying build/lib.linux-x86_64-2.7/dns/node.py -> /usr/local/lib/python2.7/dist-packages/dns
    copying build/lib.linux-x86_64-2.7/dns/renderer.py -> /usr/local/lib/python2.7/dist-packages/dns
    copying build/lib.linux-x86_64-2.7/dns/name.py -> /usr/local/lib/python2.7/dist-packages/dns
    copying build/lib.linux-x86_64-2.7/dns/query.py -> /usr/local/lib/python2.7/dist-packages/dns
    copying build/lib.linux-x86_64-2.7/dns/__init__.py -> /usr/local/lib/python2.7/dist-packages/dns
    copying build/lib.linux-x86_64-2.7/dns/version.py -> /usr/local/lib/python2.7/dist-packages/dns
    copying build/lib.linux-x86_64-2.7/dns/update.py -> /usr/local/lib/python2.7/dist-packages/dns
    copying build/lib.linux-x86_64-2.7/dns/edns.py -> /usr/local/lib/python2.7/dist-packages/dns
    copying build/lib.linux-x86_64-2.7/dns/inet.py -> /usr/local/lib/python2.7/dist-packages/dns
    copying build/lib.linux-x86_64-2.7/dns/opcode.py -> /usr/local/lib/python2.7/dist-packages/dns
    copying build/lib.linux-x86_64-2.7/dns/namedict.py -> /usr/local/lib/python2.7/dist-packages/dns
    copying build/lib.linux-x86_64-2.7/dns/rdataclass.py -> /usr/local/lib/python2.7/dist-packages/dns
    copying build/lib.linux-x86_64-2.7/dns/ttl.py -> /usr/local/lib/python2.7/dist-packages/dns
    copying build/lib.linux-x86_64-2.7/dns/tsigkeyring.py -> /usr/local/lib/python2.7/dist-packages/dns
    copying build/lib.linux-x86_64-2.7/dns/rdataset.py -> /usr/local/lib/python2.7/dist-packages/dns
    copying build/lib.linux-x86_64-2.7/dns/rdatatype.py -> /usr/local/lib/python2.7/dist-packages/dns
    copying build/lib.linux-x86_64-2.7/dns/ipv6.py -> /usr/local/lib/python2.7/dist-packages/dns
    copying build/lib.linux-x86_64-2.7/dns/entropy.py -> /usr/local/lib/python2.7/dist-packages/dns
    copying build/lib.linux-x86_64-2.7/dns/tokenizer.py -> /usr/local/lib/python2.7/dist-packages/dns
    copying build/lib.linux-x86_64-2.7/dns/message.py -> /usr/local/lib/python2.7/dist-packages/dns
    copying build/lib.linux-x86_64-2.7/dns/dnssec.py -> /usr/local/lib/python2.7/dist-packages/dns
    copying build/lib.linux-x86_64-2.7/dns/zone.py -> /usr/local/lib/python2.7/dist-packages/dns
    copying build/lib.linux-x86_64-2.7/dns/resolver.py -> /usr/local/lib/python2.7/dist-packages/dns
    creating /usr/local/lib/python2.7/dist-packages/dns/rdtypes
    copying build/lib.linux-x86_64-2.7/dns/rdtypes/__init__.py -> /usr/local/lib/python2.7/dist-packages/dns/rdtypes
    copying build/lib.linux-x86_64-2.7/dns/rdtypes/nsbase.py -> /usr/local/lib/python2.7/dist-packages/dns/rdtypes
    creating /usr/local/lib/python2.7/dist-packages/dns/rdtypes/IN
    copying build/lib.linux-x86_64-2.7/dns/rdtypes/IN/__init__.py -> /usr/local/lib/python2.7/dist-packages/dns/rdtypes/IN
    copying build/lib.linux-x86_64-2.7/dns/rdtypes/IN/NSAP_PTR.py -> /usr/local/lib/python2.7/dist-packages/dns/rdtypes/IN
    copying build/lib.linux-x86_64-2.7/dns/rdtypes/IN/DHCID.py -> /usr/local/lib/python2.7/dist-packages/dns/rdtypes/IN
    copying build/lib.linux-x86_64-2.7/dns/rdtypes/IN/APL.py -> /usr/local/lib/python2.7/dist-packages/dns/rdtypes/IN
    copying build/lib.linux-x86_64-2.7/dns/rdtypes/IN/AAAA.py -> /usr/local/lib/python2.7/dist-packages/dns/rdtypes/IN
    copying build/lib.linux-x86_64-2.7/dns/rdtypes/IN/A.py -> /usr/local/lib/python2.7/dist-packages/dns/rdtypes/IN
    copying build/lib.linux-x86_64-2.7/dns/rdtypes/IN/IPSECKEY.py -> /usr/local/lib/python2.7/dist-packages/dns/rdtypes/IN
    copying build/lib.linux-x86_64-2.7/dns/rdtypes/IN/KX.py -> /usr/local/lib/python2.7/dist-packages/dns/rdtypes/IN
    copying build/lib.linux-x86_64-2.7/dns/rdtypes/IN/SRV.py -> /usr/local/lib/python2.7/dist-packages/dns/rdtypes/IN
    copying build/lib.linux-x86_64-2.7/dns/rdtypes/IN/WKS.py -> /usr/local/lib/python2.7/dist-packages/dns/rdtypes/IN
    copying build/lib.linux-x86_64-2.7/dns/rdtypes/IN/NAPTR.py -> /usr/local/lib/python2.7/dist-packages/dns/rdtypes/IN
    copying build/lib.linux-x86_64-2.7/dns/rdtypes/IN/PX.py -> /usr/local/lib/python2.7/dist-packages/dns/rdtypes/IN
    copying build/lib.linux-x86_64-2.7/dns/rdtypes/IN/NSAP.py -> /usr/local/lib/python2.7/dist-packages/dns/rdtypes/IN
    copying build/lib.linux-x86_64-2.7/dns/rdtypes/mxbase.py -> /usr/local/lib/python2.7/dist-packages/dns/rdtypes
    copying build/lib.linux-x86_64-2.7/dns/rdtypes/sigbase.py -> /usr/local/lib/python2.7/dist-packages/dns/rdtypes
    copying build/lib.linux-x86_64-2.7/dns/rdtypes/keybase.py -> /usr/local/lib/python2.7/dist-packages/dns/rdtypes
    copying build/lib.linux-x86_64-2.7/dns/rdtypes/dsbase.py -> /usr/local/lib/python2.7/dist-packages/dns/rdtypes
    creating /usr/local/lib/python2.7/dist-packages/dns/rdtypes/ANY
    copying build/lib.linux-x86_64-2.7/dns/rdtypes/ANY/SOA.py -> /usr/local/lib/python2.7/dist-packages/dns/rdtypes/ANY
    copying build/lib.linux-x86_64-2.7/dns/rdtypes/ANY/NSEC3.py -> /usr/local/lib/python2.7/dist-packages/dns/rdtypes/ANY
    copying build/lib.linux-x86_64-2.7/dns/rdtypes/ANY/SPF.py -> /usr/local/lib/python2.7/dist-packages/dns/rdtypes/ANY
    copying build/lib.linux-x86_64-2.7/dns/rdtypes/ANY/HIP.py -> /usr/local/lib/python2.7/dist-packages/dns/rdtypes/ANY
    copying build/lib.linux-x86_64-2.7/dns/rdtypes/ANY/NS.py -> /usr/local/lib/python2.7/dist-packages/dns/rdtypes/ANY
    copying build/lib.linux-x86_64-2.7/dns/rdtypes/ANY/SIG.py -> /usr/local/lib/python2.7/dist-packages/dns/rdtypes/ANY
    copying build/lib.linux-x86_64-2.7/dns/rdtypes/ANY/AFSDB.py -> /usr/local/lib/python2.7/dist-packages/dns/rdtypes/ANY
    copying build/lib.linux-x86_64-2.7/dns/rdtypes/ANY/__init__.py -> /usr/local/lib/python2.7/dist-packages/dns/rdtypes/ANY
    copying build/lib.linux-x86_64-2.7/dns/rdtypes/ANY/GPOS.py -> /usr/local/lib/python2.7/dist-packages/dns/rdtypes/ANY
    copying build/lib.linux-x86_64-2.7/dns/rdtypes/ANY/DNSKEY.py -> /usr/local/lib/python2.7/dist-packages/dns/rdtypes/ANY
    copying build/lib.linux-x86_64-2.7/dns/rdtypes/ANY/MX.py -> /usr/local/lib/python2.7/dist-packages/dns/rdtypes/ANY
    copying build/lib.linux-x86_64-2.7/dns/rdtypes/ANY/KEY.py -> /usr/local/lib/python2.7/dist-packages/dns/rdtypes/ANY
    copying build/lib.linux-x86_64-2.7/dns/rdtypes/ANY/LOC.py -> /usr/local/lib/python2.7/dist-packages/dns/rdtypes/ANY
    copying build/lib.linux-x86_64-2.7/dns/rdtypes/ANY/CNAME.py -> /usr/local/lib/python2.7/dist-packages/dns/rdtypes/ANY
    copying build/lib.linux-x86_64-2.7/dns/rdtypes/ANY/HINFO.py -> /usr/local/lib/python2.7/dist-packages/dns/rdtypes/ANY
    copying build/lib.linux-x86_64-2.7/dns/rdtypes/ANY/X25.py -> /usr/local/lib/python2.7/dist-packages/dns/rdtypes/ANY
    copying build/lib.linux-x86_64-2.7/dns/rdtypes/ANY/CERT.py -> /usr/local/lib/python2.7/dist-packages/dns/rdtypes/ANY
    copying build/lib.linux-x86_64-2.7/dns/rdtypes/ANY/TXT.py -> /usr/local/lib/python2.7/dist-packages/dns/rdtypes/ANY
    copying build/lib.linux-x86_64-2.7/dns/rdtypes/ANY/PTR.py -> /usr/local/lib/python2.7/dist-packages/dns/rdtypes/ANY
    copying build/lib.linux-x86_64-2.7/dns/rdtypes/ANY/RT.py -> /usr/local/lib/python2.7/dist-packages/dns/rdtypes/ANY
    copying build/lib.linux-x86_64-2.7/dns/rdtypes/ANY/DS.py -> /usr/local/lib/python2.7/dist-packages/dns/rdtypes/ANY
    copying build/lib.linux-x86_64-2.7/dns/rdtypes/ANY/SSHFP.py -> /usr/local/lib/python2.7/dist-packages/dns/rdtypes/ANY
    copying build/lib.linux-x86_64-2.7/dns/rdtypes/ANY/NXT.py -> /usr/local/lib/python2.7/dist-packages/dns/rdtypes/ANY
    copying build/lib.linux-x86_64-2.7/dns/rdtypes/ANY/RRSIG.py -> /usr/local/lib/python2.7/dist-packages/dns/rdtypes/ANY
    copying build/lib.linux-x86_64-2.7/dns/rdtypes/ANY/DNAME.py -> /usr/local/lib/python2.7/dist-packages/dns/rdtypes/ANY
    copying build/lib.linux-x86_64-2.7/dns/rdtypes/ANY/DLV.py -> /usr/local/lib/python2.7/dist-packages/dns/rdtypes/ANY
    copying build/lib.linux-x86_64-2.7/dns/rdtypes/ANY/NSEC3PARAM.py -> /usr/local/lib/python2.7/dist-packages/dns/rdtypes/ANY
    copying build/lib.linux-x86_64-2.7/dns/rdtypes/ANY/RP.py -> /usr/local/lib/python2.7/dist-packages/dns/rdtypes/ANY
    copying build/lib.linux-x86_64-2.7/dns/rdtypes/ANY/ISDN.py -> /usr/local/lib/python2.7/dist-packages/dns/rdtypes/ANY
    copying build/lib.linux-x86_64-2.7/dns/rdtypes/ANY/NSEC.py -> /usr/local/lib/python2.7/dist-packages/dns/rdtypes/ANY
    copying build/lib.linux-x86_64-2.7/dns/rdtypes/txtbase.py -> /usr/local/lib/python2.7/dist-packages/dns/rdtypes
    copying build/lib.linux-x86_64-2.7/dns/e164.py -> /usr/local/lib/python2.7/dist-packages/dns
    copying build/lib.linux-x86_64-2.7/dns/rrset.py -> /usr/local/lib/python2.7/dist-packages/dns
    copying build/lib.linux-x86_64-2.7/dns/rcode.py -> /usr/local/lib/python2.7/dist-packages/dns
    copying build/lib.linux-x86_64-2.7/dns/set.py -> /usr/local/lib/python2.7/dist-packages/dns
    copying build/lib.linux-x86_64-2.7/dns/exception.py -> /usr/local/lib/python2.7/dist-packages/dns
    copying build/lib.linux-x86_64-2.7/dns/hash.py -> /usr/local/lib/python2.7/dist-packages/dns
    copying build/lib.linux-x86_64-2.7/dns/rdata.py -> /usr/local/lib/python2.7/dist-packages/dns
    copying build/lib.linux-x86_64-2.7/dns/flags.py -> /usr/local/lib/python2.7/dist-packages/dns
    copying build/lib.linux-x86_64-2.7/dns/ipv4.py -> /usr/local/lib/python2.7/dist-packages/dns
    copying build/lib.linux-x86_64-2.7/dns/reversename.py -> /usr/local/lib/python2.7/dist-packages/dns
    byte-compiling /usr/local/lib/python2.7/dist-packages/dns/tsig.py to tsig.pyc
    byte-compiling /usr/local/lib/python2.7/dist-packages/dns/node.py to node.pyc
    byte-compiling /usr/local/lib/python2.7/dist-packages/dns/renderer.py to renderer.pyc
    byte-compiling /usr/local/lib/python2.7/dist-packages/dns/name.py to name.pyc
    byte-compiling /usr/local/lib/python2.7/dist-packages/dns/query.py to query.pyc
    byte-compiling /usr/local/lib/python2.7/dist-packages/dns/__init__.py to __init__.pyc
    byte-compiling /usr/local/lib/python2.7/dist-packages/dns/version.py to version.pyc
    byte-compiling /usr/local/lib/python2.7/dist-packages/dns/update.py to update.pyc
    byte-compiling /usr/local/lib/python2.7/dist-packages/dns/edns.py to edns.pyc
    byte-compiling /usr/local/lib/python2.7/dist-packages/dns/inet.py to inet.pyc
    byte-compiling /usr/local/lib/python2.7/dist-packages/dns/opcode.py to opcode.pyc
    byte-compiling /usr/local/lib/python2.7/dist-packages/dns/namedict.py to namedict.pyc
    byte-compiling /usr/local/lib/python2.7/dist-packages/dns/rdataclass.py to rdataclass.pyc
    byte-compiling /usr/local/lib/python2.7/dist-packages/dns/ttl.py to ttl.pyc
    byte-compiling /usr/local/lib/python2.7/dist-packages/dns/tsigkeyring.py to tsigkeyring.pyc
    byte-compiling /usr/local/lib/python2.7/dist-packages/dns/rdataset.py to rdataset.pyc
    byte-compiling /usr/local/lib/python2.7/dist-packages/dns/rdatatype.py to rdatatype.pyc
    byte-compiling /usr/local/lib/python2.7/dist-packages/dns/ipv6.py to ipv6.pyc
    byte-compiling /usr/local/lib/python2.7/dist-packages/dns/entropy.py to entropy.pyc
    byte-compiling /usr/local/lib/python2.7/dist-packages/dns/tokenizer.py to tokenizer.pyc
    byte-compiling /usr/local/lib/python2.7/dist-packages/dns/message.py to message.pyc
    byte-compiling /usr/local/lib/python2.7/dist-packages/dns/dnssec.py to dnssec.pyc
    byte-compiling /usr/local/lib/python2.7/dist-packages/dns/zone.py to zone.pyc
    byte-compiling /usr/local/lib/python2.7/dist-packages/dns/resolver.py to resolver.pyc
    byte-compiling /usr/local/lib/python2.7/dist-packages/dns/rdtypes/__init__.py to __init__.pyc
    byte-compiling /usr/local/lib/python2.7/dist-packages/dns/rdtypes/nsbase.py to nsbase.pyc
    byte-compiling /usr/local/lib/python2.7/dist-packages/dns/rdtypes/IN/__init__.py to __init__.pyc
    byte-compiling /usr/local/lib/python2.7/dist-packages/dns/rdtypes/IN/NSAP_PTR.py to NSAP_PTR.pyc
    byte-compiling /usr/local/lib/python2.7/dist-packages/dns/rdtypes/IN/DHCID.py to DHCID.pyc
    byte-compiling /usr/local/lib/python2.7/dist-packages/dns/rdtypes/IN/APL.py to APL.pyc
    byte-compiling /usr/local/lib/python2.7/dist-packages/dns/rdtypes/IN/AAAA.py to AAAA.pyc
    byte-compiling /usr/local/lib/python2.7/dist-packages/dns/rdtypes/IN/A.py to A.pyc
    byte-compiling /usr/local/lib/python2.7/dist-packages/dns/rdtypes/IN/IPSECKEY.py to IPSECKEY.pyc
    byte-compiling /usr/local/lib/python2.7/dist-packages/dns/rdtypes/IN/KX.py to KX.pyc
    byte-compiling /usr/local/lib/python2.7/dist-packages/dns/rdtypes/IN/SRV.py to SRV.pyc
    byte-compiling /usr/local/lib/python2.7/dist-packages/dns/rdtypes/IN/WKS.py to WKS.pyc
    byte-compiling /usr/local/lib/python2.7/dist-packages/dns/rdtypes/IN/NAPTR.py to NAPTR.pyc
    byte-compiling /usr/local/lib/python2.7/dist-packages/dns/rdtypes/IN/PX.py to PX.pyc
    byte-compiling /usr/local/lib/python2.7/dist-packages/dns/rdtypes/IN/NSAP.py to NSAP.pyc
    byte-compiling /usr/local/lib/python2.7/dist-packages/dns/rdtypes/mxbase.py to mxbase.pyc
    byte-compiling /usr/local/lib/python2.7/dist-packages/dns/rdtypes/sigbase.py to sigbase.pyc
    byte-compiling /usr/local/lib/python2.7/dist-packages/dns/rdtypes/keybase.py to keybase.pyc
    byte-compiling /usr/local/lib/python2.7/dist-packages/dns/rdtypes/dsbase.py to dsbase.pyc
    byte-compiling /usr/local/lib/python2.7/dist-packages/dns/rdtypes/ANY/SOA.py to SOA.pyc
    byte-compiling /usr/local/lib/python2.7/dist-packages/dns/rdtypes/ANY/NSEC3.py to NSEC3.pyc
    byte-compiling /usr/local/lib/python2.7/dist-packages/dns/rdtypes/ANY/SPF.py to SPF.pyc
    byte-compiling /usr/local/lib/python2.7/dist-packages/dns/rdtypes/ANY/HIP.py to HIP.pyc
    byte-compiling /usr/local/lib/python2.7/dist-packages/dns/rdtypes/ANY/NS.py to NS.pyc
    byte-compiling /usr/local/lib/python2.7/dist-packages/dns/rdtypes/ANY/SIG.py to SIG.pyc
    byte-compiling /usr/local/lib/python2.7/dist-packages/dns/rdtypes/ANY/AFSDB.py to AFSDB.pyc
    byte-compiling /usr/local/lib/python2.7/dist-packages/dns/rdtypes/ANY/__init__.py to __init__.pyc
    byte-compiling /usr/local/lib/python2.7/dist-packages/dns/rdtypes/ANY/GPOS.py to GPOS.pyc
    byte-compiling /usr/local/lib/python2.7/dist-packages/dns/rdtypes/ANY/DNSKEY.py to DNSKEY.pyc
    byte-compiling /usr/local/lib/python2.7/dist-packages/dns/rdtypes/ANY/MX.py to MX.pyc
    byte-compiling /usr/local/lib/python2.7/dist-packages/dns/rdtypes/ANY/KEY.py to KEY.pyc
    byte-compiling /usr/local/lib/python2.7/dist-packages/dns/rdtypes/ANY/LOC.py to LOC.pyc
    byte-compiling /usr/local/lib/python2.7/dist-packages/dns/rdtypes/ANY/CNAME.py to CNAME.pyc
    byte-compiling /usr/local/lib/python2.7/dist-packages/dns/rdtypes/ANY/HINFO.py to HINFO.pyc
    byte-compiling /usr/local/lib/python2.7/dist-packages/dns/rdtypes/ANY/X25.py to X25.pyc
    byte-compiling /usr/local/lib/python2.7/dist-packages/dns/rdtypes/ANY/CERT.py to CERT.pyc
    byte-compiling /usr/local/lib/python2.7/dist-packages/dns/rdtypes/ANY/TXT.py to TXT.pyc
    byte-compiling /usr/local/lib/python2.7/dist-packages/dns/rdtypes/ANY/PTR.py to PTR.pyc
    byte-compiling /usr/local/lib/python2.7/dist-packages/dns/rdtypes/ANY/RT.py to RT.pyc
    byte-compiling /usr/local/lib/python2.7/dist-packages/dns/rdtypes/ANY/DS.py to DS.pyc
    byte-compiling /usr/local/lib/python2.7/dist-packages/dns/rdtypes/ANY/SSHFP.py to SSHFP.pyc
    byte-compiling /usr/local/lib/python2.7/dist-packages/dns/rdtypes/ANY/NXT.py to NXT.pyc
    byte-compiling /usr/local/lib/python2.7/dist-packages/dns/rdtypes/ANY/RRSIG.py to RRSIG.pyc
    byte-compiling /usr/local/lib/python2.7/dist-packages/dns/rdtypes/ANY/DNAME.py to DNAME.pyc
    byte-compiling /usr/local/lib/python2.7/dist-packages/dns/rdtypes/ANY/DLV.py to DLV.pyc
    byte-compiling /usr/local/lib/python2.7/dist-packages/dns/rdtypes/ANY/NSEC3PARAM.py to NSEC3PARAM.pyc
    byte-compiling /usr/local/lib/python2.7/dist-packages/dns/rdtypes/ANY/RP.py to RP.pyc
    byte-compiling /usr/local/lib/python2.7/dist-packages/dns/rdtypes/ANY/ISDN.py to ISDN.pyc
    byte-compiling /usr/local/lib/python2.7/dist-packages/dns/rdtypes/ANY/NSEC.py to NSEC.pyc
    byte-compiling /usr/local/lib/python2.7/dist-packages/dns/rdtypes/txtbase.py to txtbase.pyc
    byte-compiling /usr/local/lib/python2.7/dist-packages/dns/e164.py to e164.pyc
    byte-compiling /usr/local/lib/python2.7/dist-packages/dns/rrset.py to rrset.pyc
    byte-compiling /usr/local/lib/python2.7/dist-packages/dns/rcode.py to rcode.pyc
    byte-compiling /usr/local/lib/python2.7/dist-packages/dns/set.py to set.pyc
    byte-compiling /usr/local/lib/python2.7/dist-packages/dns/exception.py to exception.pyc
    byte-compiling /usr/local/lib/python2.7/dist-packages/dns/hash.py to hash.pyc
    byte-compiling /usr/local/lib/python2.7/dist-packages/dns/rdata.py to rdata.pyc
    byte-compiling /usr/local/lib/python2.7/dist-packages/dns/flags.py to flags.pyc
    byte-compiling /usr/local/lib/python2.7/dist-packages/dns/ipv4.py to ipv4.pyc
    byte-compiling /usr/local/lib/python2.7/dist-packages/dns/reversename.py to reversename.pyc
    running install_egg_info
    Writing /usr/local/lib/python2.7/dist-packages/dnspython-1.9.4.egg-info
    
    

    cymruwhois安装:

    wget https://files.pythonhosted.org/packages/54/a9/183163481f717d435e9a971f28ce8360e4bc2fa2adc7311ab0d321b207d9/cymruwhois-1.6.tar.gz
    
    tar -zxvf  cymruwhois-1.6.tar.gz
    
    cd cymruwhois-1.6
    
    python setup.py install
    

    安装完之后:

    ┌─[root@parrot]─[/home/hacker/Downloads/cymruwhois-1.6]
    └──╼ #python setup.py install
    running install
    running bdist_egg
    running egg_info
    writing requirements to cymruwhois.egg-info/requires.txt
    writing cymruwhois.egg-info/PKG-INFO
    writing top-level names to cymruwhois.egg-info/top_level.txt
    writing dependency_links to cymruwhois.egg-info/dependency_links.txt
    writing entry points to cymruwhois.egg-info/entry_points.txt
    reading manifest file 'cymruwhois.egg-info/SOURCES.txt'
    writing manifest file 'cymruwhois.egg-info/SOURCES.txt'
    installing library code to build/bdist.linux-x86_64/egg
    running install_lib
    running build_py
    creating build
    creating build/lib.linux-x86_64-2.7
    copying cymruwhois.py -> build/lib.linux-x86_64-2.7
    creating build/bdist.linux-x86_64
    creating build/bdist.linux-x86_64/egg
    copying build/lib.linux-x86_64-2.7/cymruwhois.py -> build/bdist.linux-x86_64/egg
    byte-compiling build/bdist.linux-x86_64/egg/cymruwhois.py to cymruwhois.pyc
    creating build/bdist.linux-x86_64/egg/EGG-INFO
    copying cymruwhois.egg-info/PKG-INFO -> build/bdist.linux-x86_64/egg/EGG-INFO
    copying cymruwhois.egg-info/SOURCES.txt -> build/bdist.linux-x86_64/egg/EGG-INFO
    copying cymruwhois.egg-info/dependency_links.txt -> build/bdist.linux-x86_64/egg/EGG-INFO
    copying cymruwhois.egg-info/entry_points.txt -> build/bdist.linux-x86_64/egg/EGG-INFO
    copying cymruwhois.egg-info/requires.txt -> build/bdist.linux-x86_64/egg/EGG-INFO
    copying cymruwhois.egg-info/top_level.txt -> build/bdist.linux-x86_64/egg/EGG-INFO
    zip_safe flag not set; analyzing archive contents...
    creating dist
    creating 'dist/cymruwhois-1.6-py2.7.egg' and adding 'build/bdist.linux-x86_64/egg' to it
    removing 'build/bdist.linux-x86_64/egg' (and everything under it)
    Processing cymruwhois-1.6-py2.7.egg
    Copying cymruwhois-1.6-py2.7.egg to /usr/local/lib/python2.7/dist-packages
    Adding cymruwhois 1.6 to easy-install.pth file
    Installing cymruwhois script to /usr/local/bin
    
    Installed /usr/local/lib/python2.7/dist-packages/cymruwhois-1.6-py2.7.egg
    Processing dependencies for cymruwhois==1.6
    Finished processing dependencies for cymruwhois==1.6
    

    如何安装它?

    你可以通过源码编译安装:
    你必须使用pip3进行安装
    pip3正确安装方法:

    sudo apt-get install python3-pip3
    
    ┌─[hacker@parrot]─[~]
    └──╼ $sudo apt-get install python3-pip
    正在读取软件包列表... 完成
    正在分析软件包的依赖关系树       
    正在读取状态信息... 完成       
    将会同时安装下列软件:
      dh-python libpython3-dev libpython3.6-dev python3-dev python3-entrypoints
      python3-keyring python3-keyrings.alt python3-secretstorage
      python3-setuptools python3-wheel python3.6-dev
    建议安装:
      gir1.2-gnomekeyring-1.0 python-secretstorage-doc python-setuptools-doc
    下列【新】软件包将被安装:
      dh-python libpython3-dev libpython3.6-dev python3-dev python3-entrypoints
      python3-keyring python3-keyrings.alt python3-pip python3-secretstorage
      python3-setuptools python3-wheel python3.6-dev
    升级了 0 个软件包,新安装了 12 个软件包,要卸载 0 个软件包,有 221 个软件包未被升级。
    需要下载 95.8 kB/46.0 MB 的归档。
    解压缩后会消耗 79.5 MB 的额外空间。
    您希望继续执行吗? [Y/n] y
    获取:1 http://mirrors.tuna.tsinghua.edu.cn/parrot stable/main amd64 dh-python all 3.20180927 [95.8 kB]
    已下载 95.8 kB,耗时 13秒 (7,210 B/s)          
    Selecting previously unselected package dh-python.
    (Reading database ... 491762 files and directories currently installed.)
    Preparing to unpack .../00-dh-python_3.20180927_all.deb ...
    Unpacking dh-python (3.20180927) ...
    Selecting previously unselected package libpython3.6-dev:amd64.
    Preparing to unpack .../01-libpython3.6-dev_3.6.6-1_amd64.deb ...
    Unpacking libpython3.6-dev:amd64 (3.6.6-1) ...
    Selecting previously unselected package libpython3-dev:amd64.
    Preparing to unpack .../02-libpython3-dev_3.6.6-1_amd64.deb ...
    Unpacking libpython3-dev:amd64 (3.6.6-1) ...
    Selecting previously unselected package python3.6-dev.
    Preparing to unpack .../03-python3.6-dev_3.6.6-1_amd64.deb ...
    Unpacking python3.6-dev (3.6.6-1) ...
    Selecting previously unselected package python3-dev.
    Preparing to unpack .../04-python3-dev_3.6.6-1_amd64.deb ...
    Unpacking python3-dev (3.6.6-1) ...
    Selecting previously unselected package python3-entrypoints.
    Preparing to unpack .../05-python3-entrypoints_0.2.3-3_all.deb ...
    Unpacking python3-entrypoints (0.2.3-3) ...
    Selecting previously unselected package python3-secretstorage.
    Preparing to unpack .../06-python3-secretstorage_2.3.1-2_all.deb ...
    Unpacking python3-secretstorage (2.3.1-2) ...
    Selecting previously unselected package python3-keyring.
    Preparing to unpack .../07-python3-keyring_15.1.0-1_all.deb ...
    Unpacking python3-keyring (15.1.0-1) ...
    Selecting previously unselected package python3-keyrings.alt.
    Preparing to unpack .../08-python3-keyrings.alt_3.1-1_all.deb ...
    Unpacking python3-keyrings.alt (3.1-1) ...
    Selecting previously unselected package python3-pip.
    Preparing to unpack .../09-python3-pip_9.0.1-2.3_all.deb ...
    Unpacking python3-pip (9.0.1-2.3) ...
    Selecting previously unselected package python3-setuptools.
    Preparing to unpack .../10-python3-setuptools_40.2.0-1_all.deb ...
    Unpacking python3-setuptools (40.2.0-1) ...
    Selecting previously unselected package python3-wheel.
    Preparing to unpack .../11-python3-wheel_0.30.0-0.2_all.deb ...
    Unpacking python3-wheel (0.30.0-0.2) ...
    Setting up python3-entrypoints (0.2.3-3) ...
    Setting up python3-keyrings.alt (3.1-1) ...
    Setting up python3-wheel (0.30.0-0.2) ...
    Setting up libpython3.6-dev:amd64 (3.6.6-1) ...
    Setting up python3-pip (9.0.1-2.3) ...
    Processing triggers for man-db (2.8.4-2) ...
    Setting up python3-setuptools (40.2.0-1) ...
    Setting up python3.6-dev (3.6.6-1) ...
    Setting up python3-secretstorage (2.3.1-2) ...
    Setting up dh-python (3.20180927) ...
    Setting up libpython3-dev:amd64 (3.6.6-1) ...
    Setting up python3-keyring (15.1.0-1) ...
    Setting up python3-dev (3.6.6-1) ...
    Configuring sandbox profiles....
    Sandbox profiles updated!
    
    
    git clone https://github.com/farrokhi/dnsdiag.git
    
    cd dnsdiag
    
    pip3 install -r requirements.txt
    
    ┌─[root@parrot]─[/home/hacker/dnsdiag]
    └──╼ #pip3 install -r requirements.txt
    Requirement already satisfied: dnspython>=1.15.0 in /usr/lib/python3/dist-packages (from -r requirements.txt (line 1))
    Collecting cymruwhois>=1.6 (from -r requirements.txt (line 2))
      Downloading https://files.pythonhosted.org/packages/a4/a4/b17f800098ec72d225882d5741a532c986305a7e9e46eda25fa149ff6ddf/cymruwhois-1.6-py3-none-any.whl
    Installing collected packages: cymruwhois
    Successfully installed cymruwhois-1.6
    
    

    您也可以使用pip3安装软件包:

    pip3 install dnsdiag
    
    ┌─[✗]─[root@parrot]─[/home/hacker/dnsdiag]
    └──╼ #pip3 install dnsdiag
    Collecting dnsdiag
      Downloading https://files.pythonhosted.org/packages/35/45/a6d29c7888fc90994b769a3c6792164f1744444389dd87739691001999c5/dnsdiag-1.6.4.tar.gz
    Requirement already satisfied: dnspython>=1.15.0 in /usr/lib/python3/dist-packages (from dnsdiag)
    Requirement already satisfied: cymruwhois>=1.6 in /usr/local/lib/python3.6/dist-packages (from dnsdiag)
    Building wheels for collected packages: dnsdiag
      Running setup.py bdist_wheel for dnsdiag ... done
      Stored in directory: /root/.cache/pip/wheels/ce/42/a7/535acff466c3f032cb295233586a995085f3be7b7685bb3494
    Successfully built dnsdiag
    Installing collected packages: dnsdiag
    Successfully installed dnsdiag-1.6.4
    

    dnsping

    dnsping通过发送给定次数的任意DNS查询来ping DNS解析器:

    此脚本计算最小,最大和平均响应时间以及stddev

    dnstraceroute

    dnstraceroute是一个traceroute实用程序,用于确定DNS请求通过它到达目的地的路径。您可能希望将其与实际的网络跟踪路由进行比较,并确保您的DNS流量不会路由到任何不需要的路径。

    dnseval是一个批量ping实用程序,它将任意DNS查询发送到DNS服务器的给定列表。此脚本用于同时比较多个DNS服务器的响应时间:


Log in to reply