自宅でサーバーを構築している方なら知っていると思いますが、動的IPアドレスに対応した「ダイナミックDNS(DDNS)」というサービスがあります。
今回は「ダイナミックDNS」と「お名前.comでのダイナミックDNSの設定手順」ついて解説します。
知らない人も多いかもしれませんが、「お名前.com」は動的IPアドレスに対応したダイナミックDNSのサービスもしています。
今回は「お名前.com」のダイナミックDNSサービスを実際に設定し、動作検証までしました。
ダイナミックDNS(DDNS)とは何か?
ダイナミックDNSの解説をする前に、なぜダイナミックDNSが必要なのかを説明します。
昔は「DNSダイナミックアップデート」と呼んでいました。
今は「ダイナミックDNS」や「DDNS」と呼んでいます。
ダイナミックDNSの仕様は「RFC 2136」で規定されており、以下のサイトで日本語訳を閲覧することができます。
http://www5d.biglobe.ne.jp/stssk/rfc/rfc2136j.html
固定IPアドレスが枯渇している
自宅からパソコンをインターネットに接続してWebサイトの閲覧などを楽しんでいると思いますが、ほとんどの環境ではブロードバンドルーターを再起動するとIPアドレスが変更される可能性があります。
つまり、「固定IPアドレス」を持っていません。
IPアドレスはインターネットの世界において「住所」として使われていますが、実はIPアドレスは世界的に枯渇しています。
つまり圧倒的に足りない状態です。
そこでIPアドレスを無駄遣いしないように1人1人に固定IPを割り当てるのではなく、その都度使いたい時に空いているIPアドレスを割り当ててたり、1つのIPアドレスをみんなで共有したりして節約した使い方をするようにしています。
そのためほとんどの人は「固定IPアドレス」ではなく「動的IPアドレス」の環境です。
固定IPアドレスは高い
動的IPアドレスではなく、固定IPアドレス環境が欲しいと思っても、プロバイダと契約するとかなり月額料金が高いです。
- GMOとくとくBB 月額1,100円~(初期費用0円)
- InterLink(インターリンク) 月額1,200円~(初期費用0円)
- BIGLOBE(ビッグローブ) 月額3,500円~(初期費用8,000円)
そのため、法人ならまだしも個人が固定IPを取得してサービスを提供するのはかなり敷居が高いです。
外部から(インターネットから)自宅のパソコンやサーバーにアクセスする方法
結局、外部から自宅のパソコンや、インターネットから自宅のサーバーにアクセスさせるためには以下の2つの方法しかありません。
- 固定IPアドレスを取得してドメインと関連付ける
- ダイナミックDNSを利用して動的IPアドレスとドメインを関連付ける
しかし固定IPアドレスは保持するために毎月の料金が発生します。
動的IPアドレス環境でもサーバーを持ちたい
動的IPアドレスは、ルーターを再起動したり、プロバイダの都合でいつなんどきIPアドレスが変わるか分かりません。
しかし、いつIPアドレスが変更されるか分からない環境ではサーバーを構築したとしても、IPアドレスが変わった瞬間にIPアドレスとドメインの関連付けが解除され、サービスを提供できなくなってしまいます。
しかしそんな環境でもサーバーを持ちたい、サービスを提供し続けたいという要望からダイナミックDNSというサービスが注目されました。
※歴史をたどるとダイナミックDNSが考案されたのは、イントラネットの普及からDHCPで動的に「IPアドレス」を割り当てるのではなく、動的に「IPアドレス」と「ドメイン」を関連付けて割り当てたいという要望から生まれました。
ダイナミックDNSは動的にIPとドメインを関連付ける
ダイナミックDNSは、IPアドレスが変わってもその都度新しいIPアドレスとドメインを関連付けてくれます。
そのため、ブロードバンドルーターを再起動したり、一定時間が経過するとセッションを切って再度IPアドレスを割り当てるなど、安価なインターネット回線でも独自ドメインを使って外部からアクセスすることが可能になります。
通常のDNSは、それぞれのドメインごとにゾーンファイルを持っていますが、基本的に一度設定したら変更はしません。
※頻繁にゾーンファイルを変更しなければいけないような環境はヒューマンエラーによる障害が多発して使えないと思います。
ただしダイナミックDNSを提供しているサービスは多数ありますが、「Aレコード」のみというサービスが多いので事前にどこまでできるのか調べる必要があります。
ダイナミックDNSの仕組み
DDNSサーバーがIPアドレスとホスト名の関連付けを管理をしていますが、動的IPアドレスの場合は、勝手にDDNSクライアントのIPアドレスが変わってしまいます。
だからDDNSサーバー側から見て、クライアントがどのIPアドレスに変更されたのかは全くわかりません。(分かる方法がないです)
そのため、DDNSクライアント側からDDNSサーバーにどのIPアドレスに変更したのかを知らせる必要があります。
誰がDDNSサーバーに通知するのか?
→DDNSクライアント側からDDNSサーバーに通知する必要があります。
DDNSクライアントの通知の仕方パターンは、以下のように様々な種類があります。
- ブロードバンドルーターが通知するパターン
- DDNSクライアントのサーバーが通知するパターン
- DHCPが通知するパターン
- DiCEなど指定のアプリをインストールするパターン(Windowサーバー)
- Perlなどのスクリプトを定期的に動かすパターン(Linuxサーバー)
- DDNSクライアントのサーバーには何もしなくてもいいが、ドメインが指定されるパターン(ぷららなど)
共通して言えることはDDNSクライアント側からDDNSサーバーへ対して働きかけないとDDNSサーバーは認識できないということです。
※ぷららは例外的に特にクライアント側で何かをインストールする必要はありませんが、その反面「xxx.plala.jp」とドメインが固定されてしまいます。(つまり独自ドメインが使えません)
ダイナミックDNSを提供している会社一覧
現役でダイナミックDNSサービスを提供している会社一覧です。
私的 MyDNS.jp
ダイナミックDNSサービスでは老舗の存在です。
私も何度も利用しました。
無料サービス
Dynamic DO!.jp
こちらも国内ダイナミックDNSサービスとしては老舗です。
無料(有料オプションもあり)
お名前.comダイナミックDNSサービス
お名前.comもダイナミックDNSサービスを提供しています。
この後、実際に設定する手順を記載しますが、まったく問題なく利用できています。
ただしWindowsのみ対応なのでLinuxは利用できません。
無料(独自ドメインをお名前.comで取得してるなら)
ieServer.Net
無料サービス
独自ドメインは使えません。
dip.jp / fam.cx / jpn.ph / moe.hm / myhome.cx / orz.hm からドメインを選択して使用します。
dyn.com
こちらも外国の老舗のダイナミックDNSサービスです。
以前は無料サービスだったと思いましたが、久しぶりにアクセスしたらOracleが買収したようで、有料サービスになっていました。
以前「www.DynDNS.org」→「dyn.com」に変更されています。
有料
1年40ドル
バッファローダイナミックDNSサービス
2017年4月に更新があるのでまだサービスを継続しています。
http://buffalo.jp/support_s/ddns/
有償サービス
年額3,600円
So-net(ソネット)ダイナミックDNSサービス
ソニーブランドのソネットですが、こちらは残念ながら2017年8月でダイナミックDNSサービスを終了します。
サービス新規受付停止日 : 2017年3月30日
サービス提供終了日 : 2017年8月31日
Plala(ぷらら)ダイナミックDNSサービス
https://www.plala.or.jp/option/dns/
有料
お名前.comのダイナミックDNSサービス
お名前.comのダイナミックDNSサービスは、DDNSクライアント用ソフトをインストールする形式です。
動作環境
対応するOS:Windows Vista / 7 / 8.1 / Windows Server 2003 / 2008 ※32bit/64bit版
残念ながらLinuxサーバーでは利用できません。
お名前.comのダイナミックDNSサービスの設定手順
以下の環境で設定します。
ダイナミックDNSクライアント:自宅PC
機種:Dell XPS 8300
OS:Windows 7 Professional Edition
ドメイン:xxxxxx.xxx
ホスト名:www
ローカルIPアドレス:192.168.1.3
デフォルトゲートウェイ:192.168.1.1
Windows 7 ProfessionalにIISをインストールする手順
1.「コントロールパネル」-「プログラムと機能」をクリックします。
2.左側ペインの「Windows の機能の有効化または無効化」をクリックします。
3.「Windowsの機能」画面で「インターネット インフォメーション サービス」にチェックを入れて「OK」ボタンをクリックします。
※「インターネット インフォメーション サービス」にチェックを入れるだけで他には何もチェックを入れたり外したりする必要はありません。
5.インストールが完了すると自動的に画面が閉じます。
6.ブラウザを起動し、アドレス入力欄に以下のURLを入力して下図のようなようこそ画面が表示されるか確認します。
http://192.168.1.3(この環境の場合)
以上でIISのインストール手順は完了です。
※もしうまく行かなかったらWindowsのOSの再起動を試してみてください。
何をやっても上図のように表示されず、真っ白の状態だったが、OSを再起動したら正常に表示されるようになったという方もいます。
現在の自宅のブロードバンドルーターのIPアドレスをチェックする手順
1.「確認くん」を開いて、現在のブロードバンドルーターのIPアドレスを確認します。
http://www.ugtop.com/spill.shtml
お名前.comにドメインを登録する手順
次にお名前.comにドメインを登録します。
1.「ドメインNavi ログイン」にログインします。
https://www.onamae.com/navi/domain.html?btn_id=onamaetop_header_navilogin
2.「ドメイン設定」をクリックします。
3.「このページから移動しますか? 入力したデータは保存されません。」の画面が表示されたら「このページから移動する」ボタンをクリックします。
4.「ネームサーバーの設定」-「DNS関連機能の設定」をクリックします。
5.対象のドメインにチェックを入れて「次へ進む」ボタンをクリックします。
6.「DNSレコード設定を利用する」の「設定する」ボタンをクリックします。
7.以下のようにレコードを入力して「追加」ボタンをクリックします。
ホスト名:www
VALUE:確認くんで確認したIPアドレス
8.「確認画面へ進む」ボタンをクリックします。
9.「設定する」ボタンをクリックします。
10.「DNSレコード設定 完了」画面が出ることを確認します。
以上でDNSレコードの設定は完了です。
ダイナミックDNSクライアントのインストール手順
1.以下のURLにアクセスします。
http://www.onamae.com/option/dnsrecord/ddnsclient/
2.「ダウンロード」のリンクをクリックします。
3.「プログラムで開く」を選択して「OK」ボタンをクリックします。
4.「onamaeddnssetup.exe」ファイルをダブルクリックします。
5.「インストール」ボタンをクリックします。
6.インストール完了後、下図のように「お名前.com ダイナミックDNSクライアント」ツールが起動してくることを確認します。
この後、ダイナミックDNSクライアントの設定をします。
ダイナミックDNSクライアントの設定手順
1.「タスク」-「新規作成」をクリックします。
2.下図のように設定を入力して「OK」ボタンをクリックします。
ホスト名(任意):www
ドメイン名:先ほど設定したドメイン名を入力
お名前ID:お名前.comのアカウント
パスワード:お名前.comのパスワード
更新方法:「現在接続のIPアドレスで更新する」にチェック
3.設定が入ったことを確認し、「全て実行」をクリックします。
4.「ステータス」が「成功」であることを確認します。
以上で、設定は完了です。
次は動作確認をします。
動作確認
インターネットから今回設定した「www.xxxxx.xxx」へアクセスできることを確認します。
私の場合は、インターネット上にVPSを持っているので、インターネットから自宅のPCへドメイン名でアクセスできることを確認しました。
まずは名前解決ができるかどうかチェックします。
$ nslookup www.xxx.xxx Server: 8.8.8.8 Address: 8.8.8.8#53 Non-authoritative answer: |
次にcurlコマンドでページが返ってくるか確認します。
$ curl -v www.xxx.xxx * About to connect() to www.xxx.xxx port 80 (#0) * Trying 126.xxx.xxx.xxx… * Connected to www.gojourney.xyz (126.xxx.xxx.xxx) port 80 (#0) > GET / HTTP/1.1 > User-Agent: curl/7.29.0 > Host: www.xxx.xxx > Accept: */* > < HTTP/1.1 200 OK ← ステータス200が返ってきています(正常です) < Content-Type: text/html < Last-Modified: Sat, 06 May 2017 14:12:24 GMT < Accept-Ranges: bytes < ETag: “a3dfbec872c6d21:0” < Server: Microsoft-IIS/7.5 < X-Powered-By: ASP.NET < Date: Sat, 06 May 2017 17:11:01 GMT < Content-Length: 689 < <!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Strict//EN” “http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd”> <html xmlns=”http://www.w3.org/1999/xhtml”> <head> <meta http-equiv=”Content-Type” content=”text/html; charset=iso-8859-1″ /> <title>IIS7</title> <style type=”text/css”> <!– body { color:#000000; background-color:#B3B3B3; margin:0; } #container { a img { –> |
正常に動作していることが確認できました。
最後に
思ったより簡単に設定ができました。
今後は、ブロードバンドルーターのIPアドレスが切り替わった場合、どのタイミングで設定が反映されるのか検証したいと思います。
コメント