技術資料‎ > ‎

Value-domainでDDNS運用

いろいろやり方はあると思うんだけど、とりあえず作る必要があったのでここにメモっぽくやってみる。要はcronで回すスクリプトの保管目的。

前提条件

  • Value-Domainでドメイン管理をしている
  • Ubuntu12.04をベースにサーバを構築しているのでいろいろAPT
  • 同サービスのDDNSの機能を使って遊びたい人向け
  • 俺シェルスクリプト苦手というかプログラマじゃありません
  • 実現できていればいいよね。

準備するもの

  1. Value-Domainのアカウント
  2. curl(ノーマルで入ってないし。俺はwgetしない派)

ソース

#!/bin/bash

PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

DOMAIN="gao-nyan.com"
PASS=""

# DNSで引けるIPアドレスを取得
GET_IP=$(host $DOMAIN | cut -d " " -f 4)

# 現在接続しているIPアドレスを取得
NOW_IP=$(curl -s "http://dyn.value-domain.com/cgi-bin/dyn.fcg?ip")

# 引けるIPと接続IPが同じだったら更新せずに終了
if [ $GET_IP == $NOW_IP ] ; then
    echo "Not modify global IP address."
    exit 0
fi

# IPアドレスの更新

RES=$(curl "http://dyn.value-domain.com/cgi-bin/dyn.fcg?d=$DOMAIN&p=$PASS&h=*&i=$NOW_IP")

if echo $RES | grep "OK" ; then
    echo "Update Global IP address."
    exit 0
else
    echo "Global IP address update  failed."
    exit 1
fi

exit 1

Comments