我正在尝试生成给定域名的所有可能 IP 地址的列表。我想我很接近但不知道我错过了什么(或者是否有更好的方法)。
首先,我创建一个域变体列表,如下所示:
webkinz.com
www.webkinz.com
然后我遍历这个列表并像这样对每个变体运行 dig:
while read domain; do
IPs=`dig $domain | grep $domain | grep -v ';' | awk '{ print $5 }'`;
echo " ${IPs}" >> /tmp/IPs; #array
done < /tmp/mylist
sort -u /tmp/IPs > /tmp/TheIPs; #remove duplicates
cat /tmp/TheIPs| tr -d "\n" > /tmp/IPs #remove new lines (making it 1 long line)
我的 IP 文件如下所示:
66.48.69.100 www.webkinz.com.edgesuite.net.a1339.g.akamai.net.
只有3个问题。:-(
- 当我只期望 IP 地址时,Dig 返回域。
- 我的脚本如何删除域之间的空格。
dig www.webkinz.com
缺少某些 IP 地址。
那么,我该怎么做呢?我是否以某种方式确定 dig 是否返回另一个域而不是 IP 地址并在该域上运行 dig?我是否只是忽略从 dig 返回的域名并认为 ip 地址就足够了?如果可能,我想捕获将解析为域的每个 IP 地址。我不认为这应该这么难。有任何想法吗?