DynamicDNSクライアントINADYNを使う

概要

INADYNとは,dyndns.orgのようなダイナミックDNSサービスを提供するホストに対して動作する,クライアントプログラムである.他のDynamicDNSクライアントにない特徴は,クライアントを動作させるPCがNATルータの配下であっても問題なく動く,という点である.

参考URL

作業手順

(1) インストール

# apt-get install inadyn

(2) 動作テスト

# inadyn --username YOURNAME --password YOURPASSWORD --alias YOURHOST.dyndns.org
INADYN: Started 'INADYN version 1.96' - dynamic DNS updater.
I:INADYN: IP address for alias 'YOURHOST.dyndns.org' needs update to '***.***.***.***'
I:INADYN: Alias 'YOURHOST.dyndns.org' to IP '***.***.***.***' updated successful.

[CTRL]+Cで止める.
弊サイトはNATルータの背後に存在していて,自身のinterfaceにはプライベートIPアドレスが付いているのだが,inadynはグローバルIPアドレスを正しく認識し,問題なく動作した.

(3) 設定
/etc/inadyn.conf

--user YOURNAME
--password YOURPASSWORD
--alias YOURHOST.dyndns.org
--syslog
--background

/etc/init.d/inadynが存在しなかったため,適当にでっちあげる.

#!/bin/sh

NAME=inadyn
INADYN=/usr/sbin/inadyn
[ -f /etc/default/inadyn ] && . /etc/default/inadyn

test -x ${INADYN} || exit 0


case "$1" in
    start)
        echo -n "Starting DynamicDNS Client: "
        ${INADYN}
        echo "$NAME."
      ;;
    stop)
        echo -n "Stopping DynamicDNS Client: "
        killall ${NAME}
        echo "$NAME."
        ;;
    restart)
        echo -n "Restarting DynamicDNS Client: "
        killall ${NAME}
        sleep 3
        ${INADYN}
        echo "$NAME."
        ;;
    *)
        echo "Usage: $0 {start|stop|restart}"
        exit 1
        ;;
esac

exit 0

update-rc.dを使って,システム起動時に動作するように設定する.

# update-rc.d inadyn defaults
 Adding system startup for /etc/init.d/inadyn ...
   /etc/rc0.d/K20inadyn -> ../init.d/inadyn
   /etc/rc1.d/K20inadyn -> ../init.d/inadyn
   /etc/rc6.d/K20inadyn -> ../init.d/inadyn
   /etc/rc2.d/S20inadyn -> ../init.d/inadyn
   /etc/rc3.d/S20inadyn -> ../init.d/inadyn
   /etc/rc4.d/S20inadyn -> ../init.d/inadyn
   /etc/rc5.d/S20inadyn -> ../init.d/inadyn