Linux(CentOS)でDiCEによるDDNS更新メモ for VALUEDOMAIN
DiCEを使ったDynamic DNSのIPアドレス自動更新処理方法です。ドメインはVALUEDOMAINで得しているので、VALUEDOMAIN用の設定です。
※以下の操作は、X上でターミナルを開いて実行しています。
1.Linux for DiCE CUI versionをダウンロード
DiCE for Linux
2.ダウンロードしたファイルを展開
[root@centos download]# tar -xzvf diced01912.tar.gz
3.展開されたディレクトリを移動
[root@centos download]# mv DiCE/ /usr/local/bin/
4.ユーザがディレクトリに移動
[root@centos download]# cd /usr/local/bin/DiCE
5.ここから設定を行いますが、このままだと文字化けするのでターミナルの文字コードを一時的にEUC-JPにします。ターミナルのメニューから、端末→文字コードの設定→追加と削除→日本語 EUC-JP→追加→閉じる。端末→文字コードの設定→日本語(EUCーJP)を選択。これ以降の表示はEUC-JPとなります。
※TerTermをお使いの場合は設定→端末→漢字-受信と漢字-送信をEUCに変更で可能
6.dicedを実行
[root@centos DiCE]# ./diced
#ここで?を入力するとコマンド一覧が表示される
=-=-=- DiCE DynamicDNS Client -=-=-= Version 0.19 for Japanese Copyright(c) 2001 sarad :? *** 起動オプション *** diced [-s|-d|-h|-e] [-b] [-l] -s 起動と同時に開始します -d 起動と同時にバックグラウンドで開始します -h コマンドオプションを表示します -b イベント実行時にビープ音を鳴らします -l ログを作成します -e<EventNo> 指定のイベントを実行して終了します *** コマンド一覧 *** exit DiCEを終了します start DiCEを開始します startd DiCEをバックグラウンドで開始します setup DiCEの環境設定を行います list 登録済のイベント一覧を表示します add イベントを追加します ed[it] <番号> イベントを編集します del <番号> イベントを削除します en[able] <番号> イベントを有効にします dis[able] <番号> イベントを無効にします ev[ent] <番号> イベントの情報を表示します ex[ec] <番号> イベントを今すぐ実行します logcr ログをクリアします
7.環境設定を行います
:setup IPアドレスの検出方法を指定してください (0) 自動検出 (1) ローカルのネットワークアダプタから検出 (2) 外部のスクリプトから検出 <現在:0> (N)変更しない (P)戻る >0 ------------------------------------------------- プライベートIPアドレスも検出対象ですか? (Y/N) <現在:いいえ> (P)戻る >n ------------------------------------------------- IPアドレスの検出をテストしますか? (Y/N) (P)戻る >y 検出IPアドレス>xxx.xxx.xxx.xxx ------------------------------------------------- IPアドレスの検出をテストしますか? (Y/N) (P)戻る >n ------------------------------------------------- IPアドレスをチェックする間隔を指定してください(分) 設定可能範囲は5分以上です <現在:10> (N)変更しない (P)戻る >n ================================================= DNSサーバーの負荷を軽減するために頻繁なDNS更新を防ぐ必要があります 前回の更新から一定時間DNS更新処理を行わないように保護時間を設定して ください(分) 設定可能範囲は10分から1440分です <現在:60> (N)変更しない (P)戻る >10 ================================================= 設定を保存しますか? (Y/N) (P)戻る >y 設定を保存しました =================================================
8.新規イベント追加
:add 新しくイベントを追加します DynamicDNSサービス名を入力してください "?"で対応しているサービスを一覧表示します (P)戻る >VALUEDOMAIN ------------------------------------------------- << バリュードメイン >> URL: http://www.value-domain.com/index.php *** 情報 *** ・全ホストを更新するにはホスト名に"*"を指定してください。 ・"ユーザー名"に入力された内容は無視されます。 ================================================= ドメイン名を入力してください "?"でドメイン一覧を表示します (P)戻る >xxxxxxxxxx.com #各自設定 ================================================= ホスト名を入力してください (P)戻る >* #各自設定(*は全てのホスト) ================================================= ログインユーザ名を入力してください (P)戻る > #空欄でOK ================================================= ログインパスワードを入力してください (P)戻る >xxxxxxxxxxx #各自設定 (ここはVALUEDOMAINサイト内DDNS用のパスワードです。下記画像参照。) ================================================= 登録するIPアドレスを入力してください 空白にすると現在のIPアドレスを自動検出します (P)戻る > ================================================= このイベントに題名を付けてください (P)戻る >ddns_ip_change ================================================= このイベントを実行するスケジュールを設定します ------------------------------------------------- 実行する頻度を指定してください (番号入力) (0)1回のみ (1)1日1回 (2)1週間に1回 (3)1ヵ月に1回 (4)その他の周期 (5)IPアドレス変化時 (6)起動時 (P)戻る >5 ------------------------------------------------- IPアドレスがあまり変化しない環境の場合、更新せずに一定期間を過ぎると アカウントを削除されてしまうことがあります IPアドレスの変化が無い時に実行する間隔を指定してください (0)7日毎 (1)14日毎 (2)21日毎 (3)28日毎 (4)35日毎 (5)56日毎 (6)84日毎 (P)戻る >0 ================================================= ================================================= このイベントを有効にしますか? (Y/N) (イベントの有効/無効は"EN/DIS"コマンドで切替えられます) >y ================================================= イベントを保存しますか? (Y/N) >y イベント"ddns_ip_change"を保存しました =================================================
9.登録したイベントリストを表示
:list (No.) (イベント名) (スケジュール) (次回予定) 0 * ddns_ip_change IPアドレス変化時 (7日毎) 02/01 00:18
10.登録したイベントを確認。
:ev 0 ------------------------------------------------- [イベント名 ] ddns_ip_change [状態 ] 有効 [DNSサービス ] VALUEDOMAIN [更新ホスト ] *.xxxxxxxxx.com [ユーザ名 ] [IPアドレス ] [スケジュール ] IPアドレス変化時 (7日毎) [次回更新日時 ] 2006年2月1日、0:18:19 [最終実行日時 ] 1899年12月30日、0:00:00 [最終更新IPアドレス] * [最終更新結果 ] コマンドが実行されました (ID:000000) -------------------------------------------------
11.一度手動で実行してみます。
:ex 0 + 1/25 0:27 にddns_ip_changeが実行されました IPアドレスを更新しました ※下記の様に失敗した場合は「:ed 0」と打って編集する。 :ex 0 - 1/25 0:23 にddns_ip_changeの実行に失敗しました Error: パスワードが無効です
12.一度終了してサービスとして起動
:exit [root@centos DiCE]# ./diced -l -d =-=-=- DiCE DynamicDNS Client -=-=-= Version 0.19 for Japanese Copyright(c) 2001 sarad DiCE Daemon Started !!
13.正しく動作しているか確認します。
[root@centos DiCE]# ps -aux|grep diced root 3153 0.3 0.3 5084 1000 ? Ss 00:33 0:00 ./diced -d -l
14.一応root以外触れないようにパーミッションを設定
[root@centos DiCE]# chmod 600 dice.dat dice.ini [root@centos DiCE]# chmod 700 diced ipcheck.dat [root@centos DiCE]# chmod -R 700 plug-in/
15.自動起動設定
[root@centos DiCE]# vi /etc/rc.d/rc.local 下記を追記します。 /usr/local/bin/DiCE/diced -d -l
16.サービスを止める時は
[root@centos DiCE]# kill プロセス番号
※dicedが起動した状態でもう一度起動すると多重起動してしまいます。もう一度起動させたい場合は一度killコマンドを実行してプロセスを終了させて下さい。
17.最後にターミナルの文字コードをUTF-8に戻しておきます。