例如,给定范围:
172.128.0.0 - 172.191.255.255
我需要find一个域名,parsing为在该范围内的IP地址。 可能吗 ? 我正在使用Linux系统。
您可以对范围内的每个IP执行反向查找,并search您要查找的域的结果。 但是,只有负责该域名的人员为该IP创build了PTRlogging,这才会起作用。
这是一个快速和肮脏的工作示例:
#!/usr/bin/env python """ ipAddrRange function ripped from: http://vinojdavis.blogspot.com/2009/02/def-ipaddrrangestartaddr-endaddr-def.html """ import sys import socket def ipAddrRange(startAddr, endAddr): def incrAddr(addrList): addrList[3] += 1 for i in (3,2,1): if addrList[i] == 256: addrList[i] = 0 addrList[i-1] += 1 def asString(addrList): return ".".join(map(str,addrList)) startAddrList = map(int,startAddr.split(".")) endAddrList = map(int,endAddr.split(".")) curAddrList = startAddrList[:] yield asString(curAddrList) for i in range(4): while curAddrList[i] < endAddrList[i]: incrAddr(curAddrList) yield asString(curAddrList) if len(sys.argv) > 1 and sys.argv[1]: domain_filter = sys.argv[1] else: domain_filter = "" for addr in ipAddrRange("172.128.0.0","172.191.255.255"): ptr = socket.gethostbyaddr(addr)[0] if domain_filter: if domain_filter in ptr: print ptr else: print ptr
示例运行:
# ./reverse_spy.py aol AC800000.ipt.aol.com AC800001.ipt.aol.com
您可以将输出限制为与可选参数匹配的结果。
另外,限制你的范围,因为你的范例是4194304个IP。 ;)有人用这样的范围寻找雅。
您是否正在尝试查找parsing为特定IP的任何 DNS名称; 或者您是否在尝试查找parsing为IP的所有 DNS名称? 后者是不可能的。 前者几乎可以在任何操作系统上轻松完成:
nslookup set type=ptr (reversed-ip).in-addr.arpa
(反向ip)部分是它听起来像。 如果你的IP是1.2.3.4,那么倒过来是4.3.2.1,第三行是:
4.3.2.1.in-addr.arpa
据ARIN称,172.128.0.0/10是美国在线所有。 你可以尝试查询AOL列出的DNS服务器,看看他们是否有你感兴趣的IP的反向条目。(转到arin.net并search他们的urlwhois)。
nmap -sL -R 172.128-191.0-255.0-255
-sL列出没有扫描的主机。 -R强制DNSparsing。