この自宅サーバのドメインは、DynDNSというDDNSサイトを利用して名前解決を行なっているが、先週ぐらいから急に名前解決の挙動がおかしくなっている事が判った。
最初は、プロバイダのルータなど、ポートマッピングしている機器の不具合かと思ったけど、昨日の11時にDynDNSに登録したAレコードが13時にまったく違うIPアドレスを指していた。
もしやと思い、急きょ以下のように、「自宅のグローバルIPアドレスとDNSのレコード値に不一致が生じた場合にメール通知を行なうスクリプト」を作成。
cronで30分毎に動かしてみる。
dns-check.sh
—
#!/bin/sh
export LANG=ja_JP.UTF-8
ipaddr=`wget -q -O – checkip.dyndns.org | awk -F ” ” ‘{print $6}’ | cut -d ‘<‘ -f1`
dnsrecode=`nslookup www.jhhk-family.net | grep Address | grep -v “#53” | awk ‘{print $2}’`
if [ “$ipaddr” != “$dnsrecode” ]
then
echo “自宅のグローバルIPアドレスとDNSレコードが紐付いていません。” > /root/dns.txt
echo “【IPアドレス】” >> /root/dns.txt
echo “$ipaddr” >> /root/dns.txt
echo “【Aレコード】” >> /root/dns.txt
echo “$dnsrecode” >> /root/dns.txt
mutt -s ‘レコード不整合連絡’ xxxx@docomo.ne.jp < /root/dns.txt
fi
—
んで、昼から実行してた結果、16日に2:30過ぎ(私は爆睡中w)にAレコードが書き換わったメールが来た。
変更後のIPアドレスをwhoisで確認すると、日本国内の法人(?)っぽい会社だった。
気持ち悪いので、DynDNSのログインパスワードを変更して様子見。