2.16. ダイナミックDNSの設定

ダイナミックDNSとは、外部のダイナミックDNSサービスに対してドメイン名のアドレス更新を依頼する機能です。 自己のアドレスが動的に変わる環境であっても、常に同じドメイン名でアクセスできるようになります。 NetMeister機能を利用することで、NECプラットフォームズが提供するダイナミックDNSサービスを利用することができます。 NetMeisterのページも参照してください。

IPv4、IPv6のHTTP, HTTPSによる更新に対応しています。

2.16.1. ダイナミックDNSの設定

ダイナミックDNS機能は、次のコマンドで設定します。

項目

説明

ddns enable

ダイナミックDNSクライアント機能の有効設定

ddns profile

ダイナミックDNSプロファイルの作成

url

ダイナミックDNSサーバーの登録

query

更新内容の登録(クエリ登録)

source-interface

送信元・アドレス登録インタフェースの設定

notify-interface

アドレス登録インタフェースの設定

transport

通信に使用するプロトコルの設定(IPv4/IPv6)

account

ユーザーアカウント名の登録

password

パスワードの登録

update-interval

更新周期の変更

ddns profileコマンドでダイナミックDNSサーバーの設定を行うプロファイルを用意し、登録に必要な情報を設定します。

一般に、ダイナミックDNSサーバーへのアドレス登録には、ドメイン名、登録するアドレス、認証用パスワードの情報が必要となります。登録するアドレスを明示的に指定せずに、登録用通信の送信元アドレスを利用する場合もあります。登録の方法は、ダイナミックDNSサーバー事業者によって異なりますので、各事業者の説明を参照してください。

以下にいくつかのパターンの登録方法を記載しますので、それぞれ該当するものを参照してください。

2.16.1.1. ドメイン名とパスワードをクエリで設定する場合

以下のようにドメイン名とパスワードをクエリで登録するように指定されている場合の設定方法です。

  • https://example.com/update.cgi?d=<ドメイン名>&p=<パスワード>&a=<IPv4アドレス>

    リスト 2.16.1 設定例
    ddns profile server1
      url https://example.com/update.cgi
      query d=ix-router&p=<PW>&a=<IP4>
      password plain pass
      transport ip
      source-interface GigaEthernet0.0
    

クエリには<PW>,<IP4>,<IP6>, <SN>の環境変数が利用できます。

  • <PW>はダイナミックDNSプロファイルのpasswordコマンドで設定したパスワードに変換されます。

  • <IP4>はsourceで指定したインタフェースのプライマリアドレスに変換されます。

  • <IP6>はsourceで指定したインタフェースの先頭のグローバルIPv6アドレスに変換されます。

  • <SN>は装置の製造番号に変換されます。

インタフェースのアドレス以外の固定アドレスを登録したい場合は、直接クエリにアドレスを記載してください。また、パスワードは直接クエリに記載しても構いませんが、passwordコマンドを利用した場合は、service password-encryptionコマンドで暗号化してコンフィグに保存することができます。

2.16.1.2. ドメイン名やパスワードをベーシック認証で設定する場合

以下のようにドメイン名とパスワードを登録するように指定されている場合の設定方法です。

  1. URLの設定例でアカウントとパスワードを@の前に設定している場合

    https://<アカウント>:<パスワード>@example.com/

  2. URLの設定例にクエリがなく、ベーシック認証を使うと記載されている場合

    https://example.com/

リスト 2.16.2 設定例
ddns profile server2
  url https://example.com/
  account ix-router
  password plain pass
  transport ip
  source-interface GigaEthernet0.0

2.16.1.3. IPv6アドレスを登録する場合

ダイナミックDNSサーバー事業者がIPv6に対応しているかどうかを確認してください。IPv6に対応している場合でも、更新パケットをIPv6で送信できない場合がありますので、あわせて確認が必要です。

リスト 2.16.3 設定例
IPv6パケットでIPv6アドレスを更新する場合
ddns profile server1
  url https://example.com/update.cgi
  query d=ix-router&p=<PW>&a=<IP6>
  password plain pass
  transport ipv6
  source-interface GigaEthernet0.0

IPv4パケットでIPv6アドレスを更新する場合
ddns profile server1
  url https://example.com/update.cgi
  query d=ix-router&p=<PW>&a=<IP6>
  password plain pass
  transport ip
  source-interface GigaEthernet0.0

2.16.1.4. 送信元インタフェースとアドレスを通知するインタフェースが異なる場合

送信元インタフェースと通知したいアドレスを持つインタフェースに、異なるインタフェースを指定できます。

リスト 2.16.4 設定例
GigaEthernet0.0にパケットを送信
GigaEthernet1.0のアドレスをサーバーに通知

ddns profile server1
  url https://example.com/update.cgi
  query d=ix-router&p=<PW>&a=<IP4>
  password plain pass
  transport ip
  notify-interface GigaEthernet1.0
  source-interface GigaEthernet0.0

2.16.2. ダイナミックDNSの動作

ダイナミックDNS機能は、以下のタイミングで更新動作を行います。

  • notify-interfaceコマンドで設定したインタフェース、notify-interface未設定時はsource-interfaceコマンドで設定したインタフェースのアドレスが変化した場合(10秒後に送信)

  • 周期更新(デフォルト24時間)

  • ddns updateコマンド実行時

短時間で繰り返し更新パケットを送信することはダイナミックDNSサーバー側の負荷になりますので、必要以上に短い周期で更新しないようにしてください。

2.16.3. 注意事項

  • ダイナミックDNSのサービスはサーバー事業者によって実装方法が異なり、決まった更新手順がないため、サーバーの実装によっては対応できない場合があります。運用する場合は事前に動作を確認してください。

  • 一度のGETリクエストでアドレスを更新することができないサーバーには対応しておりません。

  • ダイナミックDNS機能ではサーバーから応答があると成功と判断します。応答内容が成功か失敗かを検出することができませんので、正常に更新される設定であることを1度確認してからご利用ください。show ddnsコマンドで最後に登録した時刻、アドレスと、そのとき受信したサーバーからの応答メッセージを確認することができます。

  • 運用中に設定を変更した場合は、必ずddns updateコマンドで即時更新を実施してください。

  • 回線接続がプライベートアドレスの場合では利用できません。