超シンプル ひたすら dig なシェル


3月〜4月は引っ越しのシーズンです。サーバーのお引っ越しもよくあります。DNS を切り替わったかをひたすら確認するためのシェルスクリプトを作ってみました。

大したことしてないですが、偉そうに変数使っています。

使い方

  • 下記テキストを、適当に名前をつけて保存。
    • 例: dns-check.sh
  • DNSServer に権威サーバーのアドレスを指定。(権威DNSサーバーとは各ドメインの whois に設定されているネームサーバーのことです。)下記のスクリプトは Google のパブリックDNSを見に行っています

  • Mac 等でターミナルを起動

  • 実行可能形式に変更 例: chmod 744 dns-check.sh

  • 実行 例: sh dns-check.sh

  • Ctlr + C で停止されます

  • DNSServer変数にそのドメインの権威NDSサーバーを入れて下さい。分からなければ、自分のドメイン登録サイトに登録しているネームサーバーを確認してください。ターミナルで whois [ドメイン名] とコマンドを打つと、出てきます。

オプション

  • デフォルトでは 30秒間隔でチェックをします。

実際のシェル

DNScheck.sh
#! /bin/sh
# DNS Check script

# Variables
# ----------
SiteName="サイト名を入れる"
Domain="チェック希望のドメイン.com"
DNSServer="8.8.8.8" # 権威DNSサーバーを入れて下さい
# -----
Type="any"
IntervalSec="30"  # Interval seconds to repeat
# -----

# Actual Script
while :
do
    clear
    echo "=============================="
    echo "${SiteName} DNS Check"
    echo "Domain: ${Domain}"
    echo "------------------------------"
    echo "$(date "+%Y/%m/%d-%H:%M:%S")"
    echo "=============================="
    dig -t any ${Domain} @${DNSServer}
    sleep ${IntervalSec}
done

クレジット

この記事が役に立ったら、「 CMS は concrete5 が一番」と頭の中で10回唱えてみてください〜。