竹形誠司 ブログ
Mac mini サーバー化計画    »トピック一覧
掲示板へのスパムが多いため、「ご質問」のコーナーはユーザー登録制とさせていただきました。お手数ですが、上の「新規ユーザーの登録」メニューより登録をお願いします。
帳票Web
アプリケーション

受注開発始めました
詳しくは こちら
竹形 誠司 著/ラトルズ刊
JSP帳票アプリケーション実践開発入門
JSP帳票アプリケーション
実践開発入門

JSP業務アプリケーション短期開発入門
JSP業務アプリケーション
短期開発入門

Java+MySQL+Tomcatで始めるWebアプリケーション構築入門
Java+MySQL+Tomcatで始めるWebアプリケーション構築入門

Java+MySQL+Tomcatで作る掲示板とブログ
Java+MySQL+Tomcatで作る
掲示板とブログ
DNSの設定がなかなか反映されない場合のチェックポイント(メモ)
by 竹形 誠司[takegata]
DNSの情報はキャッシュされるため、変更が反映されるまでに時間がかかることがあります。キャッシュの有効期間は3時間程度に設定されていることが多いですが、この時間を大幅に越えても変更が反映されない場合は、設定に問題があったかも知れません。チェックポイントを次に挙げます。

BINDを再起動したか
ログファイル(/Library/Logs/named.log)を確認します。

シリアルを上げ忘れていないか
シリアル番号が増えていないとゾーンファイルの内容が読み込まれません。

DNSを設定したネームサーバに問い合わせてみる
nslookup で2つ目の引数にDNSを設定したサーバ(オーソリティ)を指定して変更が反映されているかを確認します。

TTLの値を確認
Windowsのnslookupでは、デバッグモード(nslookup を引数無しで起動してset debugを実行)問い合わせを行うとTTLの値が表示されます。
C:\prg\test\java\RegExp>nslookup
Default Server:  ntt.setup
Address:  192.168.1.1

> set debug
> www.orquesta.biz
Server:  ntt.setup
Address:  192.168.1.1

------------
Got answer:
    HEADER:
        opcode = QUERY, id = 2, rcode = NOERROR
        header flags:  response, want recursion, recursion avail.
        questions = 1,  answers = 1,  authority records = 0,  additional = 0

    QUESTIONS:
        www.orquesta.biz, type = A, class = IN
    ANSWERS:
    ->  www.orquesta.biz
        internet address = 210.150.254.122
        ttl = 39104 (10 hours 51 mins 44 secs)

------------
Non-authoritative answer:
Name:    www.orquesta.biz
Address:  210.150.254.122
上の例(レジストラの初期設定)では、TTLが10時間以上になっているので、キャッシュが無効になるまでだいぶ待つ必要があるようです。

変更を早く反映させるには
DNSの変更を早く反映させるには、予めTTLを短くセットして、キャッシュが長く保持されないようにしておくと良いようです。その場合、DNSの変更と同時にTTLの値を通常(3時間ぐらい?)に戻します。
投稿:竹形 誠司[takegata]/2009年 04月 16日 22時 34分 /更新:2009年 04月 16日 22時 41分
ルータが怪しい?
by 竹形 誠司[takegata]
レジストラでDNSの登録設定を変えてから丸一日経ったのですが、依然として設定が反映されません。それどころかttlの値が17時間に増えてしまいました。
    ANSWERS:
    ->  www.orquesta.biz
        internet address = 210.150.254.122
        ttl = 64423 (17 hours 53 mins 43 secs)
これは何かが変です。そこで、nslookupを実行する際にプロバイダ(インターリンク)のDNSサーバ(203.141.128.33)を指定してみました。
C:\prg\test\java\RegExp>nslookup www.orquesta.biz 203.141.128.33
Server:  tegtan1.interlink.or.jp
Address:  203.141.128.33

Non-authoritative answer:
Name:    ns.orquesta.biz
Address:  116.58.176.51
Aliases:  www.orquesta.biz
あれっ!?正しいIPアドレスが帰ってきます。ルータはプロバイダのDNSを中継しているはずなのに???

ルータ(RV-S340NE)の設定を確認すると、DNSのアドレスは自動取得になっています。インターリンクの説明でも自動取得を推奨しているので、この設定でよいはずですが、試しにこれを手動設定に変えて、インターリンクから知らされているDNSサーバ(203.141.128.33と203.141.128.35)を設定してみます。

このルータはプロバイダの設定を変更して保存すると、接続が自動的に切れるようです。再接続してnslokoupを実行してみます。
> www.orquesta.biz
Server:  ntt.setup
Address:  192.168.1.1

Non-authoritative answer:
Name:    www.orquesta.biz
Address:  210.150.254.122
やはり帰ってくるIPは古い設定のままです。こうなると、ルータ(のDNS中継機能)を疑うしかありません。ルータを再起動してみました。その後、nslookupの実行結果は次のようになりました。
Server:  ntt.setup
Address:  192.168.1.1

Non-authoritative answer:
Name:    www.orquesta.biz
Address:  116.58.176.51
新しいIPアドレスが帰ってきました!

いやー、なんだったんでしょう。ネットでちょっと検索してみた限りでは、RV-S340NEのDNS中継機能にバグがあるというような情報は見つからなかったので、もしかしたら別の原因かも知れませんが、とにかく、ルータを再起動したことで問題が解消されました。それにしれもハマったハマッた。

DNSって難しいですねぇ〜・・・
投稿:竹形 誠司[takegata]/2009年 04月 17日 16時 35分 /更新:2009年 04月 17日 16時 36分