DNSCheckup

From KCLUG Wiki

Jump to: navigation, search
#! /bin/bash
export origresult="empty"
export origserver="empty"

export dn="${1}"

export wi="$( whois "${dn}"  )"
{
        # as other formats for listing nameservers are discovered, they should each get a line that parses for them in this bracketed section
        echo "${wi}" | dos2unix | grep ^Name\ Server:.*\\..*$ | sed 's/Name Server://'
        echo "${wi}" | dos2unix | grep -A 500 "Domain servers in listed order:" | grep -v "Domain servers in listed order:" | sed 's/^\ *//' | grep -v ' ' | grep -v ^$
} | grep \\. | sort | while read ns
do
        echo -n Asking whois-listed server, "${ns}", about "${dn}"...
        result=$( dig "${dn}" @"${ns}" | grep -v '^;' | grep -v '^$' | sort )

        if [[ "${origresult}" == "${result}" ]]
        then
                echo Agrees with ${origserver}
        else
                if [[ "${origresult}" == "empty" ]]
                then
                        # Since this is the first, save its result and  server
                        export origresult="${result}"
                        export origserver="${ns}"
                fi
                echo
                echo "${result}"
        fi
done
Personal tools