• ベストアンサー
  • 暇なときにでも

LAN内に立てたWEBサーバーの名前解決

LAN内に立てたWEBサーバーの名前解決がある程度時間が経過すると失敗します。IPアドレスを直接入力するとアクセスできます。 名前解決はDNSを用い、 WEBサーバーはLinuxのApache、 DNSはLinux上でBIND、 クライアントはWindows7で、WEBサーバー、DNS、クライアントは同一ネットワークにあります。 アクセス出来ない状態でWindowsから nslookup ホスト名 と入力するとDNSサーバーからの答えとしてIPアドレスは返ってきますが ipconfig /displaydns を入力するとそのWEBサーバーは一覧に出てこなくなります。 そこで net stop dnscache net start dnscache とDNS Clientを再起動すると、ホスト名でアクセスできます。 BINDのレコードですがTTLは604800を指定しています。 DNS Clientをいちいち再起動すること無く、運用できないものでしょうか?

共感・応援の気持ちを伝えよう!

  • 回答数1
  • 閲覧数1091
  • ありがとう数2

質問者が選んだベストアンサー

  • ベストアンサー
  • 回答No.1
  • maesen
  • ベストアンサー率81% (646/790)

なかなか不可解な現象が発生していますね。 情報が不足していることもあり、直接的な答えではなく適切な回答になっていなかったらご容赦下さい。 >DNS Clientをいちいち再起動すること無く、運用できないものでしょうか? それほど複雑な構成ではないと思いますので通常はこんなことにはならないはずですので、何か設定や構成がおかしいと思います。 Windowsの名前解決は、 ・優先DNS、代替DNSサーバの設定 ・プライマリ及び接続固有のDNSサフィックス ・NetBIOSのノードタイプ などによって名前解決の優先順位が変わりますし、アプリ側の実装によっても変わります。(ブラウザならばプロキシの有無など) 従って、実際にどのようになっているかは通信をキャプチャして調査するのが良いと思います。 名前解決のプロトコルはそれほど難しくないので見れば大体わかると思います。 >nslookup ホスト名 >と入力するとDNSサーバーからの答えとしてIPアドレスは返ってきますが >ipconfig /displaydns >を入力するとそのWEBサーバーは一覧に出てこなくなります。 この結果から判断するとDNSによる名前解決自体は問題ないように思います。 DNS名前解決以外の何かが影響していることが考えられます。 ちなみにご存じかもしれませんが、 nslookupコマンドは常に優先DNSに設定されたIPアドレスにクエリし冗長化のしくみは機能しません。(Serverサブコマンドなどで変更しない限り) また、ホスト名の最後にドットを付けなければ、DNSサフィックスに従ってドメイン名を付与してFQDNでのクエリに自動的に変更します。 また、nslookupでクエリしたものはクライアントのDNSキャッシュに保存されないはずです。 >BINDのレコードですがTTLは604800を指定しています。 余談ですが、LAN内のローカルで使用するゾーンではこのTTLは長すぎると思います。 参考になる部分があればいいですが。

共感・感謝の気持ちを伝えよう!

質問者からのお礼

ご返答遅れて申し訳ありません。 確かにLAN内にProxyを立て、DNSと同一サーバー内にあるWebサーバーからproxy.pacファイルを配信して設定しているのですが、これを行うようになってからiPhoneからホスト名でWEBサーバーにアクセスした際のレスポンスが落ちているので、プロキシなども絡んできているのではないかと思います。一旦この質問はクローズとさせていただきます。ありがとうございました。

関連するQ&A

  • DNSの名前解決がおかしい

    いつもお世話になっております。 CentOS5.8にてpingコマンドでの名前解決がおかしいので質問させてもらいます。 pingコマンドを特定のホスト名に対して実行すると、昔そのホスト名に関連づけられたIPアドレスを参照してしまいます。 そのマシンにてnslookupやdigコマンドを実行してもそのホスト名に対して、正しいIPを参照してくれました。 LinuxにもDNSのキャッシュがあるのではないかと考えたのですが service nscd restart を実行しても変わりません。 他にどのような原因が考えられるか教えていただけませんか? よろしくお願いします.。 ちなみにその正しく参照されないホスト名とは、サーバーを移転前にも使用していたホスト名で www.ドメイン となっていて、pingコマンドで参照されるのは移転前に使われていたIPアドレスです。 apacheのアクセス解析にawstatsを利用しているのですが、その際も前回のIPアドレスにてアクセスした履歴はwww.ドメイン となっています。

  • ドメイン名のみの場合、名前解決できない

    CentOS5 Bind9です。 Bindでdns設定をしているのいるのですがドメイン名のみの場合 名前解決できずに困っています。 具体的にはホスト名をつけた場合 nslookup www.hogehoge.com → Non-authoritative answer:    Name: ns.hogehoge.jp    Address: xxx.xxx.xxx.xxx と名前解決できますが、ドメイン名のみの場合 以下のようになってしまいます。 nslookup hogehoge.com → Non-authoritative answer: *** Can't find hogehoge.com: No answer conf zone の設定含め確認点などあればご指摘ください。

  • 特定のサイトのみ名前解決できない

    特定のサイトのみ、名前解決できずに困っています。 PC_AとPC_Bは同じネットワークに接続されており、IPアドレスは固定IPです。サブネットやDNSの設定は全く同じです。 PC_AもPC_Bも、hostsの内容は 127.0.0.1 localhost だけです。 しかし、PC_Bでのみ、特定のサイトにアクセスできません(今のところ1箇所だけです)。 コマンドプロンプトでnslookup (問題のサイト名)と打つと、DNS request time out.と表示されます。このサイト以外の名前解決はちゃんとできます。 PC_Aで同じようにnslookup (問題のサイト名)と打つと、ちゃんと名前解決できます。 問題のサイトのIPアドレスを使えば、ちゃんとアクセスできるので、名前解決だけの問題だと思っているのですが・・・。 どなたか分かる方、助けてください!!

  • クライアントPCでの名前解決がおかしくなりました

    突如、クライアントPCから他のPCやサーバへ エクスプローラなどでのアクセスができなくなりました。 クライアントPCからpingを他のPC、サーバへうつと IPアドレス、ホスト名のケースともに かなり時間がかかってしまっています。 (hostsファイルにサーバのIPアドレスを追加してトライすると 早くつながりました) 逆にサーバから他のPCにpingをうつとIPアドレス、ホスト名両方とも OKでした。 クライアントPCの中には一時稀にエクスプローラでサーバを 見てファイルを操作することができましたが、すぐにアクセスできなくなります。 他のPCを見るときにホスト名でアクセスしようとして名前解決ができないために 見れなくなっていると思ったんですが、 IPアドレスでアクセスしてもダメでした。 また、クライアントに固定IPアドレスふっても同じ結果でした。 ファイルサーバはWindows2003Serverで DNS、DHCPサーバも兼ねています。 クライアントはWindowsXPと2000(pro)です。 明確な理由、解決策がわかりません。 よろしくお願いします。

  • DNS 名前解決について

    現在DNSの勉強の為、2台のPCをサーバとクライアントとして 設定を行っています。 参考書等調べながらやっていますが、うまくいきません。 状況: DNSの設定を行いサーバ本体でnslookupやdigで確認すると正引き、 逆引き共にIPアドレス、ホスト名を返してきます。 そこで次にクライアント側でdigを行うと下記を返してきて、うまくいきません。 ;; connection timed out ; no servers could be reached Q.クライアントのPCより名前解決できるようにしたいのですが、   ご参考意見がございましたら教えて頂ければと思い質問致しま   した。 サーバ側 OS Fedora Core5 プライベートIPアドレス 192.168.1.2 ホスト名 linux.ittest.com DNSサーバ BIND ※DHCPサーバも稼動 クライアント側 Debian 3.1 sarge プライベートIPアドレス 192.168.1.10 DHCPでIP取得 クライアント側の「/etc/resolv.conf」は下記設定としてます。 search ittest.com(ドメイン名) nameserver 192.168.1.2(DNSサーバーIPアドレス) またDNSの「/etc/named.conf」は既存のファイルに下記を加えました。 zone "ittest.com" IN{ type master; file "ittest.com.db"; allow-update { none; }; }; zone "1.168.192.in-addr.arpa" IN { type master; file "1.168.192.in-addr.arpa.db"; allow-update{ none; }; }; ゾーンファイルは下記を作成しました。 /var/named/ittest.com.db作成 $TTL 86400 ittest.com. IN SOA linux.itteste.com. root.ittest.com. ( 2007103100 ;Serial 7200 ;Refresh 3600 ;Retry 604800 ;Expire 86400 ;Minimum TTL ) IN NS linux.ittest.com IN MX 10 linux linux IN A 192.168.1.2 IN MX 10 linux www IN CNAME linux ------------------------------------------- /var/named/1.168.192.in-addr.arpa.db作成 $TTL 86400 1.168.192.in-addr.arpa. IN SOA linux.ittest.com. root.ittest.com. ( 2007103100 ;Serial 7200 ;Refresh 3600 ;Retry 604800 ;Expire 86400 ;Minimum TTL ) IN NS linux.ittest.com 2 IN PTR linux.ittest.com ※PINGは通っています。 長くなりまた質問内容が的確ではないかも知れませんが、 アドバイスの方頂けたらと思います。

  • nslookupの名前解決

    自宅PCでたとえば「nslookup www.yahoo.co.jp」すると数秒後にタイムアウトが発生し名前解決できませんでした。 「ping www.yahoo.co.jp」では、IPアドレスが表示され接続確認でき、その後の「ipconfig /displaydns」でも対応が表示れます。 また仮想環境にlinuxをインストールし、「dig www.yahoo.co.jp」ならば名前解決できました。 自宅PCの環境は以下のようになっています。 ・OS:Windows Vista Ultimate SP2 ・IP :192.168.0.100 (自動取得ではなく静的設定です) ・DNS:192.168.0.1 (ADSNモデムです。OCNのADSLを利用してます) PC起動直後のpingやdigも、ほぼ直ぐ応答しましたので、nslookupのタイムアウトが短いから、というのは考えにくいように思いますが、なぜnslookupで名前解決できなかったのか、要因になりそうなものがありましたら教えてください。

  • 内部DNSで名前解決ができません。。

    BIND8以来の3年振りのBIND設定で嵌ってます(><) LinuxサーバにBIND9を設定し、 Windowsクライアントからは nslookupではFQDNで検索できるのに、 ブラウザやTelnetからだと名前解決できません。 仕方なく、hostsファイルにFQDNを書いているありさまです(><) 気になる点は、 Linuxサーバーでnslookupした時は ホスト名だけでも検索できるのに、 Windowsからnslookupした場合は、 ホスト名だけではNon-existent domainと 表示されてしまうところです。 又、SOAに、ns.ドメイン名とし Aレコードに実際のホスト名、 CNAMEにns と書いても正しく動作するものでしょうか? BIND9を設定したLinuxのサーバー名はmoonで、 正引きは下記のように設定しています。 $TTL 86400 N SOA ns.local-test.com@ IN SOA ns.local-test.com root.local-test.com ( 2005081501 ; serial (d. adams) 3H ; refresh 15M ; retry 1W ; expiry 1D ) ; minimum IN NS ns.local-test.com. IN MX 10 mail.local-test.com. IN A 192.168.1.1 ns IN A 192.168.1.1 moon IN A 192.168.1.1 mail IN CNAME dev1 www IN CNAME dev1

  • 名前解決について

    お世話になります。 こちらの質問の続きになります。 http://okwave.jp/qa/q9113671.html 症状の起きているPCにて、Webサーバー(ホスト名)に対してPingをうつと たまに欠損することが判明しました。 ※IPアドレスでは試してましたが、その場合は欠損無しでした。 欠損する際は何故か別のPCのIPアドレスに対して打とうとしてます。 タイミングとしては1分に1回欠損します。 nslookupにて確認したところWebサーバーのIPアドレスが返ってきました。 ※もしかすると上記のように、タイミングによっては誤ったIPが返ってくる  のかもしれません。 また、dnsのキャッシュをクリアしてみましたが状況変わらずです。 他のPCでは問題無いことから、当該PCで保持している何かしらの情報が おかしくなっているんだと思うのですが。。 lmhostsファイルに書けばよいだけなのでしょうが、それは最終手段として 無いか症状を改善する方法はございますでしょうか。 ご教示の程、宜しくお願い致します。

  • 名前解決で

    ネイムサーバーにBINDを利用してLAN内部向けDNSサーバを構築しました。 以下のURLを参考にしました。 http://kajuhome.com/bind.shtml#n05 ネイムサーバも無事に起動できたのでnslookコマンドで正引き、逆引きの確認を行いましたが以下のようなエラーが出てしまいます。 Windows側で行ったnslookup ------------------------------------------------------------------- $ nslookup *** Can't find server name for address 192.168.1.33: Query refused *** Can't find server name for address 192.168.1.2: Non-existent domain *** Default servers are not available Default Server: UnKnown Address: 192.168.1.33 > 192.168.1.33 Server: UnKnown Address: 192.168.1.33 *** UnKnown can't find 192.168.1.33: Query refused ------------------------------------------------------------------- *コンパネからネットワーク接続を開いて、優先DNSサーバを自サーバのIPアドレスに指定しました。 centOS上でnslookupを行った結果 ------------------------------------------------------------------- [root@centos ~]# nslookup > client.domain.local //クライアントのホスト名 Server: 127.0.0.1 Address: 127.0.0.1#53 Name: client.domain.local Address: 192.168.1.18 > server.domain.local //サーバのホスト名 Server: 127.0.0.1 Address: 127.0.0.1#53 ** server can't find server.domian.local: NXDOMAIN ------------------------------------------------------------------- なぜ、サーバが見つけらないのでしょうか。 逆引きは全て成功しています。 サーバのアドレスは192.168.1.33です。DefaultServerのがUnknownになる原因はなんでしょうか? どなたかアドバイスをお願い致します。 環境 Windows XP VMware CentOS5.4 VMware上でLinuxを動作させています。

  • linuxの名前の解決について

    いつもお世話になっております。 vmwareでlinux(CentOS5)をインストールした所、クライアント(Windows)からping "IPアドレス" は飛ぶのですが、ping "hostname"は飛ばない状態になりました。 名前解決する方法は、 ・DNSサーバに登録する。 ・各クライアントからhostsで解決する。 の2通りの方法があるという事で良いでしょうか。 現状、上手く名前解決できているサーバがあり、クライアント(Windows)の設定を確認してもhostsは定義されてなかったので、DNSで解決されているのかと思い、 クライアントから nslookup 解決されているサーバ名 dnsサーバのIP と打ってみたのですが、 setup.netvolante.jp can't find xxxxx: Non-existent domain と出て、DNSに登録されていないように感じます。 ちなみに nslookup 解決出来ない名 dnsサーバのIP setup.netvolante.jp can't find yyyyy: Non-existent domain と同様でした。 新しくインストールしたサーバの名前解決するにはどうしたら良いのでしょうか。 dnsに登録するというのは、リモートからでも出来るのでしょうか。 (小さい社内開発環境なので、自由にいじっても大丈夫なのですが、 この辺詳しかったものが辞めてしまい、申し訳ありませんが教えてください。) いくつか質問入ってしまい、すいませんが、 どれかでもアドバイスよろしくお願いします。