続3・EveryDNS – DiCE以外のIP更新通知 –


今回の投稿で4回目となりますが、EveryDNSのIP通知が最近どうもうまくいかなくなったと思ったので調査しました。結果、IP取得URLが変更されていました。

以下に修正後スクリプトを記載します。
■補足:後日再度更新内容が変わっていたので、編集内容を修正してあります。

#!/bin/bash
hostname="DOMAIN.com" # ←Host名を設定
USER="UserName" # ←Loginユーザ名
PASS="Password" # ←LoginPassword
VER="0.1"
T_PATH="/usr/ddns"
TMP_F="oldip_Temp_FileName" # ←IP番号格納ファイル名
IP=$(curl -s http://www.ciber-germany.net/ | egrep -m1 -o '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1
,3}\.[0-9]{1,3}')
if [ ! -f "$T_PATH/$TMP_F" ]; then
  echo oldip.everydns-FILE-NOT-FOUND > $T_PATH/$TMP_F
fi
if [ -r "$T_PATH/$TMP_F" ]; then
  OLDIP=`cat $T_PATH/$TMP_F`
  if [ "$OLDIP" = "$IP" ]; then
        exit 0
  else
        RETURN=$(curl -s http://${USER}:${PASS}@dyn.everydns.net/index.php?ver=${VER}&ip=$
{IP}&domain=${hostname})
        echo $RETURN | grep "IP change suceeded" > /dev/null 2>&1
        if [ "$?" -eq "0" ]; then
              echo $IP > $T_PATH/$TMP_F
        else
              echo "" > $T_PATH/$TMP_F
        fi
  fi
fi