• ベストアンサー
  • 困ってます

nslookupするとローカルドメインが追加されてしまう

お世話になります。 DNSサーバーを構築して(bind8.3.1 for Solaris)同サーバーにて nslookupを実行するとおかしな事象が発生します。 ローカルドメイン(仮): xxx.co.jp DNSサーバー名(仮): mydns.xxx.co.jp DNSサーバーIP(仮): 10.10.10.99 DNSが引けた場合は問題ないのですが、引けなかった場合、通常 # nslookup hogehoge.co.jp Server: mydns.xxx.co.jp Address: 10.10.10.99 *** mydns.xxx.co.jp can't find hogehoge.co.jp: Non-existent host/domain のようになるはずなのに、 # nslookup hogehoge.co.jp Server: mydns.xxx.co.jp Address: 10.10.10.99 Name: hogehoge.co.jp.xxx.co.jp のように、サーチしたドメインの後ろにローカルドメインが付随して表示されてしまいます。 IPでサーチした場合はもちろんこのようにはなりません。 resolv.conf や named.conf も調べたのですがよくわかりません。 どなたかご見当が付く方がいらっしゃいましたらご教授いただければ幸いです。

noname#79935
noname#79935

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

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

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

  • ベストアンサー
  • 回答No.2

No.1のKnl_Panicです。 失礼しました。ローカルのみの現象であれば、リゾルバの正常動作です。 /etc/resolv.confにsearch行かdomain行が書かれている場合、末尾に「.」がつかないドメイン名をnslookupすると、search/domain行に書かれたドメイン名を補完して再検索を実行するようになっています。特に動作異常ではありませんので、そのまま運用しても問題ないはずです。 普段検索する際にはあまり意識する事はありませんが、本来、ドメイン名の末尾には「.」が必要である名残なのだという程度で認識してくだされば結構です(また、気になるようでしたら、ローカルからドメイン名検索する際には「hogehoge.co.jp.」のように、末尾に「.」をつけて記述すると良いと思います。

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

質問者からのお礼

そうだったんですか。 メールその他の運用には支障が無かったのでクリティカルな問題ではなかったのですが、どうも気になって調べておりました。 私の言葉足らずでお手を煩わさせてしまい申し訳ございませんでした。 度々なるご好意に感謝致します。

関連するQ&A

  • windowsからだけnslookupで参照できない

    ドメインをいくつか取って、1台でDNS兼WEBサーバーを運用しています。 環境はwindows2000server+bind9.2です。 LAN内のPCのDNSの設定を、社内DNSサーバーをプライマリに、プロバイダのDNSをセカンダリに設定しました。 しかし、windowsからnslookupをすると必ず *** Can't find server name for address 192.168.50.1: Non-existent domain Default Server: <プロバイダのDNSサーバー> となってプロバイダのDNSサーバーを参照してしまいます。 ところが同じようにLAN内のLinuxからnslookupをすると、ちゃんと社内DNSサーバーを参照できます。 これはなぜなのでしょうか? 社内DNSサーバーを更新した時のチェック作業をwindowsからできないので困っています。 しばらくすれば外部のDNSサーバーに反映されているのでnamed.confの設定に問題はないと思うのですが。 windows側はプロトコルにnetbeuiを追加したぐらいで とくに特別な設定はしていません。 よろしくお願いします。

  • NSLOOKUPの見方

    もうひとつDNS関係で質問します。 W2K ActiveDirectoryドメインのもとですが DNSがうまく機能しているかわからず、 マニュアルとおりにクライアントからNSLOOKUPコマンドを打ってみましたらこんな結果がでました。 c:\>nslookup server2 *** Can't find server name for address 192.168.20.5:Non-existent domai *** Defaoult servers are not available Server: Unknown Address: 192.168.20.5 Name: server2.Pcompany.co.jp Adress:192.168.20.48,192.168.20.5 *Server2=DNSサーバー192.168.20.5  192.168.20.48=Server2に入っているRASサーバーのアドレス また、別にヘルプに従って c:\>nslookup 192.168.20.5 127.0.0.1を打ってみると(127.0.0.1の意味がわらず、ヘルプとおりに打ちましたが) *** Can't find server name for address 127.0.0.1:No response from server Server: Unknown Adress: 127.0.0.1 *** Unknown can't find 192.168.20.5:No response from server とでました。 これらの結果から何が悪いのか教えていただけませんでしょうか。

  • nslookupで名前解決ができない

    NAS-01Gをdebian化してFTPサーバを構築しており、FTPサーバを構築しようとしております。 現状は、ddclientをインストールして「ddclient -daemon=0 -debug -verbose -noquiet」を実行するとSUCCESS(IPアドレスはルータのグローバルIPなので正常だと思います。)になっているのですが、nslookupをしても名前解決がされません。 <NAS-01Gからnslookupを実行> NAS-01G:/etc# nslookup *****.dyndns.org Server: 211.9.32.208 Address: 211.9.32.208#53 ** server can't find *****.dyndns.org: REFUSED <同じルーター配下のWindows XPからnslookupを実行> C:\Documents and Settings\aaa>nslookup *****.dyndns.org *** Can't find server name for address 192.168.3.1: Non-existent domain *** Default servers are not available Server: UnKnown Address: 192.168.3.1 Non-authoritative answer: Name: *****.dyndns.org Address: 126.69.***.***  ←■グローバルIP <NAS-01Gの/etc/resolv.conf> search cefemoon.net nameserver 211.9.32.208 nameserver 211.9.32.235 nameserver 192.168.3.1   ←■Windowsと同じDNSを追加した もしかしてルーターのNAT設定とかが必要なのでしょうか?

その他の回答 (1)

  • 回答No.1

こんにちは。 named.confにforwarderを設定していて、その設定が間違ってはいませんか? named.confでroot.cacheは設定できていますか? またroot.cacheのゾーンファイルはしっかり取得できていますか? どうやらDNSサーバー自身で名前解決できなかった場合のDNS問い合わせ先が認識できず、かつ、検索ドメイン名の末尾に「.」がついていないため、相対パスと認識してローカルドメイン名のサフィックスを補完してドメインの再検索を実行しているように見受けられます。こういった場合、forwarder設定、あるいはroot.cacheの設定がうまく行っていない事が多いです。 とりあえずそのあたりを確認してみてください。 違っていたらすみません。

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

質問者からのお礼

ご回答ありがとうございます。 試しに、named.conf のforwarders 設定を無効にし root.cacheを最新のものに更新して zone "." { type hint; file "root.cache"; } としてnamedを再起動しましたが同様の現象が発生しました。 書き忘れていましたが、この現象は DNSサーバー自体で、nslookupした時にだけ現れるもので このDNSサーバーをネームサーバーに設定している別ホストでは nslookupをしてもこのようにはならず、きちんと can't find ... になります。 自らに問い合わせるとダメということになります。 参考になるご見解とご好意に感謝致します。

関連するQ&A

  • 同じドメインで別のIPへのリダイレクト

    お世話になります。 旧サーバ  ドメイン:http://hogehoge.co.jp IP:xxx.xxx.xxx.1 新サーバ  ドメイン:http://hogehoge.co.jp IP:xxx.xxx.xxx.2 上記のようなサーバがあったとして、ドメインはそのままでDNSを別のサーバに向けた時、 DNSが浸透するまでに多少の時間がかかると思います。 その際、旧サーバにアクセスがあった場合に新サーバへリダイレクトを する方法はありますでしょうか。 mod_rewriteでできるものなのでしょうか? どうぞよろしくお願いいたします。

  • 【nslookupコマンド】 で 【unknown】 が帰ってきてくる

    FedoraCore5でDNSサーバーを構築したのですが、 windowsからnslookupコマンドを打つと 下記のようになります。 -------------------------------------- DNS request time out. *** Can't find server name for address 192.168.0.*: Time out *** Default servers are not available Default Server: Unknown Address: 192.168.0.* -------------------------------------- DNSサーバーからnslookupを打つと正常に名前解決してくれます。 ちなみにDNSサーバーとwindowsは同ドメイン、同ネットワークです。 DNSに詳しい方、どうぞ宜しくお願いいたします。

  • nslookupで、server can't findエラーが出ます

    既存のネットワークに、新しくサーバーマシンを追加しました。 /etc/netmasks /etc/defaultrouter /etc/hosts /etc/nodename /etc/hostname.xxxx /etc/resolv.conf /etc/nsswitch.conf(hostsの部分には、files dns) を新しく追加するサーバーマシンに作成しました。 しかし、別のマシンからnslookupで、追加したマシンのIPあるいは ホスト名を入力しても、server can't findエラーが出てしまいます。何故なのでしょうか? きちんとresolv.confを追加サーバーマシンに作成しているのに。 それとも、ネットワーク内にあるDNSサーバーに何か設定か登録をしなければならないのでしょうか? その場合、DNSサーバーのどの設定ファイルに、新しく追加したサーバーマシンの情報を記述しなければならないのでしょうか?

  • IPアドレスのドメインを調べたいです

    xxx.xxx.xxx.xxxのアドレスからアクセスがあり、nslookupで調べると  Non-existent domain が返ってきて、DNSに未登録のホストからのアクセスのようです。 IPアドレスの範囲から割り当てられているドメインを知ることは可能でしょうか。 また地域、国名を知ることはできますでしょうか。 ネットワークに詳しい方、よろしくお願いします。

  • resolv.confの設定について

    環境 CentOS6.2 サーバ:192.168.0.3 ルータ:192.168.0.1 ドメイン名:hogehoge.ddo.jp (架空のドメイン名です) 再起動すると ifcfg-eth0の内容がresolv.confに反映されてしまい、hostコマンドで名前解決されているか確認すると、下記結果になってしまいます。(本来、ドメイン名からサーバのローカルIPが帰ってくるべきものが、グローバルIPになっています。またサーバのローカルIPの問い合わせでも、見つからないと返答があります。) この状態のときのresolv.confの内容は下記のとおりです。 [root@hogehoge ~]# cat /etc/resolv.conf nameserver 192.168.0.1 サーバからhostコマンドで問い合わせした結果です。 [root@hogehoge ~]# host 192.168.0.3 Host 3.0.168.192.in-addr.arpa. not found: 3(NXDOMAIN) [root@hogehoge ~]# host hogehoge.ddo.jp hogehoge.ddo.jp has address 182.169.XXX.XXX resolv.confの内容を下記のとおりに修正して,bindを再起動すると正常に名前解決できます。 [root@hogehoge ~]# cat /etc/resolv.conf nameserver 127.0.0.1 search hogehoge.ddo.jp 現在設定されている ifcfg-eth0の内容です。私の理解ではこの設定が再起動、シャットダウン後、resolv.confに反映されると思っております。 再起動のたびに、いちいち編集してbindを再起動しなくても良いようにするには、どのように修正すればよろしいでしょうか。よろしくお願いします。 [root@hogehoge network-scripts]# cat ifcfg-eth0 DEVICE="eth0" HWADDR="00:11:85:11:EE:64" NM_CONTROLLED="yes" ONBOOT="yes" BOOTPROTO=static IPADDR=192.168.0.3 NETMASK=255.255.255.0 GATEWAY=192.168.0.1 BROADCAST=192.168.0.255 DNS1=192.168.0.1

  • ルータを問い合わせ先にするのは間違い?(nslookup)

    ルータ経由でインターネットをしております。 「PC→ルータ→インターネット」 ルータはWBR-G54、プライベートIPは192.168.11.1です。 nslookupコマンドでのデフォルトの問い合わせ先は、 192.168.11.1です。 この環境でnslookupコマンドを実行すると、 *** Can't find server name for address 192.168.11.1: Non-existent domain *** Default servers are not available Server: UnKnown (ルータに名前がついてないから、UnKnown??) Address: 192.168.11.1 と出てきます。 問い合わせ先のサーバを変えれば 「***~~」の部分は出てきませんが、 この「***~」が出てくるのは問い合わせ先(自分の場合はルータ) が有効では無いからという事は調べてみたりしたら分かったのですが、 という事は、 ルータをデフォルトの問い合わせ先にするのは間違いなのでしょうか? よろしくお願いします。

  • 自宅サーバーのDNS設定について

    こんにちは。 勉強のため自宅にWin2003サーバーを設置しました。 activedirectoryを構成しましたが、クライアントのログオンの時に 数分時間がかかります。 サーバー、クライアントのDNSはどのように設定すればいいのでしょうか? 現在、クライアントはIPアドレス、DNS共に自動的に取得、に設定。 ADSL(IP非固定)でルーターは192.168.0.1 サーバーは192.168.0.5にしています。 以下はサーバーで行ないました。 >nslookup ***Can't find server name for address 192.168.0.5: Non-existent domain Default Server: Unknown ipconfig/all Windows IP Configuration Host Name・・・コンピューター名が表示 Primary Dns Suffix・・・ドメイン.local Node Type・・・Unknown IP Routing Enabled・・・No WINS Proxy Enabled・・・No DNS Suffix Search List・・・ドメイン.local Ethernet adapter ローカルエリア接続: Connection-specific DNS Suffix .: DHCP Enables・・・No IP Address・・・192.168.0.1 Subnet Mask・・・255.255.255.0 Default Gateway・・・192.168.0.1 DNS Server・・・192.168.0.5 クライアントは3台ですべてXPPROです。 宜しくお願いします。

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

    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 の設定含め確認点などあればご指摘ください。

  • nslookupでのホストの名前解決について

    RedHatEnterpriseLinuxにおいて、resolv.confの設定を以下のようにしています。 domain ドメインA search ドメインB nameserver ・・・ nameserver ・・・ nameserver ・・・ 以上の設定において各ドメインに参加するホストに対し、 ドメインA、ドメインB共にping <ホスト名>は通っています。 ただしnslookup <IP>ではドメインAの名前解決のみできて、ドメインBの名前解決ができません。 上記のような場合において、ドメインA,B共にpingが通りnslookupでの名前解決ができるようにすることはできるでしょうか? できる場合その手順はどのようになりますでしょうか? 尚、domainとsearchの順序を逆にした場合、ドメインA,B共に名前解決ができませんでした。

  • /etc/resolv.conf

    /etc/resolv.conf /etc/resolv.conf は FreeBSD にインターネットドメインネームシステム (DNS) にどのようにアクセスするかを指定します。 resolv.conf の最もよくあるエントリは nameserver リゾルバが問い合わせるべきネームサーバの IP アドレス。 サーバはリストの順に 3 番目まで問い合わせられます。 search ホスト名をルックアップするための検索リスト。通常、ローカルなホスト名のドメインから決定されます。 domain ローカルドメイン名。 ---------------------------------------------------------- となりますが、わたくしの環境は、PR-S300SE というルータ使用なのですが、具体的に、DNS を調べる方法として、どのようなコマンドを叩けば、よろしいでしょうか? よろしくお願いします。