且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

域名查询到期及域名公网IP和IP地理位置脚本

更新时间:2022-09-14 12:20:15

#!/bin/bash

printf "本脚本可以查询IP地理位置及域名到期和域名公网IP \n"

printf "###################################### \n"

printf "/tmp/dns.txt 需要查询的域名列表目录 \n"

printf "/tmp/dns_ip.txt 存放查询后的域名及IP对应目录 \n"

printf "###################################### \n"

printf "/tmp/droplist.log存放需要查询IP的目录 \n"

printf "/tmp/geoip.txt存放IP查询后地理位置目录 \n"

printf "###################################### \n"

readonly files="/tmp/dns.txt"

readonly ip_list="/tmp/droplist.log"

#查询域名到期时间

#yum install -y jwhois   //centos6版本系统下

#yum install -y whois    //centos7版本系统下

function check_who(){

readonly dns_list=$(cat $files|awk '{print $1}');

for n in ${dns_list}

do

domain=$(whois $n|grep 'Expiration')

echo "${n}  ${domain}" >> /tmp/dns_ip.txt

done

}

#域名查询对应公网ip地址

function dns_ip(){

readonly dns_list=$(cat $files|awk '{print $1}');

for n in ${dns_list}

do

domain=$(nslookup $n|grep 'Address'|grep -v "53");

echo "${n}  ${domain}" >> /tmp/dns_ip.txt

done

}

#查询公网IP地理位置

function ip_geo(){

ips=$(cat $ip_list|awk -F ' ' '{print $3}');

for i in ${ips}

do

ip_locate=$(curl ip.cn?ip=${i})

echo ${ip_locate} >> /tmp/geoip.txt

done

}

#

printf "输入数字  \e[33m  1  \e[0m 查询域名对应IP地址 \n"

printf "输入数字  \e[33m  2  \e[0m 查询公网IP地理位置 \n"

printf "输入数字  \e[33m  3  \e[0m 查询公网IP地理位置 \n"

read -p "请输入您需要查询的项目: " j

case $j in

1)

dns_ip

;;

2)

ip_geo

;;

3)

check_who

;;

esac

本文转自  一招拜师  51CTO博客,原文链接:http://blog.51cto.com/sadoc/1946605