「設定 - DDNS」の版間の差分

提供:MochiuWiki : SUSE, EC, PCB
ナビゲーションに移動 検索に移動
6行目: 6行目:
<br><br>
<br><br>


== ieServer.Netに登録する ==
== DDNSサービスへの登録 ==
無料かつ寄付制のDDNSサービスであるieServer.Netに登録する。<br>
==== DDNS Now ====
そのため、代わりに、DDNS Nowを使用することを推奨する。<br>
このサービスは、2013年から運用している利用料無料のダイナミックDNSサービスである。<br>
* https://ddns.kuku.lu/
<br>
<br>
リンク先、左のメニューより新規ユーザ登録から利用規約に同意し、DDNSサービス利用を登録する。<br>
==== ieServer.Net ====
ユーザ名とドメイン名、電子メールアドレス、パスワードを入力して登録する。<br>
ieserver.Netは、2021年にサービスが終了した。<br>
ここで、ドメイン名は何を選んでもよい。<br>
<br><br>
<br><br>



2024年11月10日 (日) 21:49時点における版

概要

自宅でWebサーバを構築する場合は、DDNSは必要不可欠である。

Webサーバは、変化する自分に割り当てられたグローバルIPアドレスを◯◯◯.com、◯◯◯.netに結びつけ、利用者に簡易にアクセスできることが要求される。
そこで、グローバルIPアドレスとドメインネームをRaspberry Piに紐付けする。


DDNSサービスへの登録

DDNS Now

そのため、代わりに、DDNS Nowを使用することを推奨する。
このサービスは、2013年から運用している利用料無料のダイナミックDNSサービスである。


ieServer.Net

ieserver.Netは、2021年にサービスが終了した。


紐付け更新スクリプトをcronに登録する

まず、Raspberry Piにて、必要なディレクトリを作成する。(ここでは、/var/log/ieseverと/usr/local/ddnsを作成する)

sudo mkdir /var/log/ieserver
sudo mkdir /usr/local/ddns


そこから、紐付け更新スクリプト(ddns-update.pl)を作成して、グローバルIPアドレスが変化しているか確認した後、変化していれば自動で紐付けする。

sudo nano /usr/local/ddns/ddns-update.pl


ddns-update.plには以下を記述する。
但し、変数である$ACCOUNTや$DOMAIN、$PASSWORDには、それぞれ、ieServer.Netで登録したユーザ名やドメイン名、パスワードを入力する。(◯◯◯を書き換えること)

 ddns-update.plの内容
 #!/usr/bin/perl
 
 $CURRENT_IP_FILE = "/var/log/ieserver/current_ip";
 $LOG_FILE        = "/var/log/ieserver/ip_update.log";
 $REMOTE_ADDR_CHK = "http://ieserver.net/ipcheck.shtml";
 $DDNS_UPDATE     = "http://ieserver.net/cgi-bin/dip.cgi";
 
 $ACCOUNT         = "◯◯◯";
 $DOMAIN          = "◯◯◯";
 $PASSWORD        = "◯◯◯";
 
 if(!open(FILE,"$CURRENT_IP_FILE"))
 {
    $CURRENT_IP = '0.0.0.0';
 }
 else
 {
    $CURRENT_IP = <FILE>;
    close FILE;
 }
 
 $NEW_IP = '0.0.0.0';
 $NEW_IP = `wget -q -O - $REMOTE_ADDR_CHK`;
 
 if($NEW_IP ne "0.0.0.0" and $CURRENT_IP ne $NEW_IP)
 {
    $STATUS = `wget -q -O - '$DDNS_UPDATE?username=$ACCOUNT&domain=$DOMAIN&password=$PASSWORD&updatehost=1'`;
 
    if($STATUS =~ m/$NEW_IP/)
    {    
       open(FILE ,">$CURRENT_IP_FILE");
       print FILE $NEW_IP;
       close FILE;
       $TIME = localtime;
       open(FILE ,">>$LOG_FILE");
       print FILE "$TIME $ACCOUNT.$DOMAIN Updated $CURRENT_IP to $NEW_IP\n";
       close FILE;
    }
    else
    {
       $TIME = localtime;
       open(FILE, ">>$LOG_FILE");
       print FILE "$TIME $ACCOUNT.$DOMAIN Update aborted $CURRENT_IP to $NEW_IP\n";
       close FILE;
    }
 }
 exit;


作成したddns-update.plファイルのパーミッションを変更する。

sudo chmod 755 /usr/local/ddns/ddns-update.pl


次に、ddns-update.plをcronで自動実行させる。
ここでは、10分毎に実行させる設定にする。

sudo nano crontab -e


crontabが起動したら、以下を追記する。

*/10 * * * * /usr/local/ddns/ddns-update.pl


これで、DDNSの設定は完了である。