Ciscoルータでの設定例

重要なお知らせ

ウェブサイトのリニューアルに合わせてダイナミック DNS の URI (ドメイン名の部分) が変更になっています。従来の URI については SSL 証明書の更新を行いませんので、2012 年 2 月以降は SSL 証明書の有効期限切れとなります。 旧 URI でダイナミック DNS 機能をご利用のユーザ様は、それまでに新しい URI への変更をお願いいたします。

このページについて

Cisco SystemsのCisco 1812J IOSバージョン15.0系でKDNS.JPのダイナミックDNS機能を利用する際の設定例です。同じ系列のIOSであれば、別の機種でも同じように設定が可能と思われます。

このページではダイナミックDNSの利用に必要な設定のみを掲載しています。ルータでの名前解決などの基本的な設定はすでにされていることを前提にしています。

IOSについて

IOSは新しいものをお使いください。古いIOSではKDNS.JPのダイナミックDNS機能が利用できない場合があります。未対応のIOSで設定を行った場合、サーバから「404 Not Found」というエラーページが返されます。

KDNS.JPのダイナミックDNS機能の対応状況を以下にまとめます。これ以外の機種やIOSについても検証ができ次第掲載していきます。

IOS対応状況
機種名フィーチャーセットリリース / リリース日利用可否
Cisco 1812J ADVANCED IP SERVICES 12.4.20.T / 2008-07-11×
12.4.22.T / 2008-10-11×
12.4.24.T / 2009-02-27×
12.4.24T1 / 2009-06-23×
12.4.24T2 / 2009-10-22
15.0.1M1 / 2009-12-07
15.1.1-XB / 2009-12-23
15.1.4M1 / 2011-07-22

SSLルート証明書のインストール

本ウェブサイトで使用している証明書に対応させるために、以下のルートCA証明書が必要となります。

以下は上記URLの証明書を GT_QuickSSL という名称でルータにインストールする例です。 以下の例の「-----BEGIN CERTIFICATE-----」から「-----END CERTIFICATE-----」の部分は上記のURIで公開されているものを使用してください。

(config)#crypto ca trustpoint GT_QuickSSL
(ca-trustpoint)#enrollment terminal pem
(ca-trustpoint)#exit
(config)#crypto ca authenticate GT_QuickSSL

Enter the base 64 encoded CA certificate.
End with a blank line or the word "quit" on a line by itself

-----BEGIN CERTIFICATE-----
MIID+jCCAuKgAwIBAgIDAjbSMA0GCSqGSIb3DQEBBQUAMEIxCzAJBgNVBAYTAlVT
MRYwFAYDVQQKEw1HZW9UcnVzdCBJbmMuMRswGQYDVQQDExJHZW9UcnVzdCBHbG9i
YWwgQ0EwHhcNMTAwMjI2MjEzMjMxWhcNMjAwMjI1MjEzMjMxWjBhMQswCQYDVQQG
EwJVUzEWMBQGA1UEChMNR2VvVHJ1c3QgSW5jLjEdMBsGA1UECxMURG9tYWluIFZh
bGlkYXRlZCBTU0wxGzAZBgNVBAMTEkdlb1RydXN0IERWIFNTTCBDQTCCASIwDQYJ
KoZIhvcNAQEBBQADggEPADCCAQoCggEBAKa7jnrNpJxiV9RRMEJ7ixqy0ogGrTs8
KRMMMbxp+Z9alNoGuqwkBJ7O1KrESGAA+DSuoZOv3gR+zfhcIlINVlPrqZTP+3RE
60OUpJd6QFc1tqRi2tVI+Hrx7JC1Xzn+Y3JwyBKF0KUuhhNAbOtsTdJU/V8+Jh9m
cajAuIWe9fV1j9qRTonjynh0MF8VCpmnyoM6djVI0NyLGiJOhaRO+kltK3C+jgwh
w2LMpNGtFmuae8tk/426QsMmqhV4aJzs9mvIDFcN5TgH02pXA50gDkvEe4GwKhz1
SupKmEn+Als9AxSQKH6a9HjQMYRX5Uw4ekIR4vUoUQNLIBW7Ihq28BUCAwEAAaOB
2TCB1jAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFIz02ZMKR7wAoErOS3VuoLaw
sn78MB8GA1UdIwQYMBaAFMB6mGiNifurBWQMEX2qfWW4ysxOMBIGA1UdEwEB/wQI
MAYBAf8CAQAwOgYDVR0fBDMwMTAvoC2gK4YpaHR0cDovL2NybC5nZW90cnVzdC5j
b20vY3Jscy9ndGdsb2JhbC5jcmwwNAYIKwYBBQUHAQEEKDAmMCQGCCsGAQUFBzAB
hhhodHRwOi8vb2NzcC5nZW90cnVzdC5jb20wDQYJKoZIhvcNAQEFBQADggEBADOR
NxHbQPnejLICiHevYyHBrbAN+qB4VqOC/btJXxRtyNxflNoRZnwekcW22G1PqvK/
ISh+UqKSeAhhaSH+LeyCGIT0043FiruKzF3mo7bMbq1vsw5h7onOEzRPSVX1ObuZ
lvD16lo8nBa9AlPwKg5BbuvvnvdwNs2AKnbIh+PrI7OWLOYdlF8cpOLNJDErBjgy
YWE5XIlMSB1CyWee0r9Y9/k3MbBn3Y0mNhp4GgkZPJMHcCrhfCn13mZXCxJeFu1e
vTezMGnGkqX2Gdgd+DYSuUuVlZzQzmwwpxb79k1ktl8qFJymyFWOIPllByTMOAVM
IIi0tWeUz12OYjf+xLQ=
-----END CERTIFICATE-----
quit
Trustpoint 'GT_QuickSSL' is a subordinate CA and holds a non self signed cert
Certificate has the following attributes:
       Fingerprint MD5: F4858289 EAD55C53 B36D4B55 3F267837 
      Fingerprint SHA1: BAE30B15 DBB1544C F194D076 B75B7BB9 E3D6B760 

% Do you accept this certificate? [yes/no]: yes
Trustpoint CA certificate accepted.
% Certificate successfully imported

「Certificate successfully imported」のようなメッセージが出れば成功です。

ダイナミックDNS設定例

kdns という名称でDDNSアップデートメソッドを作成し、HTTP(KDNS.JPの場合はHTTPSでの通信となります)を使ったDDNSアップデートの設定を行う例です。

ip ddns update method 名称 とすることで、指定した名称の DDNS-update-method コンフィグレーションモードとなります。 アップデート方式として HTTP と入力し、add でURIを設定します。 以下の USERNAMEPASSWORD は対象のドメイン名に設定したユーザ名とパスワードに置き換えてください。 <h> と <a> の部分は変数となります。<h> は対象インタフェイスに部分で定義する名称となり、 <a> は対象インタフェイスに割り当てられたIPアドレスに自動で置き換えられて送信されます。

(config)#ip ddns update method kdns
(DDNS-update-method)#HTTP
(DDNS-HTTP)#add https://USERNAME:PASSWORD@kdns.jp/nic/update?hostname=<h>&myip=<a>
(DDNS-HTTP)#exit

引き続き、DDNS-update-method コンフィグレーションモードで interval maximum の設定を行うことができます。 interval maximum ではアップデートの間隔を左から日 時間 分 秒の順で指定できます。 この設定を入れておくと、対象インタフェイスのIPアドレスに変更がない場合でも指定した間隔でアップデート処理が実行されます。 以下の例では30日ごとに実行されますが、KDNS.JPの場合は定期的にアップデート処理を行わなくてもアカウント停止等はありません。このため、この時間はもう少し長くしても問題はありません。

(DDNS-update-method)# interval maximum 30 0 0 0

アップデートしたいIPアドレスが付加されるインタフェイスへDDNSの設定を行います。 ここでは例として Dialer0 インタフェイスへ設定しています。 インタフェイスコンフィグレーションモードで、更新するドメイン名とDDNSアップデートメソッドを指定します。 以下の例では、ドメイン名は example.kdns.info とし、DDNSアップデートメソッドは先ほど設定した kdns という名称を指定しています。

(config)#interface Dialer0 
(config-if)#ip ddns update hostname example.kdns.info
(config-if)#ip ddns update kdns

デバッグを有効にすると、アップデートの際にログが出力されます。

#debug ip ddns update 

デバッグが有効な場合はアップデート時に次のようなログが出力されます。 以下の例の IPアドレス 部分は対象のインタフェイスに付加されているIPアドレスとなります。 「DATA START」に続き、good IPアドレスのように表示されれば成功です。前回とIPアドレスに変化がなかった場合は nochg という表示になります。 「DATA END, Status is Response data recieved, successfully」と表示されている部分は、ルータで本ウェブサーバからの応答の受信に成功したことをを示しており、正常にアップデートできたとは限りません。たとえば、URIの引数の記述ミスで本ウェブサーバが badsys を返したとしても同じメッセージとなります。 アップデートが成功したかどうかは good もしくは nochg という表示で判断してください。

*Sep 23 10:24:35.871: DYNDNSUPD: Removing DNS mapping for example.kdns.info <=> IPアドレス
*Sep 23 10:24:35.871: HTTPDNS: Update remove called for example.kdns.info <=> IPアドレス
*Sep 23 10:24:40.207: DYNDNSUPD: Adding DNS mapping for example.kdns.info <=> IPアドレス
*Sep 23 10:24:40.207: HTTPDNS: Update add called for example.kdns.info <=> IPアドレス
*Sep 23 10:24:40.207: HTTPDNSUPD: Session ID = 0x7
*Sep 23 10:24:40.207: HTTPDNSUPD: URL = 'https://USERNAME:PASSWORD@kdns.jp/nic/update?hostname=example.kdns.info&myip=IPアドレス'
*Sep 23 10:24:40.207: HTTPDNSUPD: Sending request
*Sep 23 10:24:40.719: HTTPDNSUPD: Response for update example.kdns.info <=> IPアドレス

*Sep 23 10:24:40.719: HTTPDNSUPD: DATA START
good IPアドレス
*Sep 23 10:24:40.719: HTTPDNSUPD: DATA END, Status is Response data recieved, successfully
*Sep 23 10:24:40.719: HTTPDNSUPD: Call returned SUCCESS, update of example.kdns.info <=> IPアドレス succeeded
*Sep 23 10:24:40.719: DYNDNSUPD: Another update completed (outstanding=0, total=0)
*Sep 23 10:24:40.719: HTTPDNSUPD: Clearing all session 7 info

正常に動作しない場合、SSLでの通信に失敗していることも考えられます。次のようにするとSSLのエラー出力を有効にできます。

#debug ssl openssl errors

本当に更新されているのかはPCから確認するとよいでしょう。お使いのDNSキャッシュサーバにキャッシュされているかもしれませんので、以下の例では直接ネームサーバから問い合わせています。 ルータの show interfaces コマンドで対象のインタフェイスに割り当てられたIPアドレスを確認し、Aレコードが同じになっていれば成功です。

$ dig @ns1.kendomo.jp example.kdns.info

このページの更新履歴

2011-09-23
ウェブサイトリニューアルに伴うURI変更を反映。IOS対応状況を更新。
2011-01-19
ウェブサイトリニューアルに関するお知らせを追記。
2010-01-05
IOS対応状況の表を掲載。
2009-12-17
対応IOSについての注意書きを追記。
2009-12-12
公開。