めもぶろぐ

お勉強したこと、趣味なんかを適当に書いてます。。。

無料DDNSサービスの利用 ieserver

とりあえずbloggerからこちらに移行しました。

で、一発目の記事。

 

 

 

ddo.jpさんのDDNSサービスを使用していたのですが、使用期限が切れるとのことでieserverさんへ移行することにしました。

 

ddo.jpの契約更新 - chiita01のブログ なんとなくインフラエンジニア3年目

 

過去にvyattaを使用した、VPN構築とかopenVPNの記事を書いたつもりでしたが

なかった。。。 

 

実家のサーバの方はddoさんのサービス継続中で、切り替えてませんが

テスト移行ということで、ieserverさんの登録、設定を試みました。

 

備忘記録として書いておきます。ご参考までに。

 

1. まずはieserverさんへアクセスします。

 

f:id:chiita01:20141009024957j:plain

 

 

2. 新規ユーザ登録をして、暗号化接続or通常接続をします。

f:id:chiita01:20141009025108j:plain

 

 3. 好きなサブドメイン名を設定します。ドメイン名は数種類あるのでお好きなものをお選びください。アカウント登録ですから、メールアドレスと、パスワードを設定して登録します。

f:id:chiita01:20141009025411j:plain

 

04. 設定完了したら、ログインします。

05. IPアドレスの更新します。

 

06. 以上で、DDNSの登録は完了ですが、このままだとグローバルIPは定期的に更新されてしまうため、IP更新時に上記登録したホスト名でアクセスが出来なくなります。

そのためIPを自動更新するように設定しておきます。

 

07. 便利ツールを選択して、UNIX用のスクリプトをダウンロードします。

ちなみに今回の環境はCentOS6.4になります。

 

08. IPアドレス更新サンプルスクリプトをクリックします。

f:id:chiita01:20141009031527j:plain

 

 

09. クリックするとスクリプトがテキストで表示されます。内容をすべて選択してコピーしてください。テキストをダウンロードして、Linuxにアップロードして使おうとすると文字化けしたりするのでそれを回避するためです。

 

10. linuxサーバにログインします。rootでログインします。

[root@miniserver ~]# pwd

/root

[root@miniserver ~]# vim /etc/ddns-update.pl

 

11. 9でコピーしたテキストを貼付けて、下記の内容を編集します。# ieServer.Netにて取得したアカウント(サブドメイン)情報を記入します。

$ACCOUNT = " "; # アカウント(サブドメイン)名設定

$DOMAIN = " "; # ドメイン名設定

$PASSWORD = " "; # パスワード設定

 

12. 編集完了後は、:wqでファイルを保存、編集終了してください。

 

13. その後は下記コマンドで所定のフォルダへコピー。別にここじゃなくていいけど

cp ./ddns-update.pl /usr/local/sbin/

 

14. で、ここを忘れては行けません。実行ファイルにしないことにはスクリプトが機能しません。

[root@miniserver ~]# chmod 755 /usr/local/sbin/ddns-update.pl 

[root@miniserver ~]# ll /usr/local/sbin/ddns-update.pl 

-rwxr-xr-x 1 root root 2577 10月  8 15:44 2014 /usr/local/sbin/ddns-update.pl

[root@miniserver ~]# 

lsコマンドの実行結果、一番左にrwxr-xr-xとあり、xが実行権限二なります。

 

15. 最後に上記作成のスクリプトを自動、定期的に実行します。

ほんまにすんません。下記は推奨されていない設定方法だったので、訂正します。

下記コマンドを実行ください。(実はLinuxは詳しくない。。。)

crontab -e

こいつを実行すると、編集画面になるので、

0-59/10 *  *  *  */usr/local/sbin/ddns-update.pl

こいつを入れてやってください。ここで編集したものは、

/var/spool/cron/上記実行ユーザ名

でファイルが作成されます。注意点としては、cronは最小限のPATHしか記述されていないので、独自のコマンド、スクリプトはデフォルトだと動きません。 ここでは絶対パスでファイル名を指定しているので動きますが、独自コマンド等はパスを通してください。

 

vim /etc/crontab

SHELL=/bin/bash

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

MAILTO=root

HOME=/

 

# For details see man 4 crontabs

 

# Example of job definition:

# .---------------- minute (0 - 59)

# |  .------------- hour (0 - 23)

# |  |  .---------- day of month (1 - 31)

# |  |  |  .------- month (1 - 12) OR jan,feb,mar,apr ...

# |  |  |  |  .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat

# |  |  |  |  |

# *  *  *  *  * user-name command to be executed

0-59/10 *  *  *  */usr/local/sbin/ddns-update.pl

 

以上です。

ちなみに作成したスクリプトが正常に動くかは確認してください。

/usr/local/sbin/ddns-update.pl

を実行して、ieserverから現在設定されているIPアドレス

現在のIPアドレスを確認して一致していれば、スクリプトが動いていると

確認できます。

 

自動実行されているかどうかは、後日ieserverにアクセスして、上記確認項目が一致していれば、問題ございません。

ちなみに、cronスケジュールとしては、0時0分とかで指定しない方が良いです。

この時間に処理が集中してしまうと、サーバ停止の危険性があるため、時間はずらすことをお勧めします。

 

また、anacronのほうが高機能で、より確実に実行してくれます。

 

 

おわり