• ベストアンサー

DNSとWINS利用のときのXPと98の動作の違いについて(詳しい方求む!)

お世話になっております。誰か、DNSとWINSについて我こそはと思われる方、ぜひたすけてください。教えてください。 誰かが 「DNSというのは、ドメイン名(okweb.jp等)とIPアドレスを関連つけるためのサーバ WINSというのは、コンピューター名とIPアドレスを 結びつけるためのサーバです。」 とおっしゃっていましたが、 http://www.itmedia.co.jp/help/howto/win/win2000/0007special/dns/chap1/03.html ↑をみるとやっぱりNetBIOS名の解決にもDNSは順番こそ、優先順位低いですが、やっぱり使われるようですよね。 XPには「TCP/IPの詳細設定」のところに「この接続のアドレスをDNSに登録する」とありますが、98にはそんな設定項目はないし、 98はNetBIOS名の解決にDNSは使わない(ドメイン名とIPアドレスの解決は使う)とおもっていたのですが、 上記に貼ったURL等、いろいろな文献をみると、 XPも98もNetBIOS Name CacheからDNSまでひととおり名前解決を試みるみたいですよね?動作はどちらのOSも変らないですよね? となると 「なんでWINSサーバもたちあげてる必要があるのか?」なんですが。 DNSはドメインと、IPアドレスの解決もしているので、負荷分散の意味で WINSサーバがあるのでしょうか? プロトコル上、WINSサーバのほうに問い合わせるのを優先しているからでしょうか?

  • aimer
  • お礼率75% (432/575)

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

  • ベストアンサー
  • suzui
  • ベストアンサー率67% (199/297)
回答No.3

>動作はどちらのOSも変らないですよね? 違います。詳しくは参考URLを見てください。 >なんでWINSサーバもたちあげてる必要があるのか? 歴史的な経緯を理解する必要があります。 以下、正確さは多少欠けていますが、分かりやすさを重視して説明を試みてみます。 かなり長文で申し訳ありません。 古い時代は、コンピュータ間でファイルやプリンタを共有する場合、 ブロードキャストを多用する仕組みで通信をしていました。 (NetBEUIプロトコル上でNetBIOSインタフェースを提供していた) 相手のコンピュータ名を検索する際は、ブロードキャストを使っていました。 その時代は、WANでLAN間を接続する場合でも、ネットワーク機器でブロードキャストは転送しており、 コンピュータの数が増えたりするとブロードキャストでWANリンクが埋め尽くされ、 本来のファイルやプリンタ共有に支障をきたすこともありました。 (まだ専用線が主流で、しかもとても高価な時代でした) また、その時代は、インターネットが普及しておらず、OSの機能として、TCP/IPやDNSは求められていませんでした。 (TCP/IPを使うには別途有償のソフトウェアを購入する必要があったのです) W95やNTが出ると、OSの標準機能としてTCP/IPが内蔵され、Windowsのファイル・プリンタ共有を TCP/IP上で行うというニーズが生まれたため、NetBIOSもTCP/IPに対応するために拡張されました。 (それでも当初はファイル・プリンタ共有はNetBEUI、それ以外はTCP/IPというデュアル・プロトコル・スタック運用を行うところも多かった) コンピュータ名とIPアドレスの関連付けを行う方法として、LMHOSTSファイルで行う方法と、WINSで行う方法が用意されました。 これにより、WAN上にブロードキャストを転送する必要がなくなるというメリットもありました。 この時点では、ファイル・プリンタ共有しか行わない限り、つまり、 httpやsmtp等のTCP/IPプロトコルスイートを使わない限り、DNSは不要でした。 (注:NetBIOSにおいて、WAN経由のブロードキャストは不要になっても、LAN内では引き続き使われ続けています) しかし、実際にはWebやe-mail等の普及と時期が重なったせいもあって、(だからこそTCP/IPが標準搭載されたとも言える) ネットワーク内にはhostsファイルやDNSも使われるケースが増えていきました。 この時代では、アプリケーションの種類によって、使用する名前解決の仕組みが異なっていたことになります。 Microsoftのファイル・プリンタ共有関連は、NetBIOS(ブロードキャスト,LMHOSTS,WINS)を使い、 インターネット関連のアプリケーションでは、hostsやDNSを使っていました。 こういうふうに、完全に分かれたままになっていれば管理者としては分かりやすかったのですが、 実際には名前空間の二重管理という問題がありました。 つまり、1台のコンピュータに対し、NetBIOSの名前と、DNSの名前を二重に管理する必要があったわけです。 計画的に、両方に同じ名前を割り当てる運用をした組織もありましたが、 さまざまな理由により、両者に異なる名前をつけて運用せざるを得なかった組織も多かったはずです。 また、クライアントコンピュータ上の設定でも、DNS関連設定とWINS関連設定の 両方が確実に正しく設定できないようなケースも発生したはずです。 こうなると、DNSには登録されているがWINSには登録されていないケース、またはその逆などが発生し、 DNSもWINSも、片方だけでは役に立たないという状態になることもありました。 そういう状況の解決策として、(というか、とりあえず当面の問題に対する逃げ道といってもいいかもしれませんが) クライアント側で、本来不必要な方のネームサービスも検索するような動作が実装されました。 例えば、本来、ファイル・プリンタ共有ではNetBIOSの名前解決(ブロードキャスト,LMHOSTS,WINS)だけを使えばいいはずですが、 それでは解決できなかった場合、TCP/IPの名前解決(hosts,DNS)を使うという方法です。 つまり、5つもある名前解決の手段を、1つ目が失敗したら2つ目でトライし、それもだめなら3つ目、4つ目、5つ目と試していくことができるようになりました。 また、名前解決手段の優先順位を設定したり、特定の手段についてOn/Offができるような方法も用意されました。 例えば、WINSとブロードキャストのどちらを優先するか、LMHOSTSを参照するかしないか、DNSを使うかどうか、などです。 この辺の動作は、OSによっても、あるいは設定によっても変わってきてとても複雑です。 詳しくは参考URLをご覧ください。 そのうち、組織内ネットワークのTCP/IPへの移行が進み、NETBEUIはほとんど使われなくなりました。 インターネット/イントラネットも普及し、TCP/IPベースのアプリケーションも増えました。 そのため、NetBIOSの名前解決の仕組みを使わなくても、ファイル・プリンタ共有が行えるよう、 また、名前空間の二重管理を行わなくてもすむよう、DNSを全面的に採用したWindows2000が登場しました。 サーバ・クライアントも全てWindows2000以上にして、しかも、NetBIOSを使うような古いアプリケーションが皆無になれば、 WINSを完全に廃止しDNSだけで運用できるようになりました。 以降のOSもその路線を維持しています。 しかし、実際にはWindows9X系のクライアントがまだ残っていたり、NTサーバが残っていたり、 NetBIOSを使うような古いアプリケーションが残っていたりで、大規模な組織ほどWINSの全廃には至っていないのが現状かと思います。 つまり、それが今なおWINSを立ち上げる理由といえると思います。 ポイントとしては、 ・DNSとWINSはそもそも役割が違う。アプリケーションによって使い分けられてきた ・現在ではWINSを使わない運用も可能 ・古いものを引きずっていると、現在でもWINSを使わざるを得ない ということになるかと思います。

参考URL:
http://www.monyo.com/technical/windows/msnet/msnet2.html
aimer
質問者

お礼

ありがとうございましたm(_ _"m)ペコリ ほんとうに詳しくなかったらこんな回答でませんね! カンドウしました!!!! よーーーーーーーーーーーーーっくわかりました!!すごい!

その他の回答 (2)

回答No.2

MCSE(NT4,2000,2003)の者です。 懐かしい話題なので脇から口を挟んじゃいます。 No.1さん、ごめんなさい >98のホスト名、NetBIOS名はそれぞれどこに設定なのでしょうか? ネットワークコンピュータ右クリックプロパティ→識別情報タブの 「コンピュータ名」が「NetBIOS名」ですか? そうです。 >TCP/IP->を選択→プロパティのDNS設定タブのところの「ホスト名」、 これが「ホスト名」でしょうか? そうです。 >2000(というかXPで。)だと、マイコンピュータ右クリックの コンピュータ名タブ→「変更」ボタン→コンピュータ名というところが 「ホスト名」ですよね。NetBIOS名はいったいどこにあるのか。。 xpですとシステムのプロパティ-コンピュータ名タブ-変更-詳細 をみると"NetBIOSコンピュータ名"とかかれております。 ちなみにローカルで名前解決するときは コンピュータ名=NetBIOS名→lmhosts ホスト名→hosts に記述します。 そもそも、WindowsとUnix系のネットワークは 同じ用語、たとえばコンピュータ名やドメイン といったものがまったく違うものをさすことが多いです。 それが微妙に融合しつつあるので混乱しやすいです。 基本的にWindowsのコンピュータ名はNetBIOS、 名前解決もWINSと考えていた方がいいです。 WindowsでたてたDNSがWINSの働きもしている、 ぐらいの感覚の方が正しいです。 Windows2000,2003,XPのみの環境でも WINSとしてWindowsのDNSを指定しないと まともに動かないという環境さえあります。 *特殊な例かもしれませんが、2回ほど 体験してます。 Windows2000、XPになってコンピュータ名は NetBIOS、ホスト名の両方を兼ねるっていう 方向でいます。でもグローバルなインターネット の世界ではまだまだ十分ではありません。 Windowsの中で閉じていれば使える、と考えていいです。 ではBINDなどのDNSでWindowsの コンピュータ名をどう解決するのか? などという話題はかなり難しいですし 通常、そういったことはあまりしないので 問題にもなりませんが。

aimer
質問者

お礼

ありがとうございます!m(_ _"m)ペコリ >Windows2000,2003,XPのみの環境でも WINSとしてWindowsのDNSを指定しないと まともに動かないという環境さえあります。 *特殊な例かもしれませんが、2回ほど 体験してます。 たしかにそうですね!ワタシのカイシャの環境でも、DNS,WINS、同じサーバーを指定しています。 2000、XPはホスト名、NetBIOS両方かねる、ほんとそうですねー あやふやなところをハッキリおっしゃっていただいて ほんと たすかります!!!ありがとうございましたm(_ _"m)ペコリ

  • Toshi0230
  • ベストアンサー率51% (836/1635)
回答No.1

まず話の前提として、 WINS : PCのコンピュータ名(NetBIOS名)の名前解決をする DNS : PCのドメイン名の名前解決をする という基本的な役割の違いをまず把握しておいてください。 DNSでNetBIOS名の名前解決ができるようになっているのは、あくまで「オマケ」です。 > なんでWINSサーバもたちあげてる必要があるのか? この回答ですが、「NetBIOS名とドメイン名(のホスト名)が一致している保証がどこにもない」からです。 Windows2000以上だと、NetBIOS名とドメイン名がかなり密接に結合されていますが、Windows98だと、NetBIOS名とドメイン名を全く別の名前にすることが簡単にできます。 ですから、Windows2000が登場するまでは、Winodws系PCのコンピュータ名を確実に解決するには、WINSの方が都合が良かったわけです。(その当時はDDNSの機能を持つDNSサーバは一般的ではありませんでしたので、NetBIOS名を自動的に登録してくれるWINSは、管理の面でも便利でした) ところが、NetBIOS名というのは、名前に階層構造を持たせることができませんので、大規模なネットワークになると、一意な名前を付けるのは結構大変になります。 以下は私の想像ですが、この欠点を克服するためにMicrosoftは、Windows2000をリリースする際に、大規模ネットワークにも対応できるようにするために、その当時すでに階層構造を持っていたドメイン名の仕組みを、Windowsの世界に取り込んだわけです。 そのときに、過去の資産との互換性を取るためにWindows2000もWINSを参照できるようにしたため、現在のように名前解決をするのにDNS/WINSの双方が使えるような状態になっているわけです。

aimer
質問者

補足

ありがとうございます!詳しい方に回答していただいて本当にうれしいです!!!!O(≧▽≦)O お手数なんですが、回答のなかで、ひとつわからない部分があったのでおしえていただければ。。98のホスト名、NetBIOS名はそれぞれどこに設定なのでしょうか?ネットワークコンピュータ右クリックプロパティ→識別情報タブの「コンピュータ名」が「NetBIOS名」ですか?TCP/IP->を選択→プロパティのDNS設定タブのところの「ホスト名」、これが「ホスト名」でしょうか?2000(というかXPで。)だと、マイコンピュータ右クリックのコンピュータ名タブ→「変更」ボタン→コンピュータ名というところが「ホスト名」ですよね。NetBIOS名はいったいどこにあるのか。。

関連するQ&A

  • DNSとWINSについて

    おせわになっております。 DNSとWINSについて教えてください。 固定IP環境です。(そのIPに1対1で対応したホスト名あり) DNSとWINSサーバあります。 DNSとWINSはどちらも名前解決するものだというのはわかります。 (1)PCを起動したとき、WINS、DNS、どちらにも ホスト名を登録しにいくのでしょうか?(WINSだけにホスト名を登録しにいくものだとおもっていましたが・・) (2)WindowsはWINSで名前解決できるとおもいますが、UNIXはDNSじゃないと名前解決できないのでしょうか? (3)WINSは主にLAN内の名前解決をして、DNSは、インターネットのWEBのアドレスの解決をするのかなあとおもっていましたが http://www.atmarkit.co.jp/fwin2k/win2ktips/355netrepair/netrepair.html ↑のURLに 「 6.のDNS名の再登録は、例えばActive Directoryで利用しているDNSサーバなどに対して、自身のホスト名とIPアドレスの再登録(DNSの更新要求)を行う。IPアドレスがうまく DNSサーバに登録されていないような場合に、強制的に再登録を行うために実行する。・・・」と あったので、わからなくなりました。 DNSとWINSの違いがわからなくて大混乱しています。。

  • DNSとWINSの違い

    DNSとWINSの違いを教えて下さい。 また、WINSにはLMHOSTSというのがありますが、これは何なのでしょうか? ある企業ではDNSとWINS両サーバを立てて、運用しているところもあるそうです。DNSだけでネットワークが構築できると思うのですが、なぜ、WINSも構築しているのでしょうか? よろしくお願いします。

  • DNSとWINSについて(XPと9x系)

    お世話になります。 XPはTCP/IPのプロパティのところに「この接続をDNSに登録する」とあります。9X系はTCP/IPのプロパティには「DNSを使う」とはありますが、「DNSに登録する」という項目はありません。なので、思ったのですが、XP系はホスト名をDNSに自動的にホスト自ら登録しにいくということですよね?9X系はDNSには自ら登録しにはいかないのでしょうか?9X系はDNSに手動で登録してあげなければならないのでしょうか? WINSサーバがあれば、9Xは自らホスト名をWINSに登録しにいきますよね? どうか教えてください。

  • DNSとWINSの優先順位

    ネットワーク上にDNSサーバとWINSサーバ両方は同時に存在した場合、マシン名でIPアドレスを調べる時、どちらからの返事が優先ですか。

  • DNSがあればWINSはいらないのでは???

    お世話になっております。 DNSというのは、ドメイン名(okweb.jp等)とIPアドレスを関連つけるためのサーバで、 WINSというのは、コンピューター名とIPアドレスを 結びつけるためのサーバです。 ということなのですが、 http://www.atmarkit.co.jp/fwin2k/win2ktips/358disableupdate/disableupdate.html ↑このような記事をみると、 「Windows OSでは、起動時に自分自身のホスト名とIPアドレスをDNSサーバへ送信して、DNSのエントリを動的に更新するという機能を持っている。」 とか書いているし、じゃあ、DNSだけあればWINSはいらないんじゃないの?とおもいますが、 どうなのでしょうか? DNSとWINSの違いがいまいちわかりません。。。

  • 社内に何故DNSとWINSの両方が存在するのか?

    今うちの社内には、固有のプライベートIPが振られたDNSとWINSがあります。 で、なぜかファイルサーバやプリンタサーバはWINSに登録されていますが、 DNSには恐らく登録されておりません。 無線LANルータの初期設定時に、ルータが利用するDNSの設定もするかと思いますが、 DNSサーバにこれらプリンタサーバ等の情報が登録されていれば、IP直叩きではなく、 名前でアクセスできるかと思うのですが。。。 正直DNSをもっているのにWINSを使う意味が分かりません。 分かる方!お願い致します!!

  • IPアドレスに対するNetbiosネームを解決するサービスについて

    IPアドレスに対するNetbiosネームを解決するサービスを2つ選択してください という問題に対して 答えはWINSとnmbdとある DNSも選択肢に含まれているになぜ答えではないのでしょうか? あるサイトに「DNSはNetBIOS名をDNS名として扱い、DNSサーバに問い合わせます。」とあるので正確にはNetBIOS名で問い合わせていないので解答でないと私は考えています。 回答のほどよろしくお願い致します。

  • Windows XPでDNSサーバの設定

    windowsXPでは、TCP/IPの詳細設定で「DNSサーバー アドレス(使用順)(N):」の欄に幾つかのDNSサーバを指定できるかと思います。 「この欄に、1台だけDNSサーバーを記入するとうまく名前解決できる」 という状況にありましたが、 「さらに3台追記したら名前解決ができなくなった」 という状況に陥っております。 「優先DNSサーバーは変わってないので名前解決できるのでは?」と思うのですが、代替DNSサーバーが増えたことにより名前解決できなくなる理由は何が考えられますでしょうか? 状況: DNSサーバーが1台だけの場合、ホスト名でping出すと、正しいアドレスに問い合わせ、返信も返ってくる。 DNSサーバーを4台に増やすと、ホスト名でping出すと、そのホストがいない 旨のメッセージで終わってしまう。  その際、そのホスト名でnslookupすると、優先DNSサーバから正しいIPアドレスが返ってくる。  (優先)DNSサーバを正しく理解し、DNSサーバからも正しい返答が返せるのに、pingで 名前からIPアドレスがなぜわからないのかが理解できない。 -- よろしくお願いいたします。

  • DNS動作について

    DNSですが 1 つのドメインの A レコードに対して 複数の IP アドレスを対応とどういう動きをしますか? A aaaaaaa.jp 192.168.1.1 (IP1) A aaaaaaa.jp 192.168.1.2 (IP2) ・タイミングでIP1 IP2をランダムでひく ・優先があり常に優先IP1を常に引き応答がない場合IP2をひく

  • WINSサーバーの登録内容取得方法

    WindowsNT4.0でWINSサーバーを運用しています。最近、WINSサーバーの調子が悪く名前の変換ができない場合があり困っています。そこで、WINSサーバーの動作状況を確かめるために、WINSサーバー上に登録されているIPとNetBIOS名の一覧を取得したいのですが、いい方法はありませんか?