Dynamic DNS (DDNS)サービス
DDNSとは、固定IPアドレスを持たないでも固定IPアドレスを持っているように振る舞えるサービスです。原理は以下の通りです。
DDNSの原理
- DDNSサービサーは、固定アドレスを持っています
- DDNSサービスを受ける、我々は、固定IPを持っていない一般ユーザーです
- DDNSサービスに登録すれば、自分のexternal IPアドレスに変更があった場合や定期的に、DDNSサービサーに自動的に連絡する必要があります (Synology NASのDSMにその機能があります)
- DDNSサービサーは、固定アドレスであり、そこに問い合わせしてくる問合者に対して、DDNSの役割を元にして、管理している該当するドメイン名に対応する、登録ユーザーの現在のexternal IPアドレスを返します
- 以上の原理により、DDNSサービスを受けるユーザーのIPアドレスに変更があっても、ドメイン名でのアクセスは常に維持されることになります
DDNSサービサー
DDNSサービスは、以下のようなプロバイダがあります。当サイトでは、「harikiri.diskstation.me」を使用していますが、「harikir.myDNS.jp」も無料で取得しています。どのドメイン名を使用しても、割り当てられている特定のIPアドレスが返されて、訪問者は、そのIPアドレスに飛んでくる訳です。
DDNSサービス(Dynamic Network Serviceともいう)とは、固定のIP Addressを持っていない自宅のサーバーにおいて、IP Addressに変更があった都度、その設定されたDomain Nameに対して、変更後のIP Addressを再割り振り、問い合わせに応じて、その問合者に対して通知してくれます。
Synology NASを購入すれば、NASのDSM (Disk Station Manager)からSynologyサイトへ入り登録することでDDNSを無料で利用できます。
有料のものでは、バッファローが年間3,600円のサービスを提供しているようです。
その他のサービスも含め、有料コースのメリットは何なのかは調査不足です。名前を自由に決めたりできるのかもしれませんが、経験もないことから言及できません。
今回は、無料のDDNSサービスサイトを紹介しているサイトの紹介です。
DDNSの登録サイト
DynDNS (US西海岸,CAのサーバー)の登録方法については、kajuhomeさんを参照。おススメ3つ(ieServer net, no ip, myDNS.jp)を紹介頂いているサイトは、Viral Communityさんを参照。
Synology NASの設定について何時もお世話になっている「観音寺」さんによるホームネットワーク研究所には、myDNS (東京のサーバー)の導入方法が紹介されています。
当サイトでは、「harikiri.diskstatiom.me」のドメイン名は、1年以上(2021/01現在)使用しているので、馴染んでしまいましたが、異なるドメイン名に別のWordPressサービーを立ち上げれないかを検討していました。先ずは、Synologyが提供するドメイン以外で、フリーのDomain Name登録を模索します。
上記の目論見は、実は不可能なのです。「harikiri.diskstation.me」と「harikiri.myDNS.jp」はいずれも同じIPアドレスを指しています。すなわち、「ドメイン名」と「IP アドレス」は1対1に対応するためです。殆どの場合、ドメイン名の登録は、ポート番号を含めては登録できません。
従って、外部からのアクセスは、一旦、ドメイン名に対応する一意に設定されたIPアドレスに飛んで来ます。そして、それは、ポート転送により1つのサーバーに誘導されます。よって、どのようなドメイン名をコールしても、必ず1つのサーバーに飛んでくることになります。
- そこで、ポート番号が設定されてあれば、それに従った振り分け先である別サーバーに飛ばすことが可能となります。この方法では、ポート番号を付加したアクセスになってしまい、コール側では、ポート番号を意識しなければならず、また、サーバー側では、複数ページで全てにポート番号を付加しないといけなくなります。この方法は、あまりにも冗長です。
次に、サプドメインで飛ばす方法です。この方法は、少し可能性があります。
- 「harikiri.diskstation.me」にサブドメインを付加して、例えば「happy.harikiri.diskstation.me」としてやって、happyの部分をポード変換(設定が必要)で、別サーバーに飛ばして上げます。
注) IPアドレス・ポート番号をドメイン名に割り当てることはできないが、「リバースプロキシ」を使えばできるらしい。今後要検討。 注) DNSの「SRVレコード」を使うと、特定のドメイン名とIPアドレス・ポートの組を紐付けることが可能なようですが、そもそも、WebブラウザSRVレコードに対応していないものが殆どないため実現は不可です。
以下、「myDNS.jp」ドメインを取得を前提に解説します。
設定
myDNS.jp
2020年の夏頃からか、接続ができなくなっていて、ドメイン通知が機能しなくなっていました。今日(2020/12/29)まで原因がよく分からず放置していましたが、少し集中して原因を調査したところ、以下の設定のように修正して、httpでのアクセスをhttpsにすることで解決しました。
- 外部アクセス → DDNSを開く
- myDNS.jpのカスタム設定を開く
- 以下のように設定を修正する
- https://www.mydns.jp/directip.html?MID=USERNAME&PWD=PASSWORD&IPV4ADDR=MYIP
設定が完了していれば、定期的にDDNSとのやりとりをして「ドメイン名」を維持してくれます。「ログセンター」には以下のログが確認できるはずです。
System successfully registered [<external IP address>] to [<your domain>.myDNS.jp] in DDNS server [USER_myDNS.jp].
* <>内は、設定による。
ツール
スピードテスト : SolveDNS
スピードデータ : DNSPerf
WordPressウェブサイトのスピードアップについて(2020年のガイド)
https://kinsta.com/jp/learn/speed-up-wordpress/#dns
RockDiskというNASでは
Threat Preventionを導入してから、5年以上前に導入・稼働させているNAS (IO-DATA, RockDisk)が、定期的に外部に通信しているこことがログから分かりました。ログではHigh Riskの扱いです。High RiskはThreat Preventionからドロップ設定しておくと安心である。
しかし、その相手先のIP Adressを調べてみると、Dynamic DNS Servieのサイトのようでした。
そこで、RockDiskが通信しているIP Address: 216.146.43.71を調べてみるとUSの東海岸にあるDynamic DNS Serviceサイトであることが分かり増した。
余談ですが、この地は、アニメ「ヴィンランド・サガ」で登場する楽園であるところの「ヴィンランド」に近い。
同様にしてWhois検索してみると、以下のような応答がありました.真ん中よりすこし下に「Dynamic Network Services, Inc. DNSINC-3」とあります。RockDiskのDDNSとの関連は不明ですが、IO-DATAがRockDiskのDDNSを可能にするために用意した、おそらく無料のサービスであると考察しています。
#
# ARIN WHOIS data and services are subject to the Terms of Use
# available at: https://www.arin.net/resources/registry/whois/tou/
#
# If you see inaccuracies in the results, please report at
# https://www.arin.net/resources/registry/whois/inaccuracy_reporting/
#
# Copyright 1997-2019, American Registry for Internet Numbers, Ltd.
#
#
# Query terms are ambiguous. The query is assumed to be:
# "n 216.146.43.71"
#
# Use "?" to get help.
#
Oracle Corporation DNSINC-3 (NET-216-146-32-0-1) 216.146.32.0 - 216.146.47.255
Dynamic Network Services, Inc. DNSINC-3 (NET-216-146-32-0-2) 216.146.32.0 - 216.146.47.255
#
# ARIN WHOIS data and services are subject to the Terms of Use
# available at: https://www.arin.net/resources/registry/whois/tou/
#
# If you see inaccuracies in the results, please report at
# https://www.arin.net/resources/registry/whois/inaccuracy_reporting/
#
# Copyright 1997-2019, American Registry for Internet Numbers, Ltd.
#
その他、DynDNSに登録してサービスを受ける手順: site
DDNSで与えられたドメイン名と証明書
何度も経験しているのですが、この証明書が無いか期限が切れていると、myDNS.jpにおけるドメイン維持のための通信にエラーが発生します。確認が長期に続く場合は登録が削除されます。通信エラーによりドメインが確認できない場合、myDNS.jpからアラートメールが届くので、日頃からのメール確認はこまめにする必要があります。
与えられたドメイン名でサービス(サーバーを立ち上げてblogを発信)をするには、そのドメイン名が正当であることの証明書が必要です。それにより、「https://」でアクセスすることが可能になりSSLによる暗号化通信とすることができます。
証明書は、第三者機関からもらいます。最近では、ボランティア団体(Let’s Encrypt)により、その証明書が発行されているので、証明書をもらいます。
Synology RouterのRT2600acでは、Let’s Encryptの証明証を取得する設定画面があるので、取得は簡単にできます。
編集履歴
2019/12/21 Mr. Harikiri 2020/12/29 追記 (DS918+のDDNS設定の修正により接続できるようになった) 2021/01/02 追記 文言整備