• ベストアンサー

Windowsのファイル共有(SMBとCIFS)の違いについて

ファイル共有にはPort139を使用するSMBとPort455を使用するCIFSがあるようなのですが、どちらが選ばれるかはどのように決まるのでしょうか。 私が調べたところ、137や138ポートを使用して一覧を取得したり、名前解決(netbios名前解決)をすると、Port139でSMBを使用して、DNSを使用して名前解決をするとPort445を使用するというような感じでした。まず、この理解は正しいのでしょうか。 そして、知りたいのは、ドメインが組まれている環境で、DNSが稼動しており、DNSで名前解決が出来る状態で、「マイネットワーク」を開き、アドレスの箇所に 「\\netbiosname」と入れるのと「\\0.0.0.0」のようにIPアドレスを直接打ち込むのとではどちらが、どちらのプロトコルを使用するのでしょうか。 回答よろしくお願いいたします

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

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

どの方法であっても2000以降同士なら両方です 両方試行し455が繋がったら139は切断します

参考URL:
http://support.microsoft.com/kb/204279,http://www.monyo.com/technical/windows/50.html
noname#199683
質問者

お礼

とてもわかりやすい内容のHPを紹介いただきありがとうございました。

その他の回答 (2)

  • bunjii
  • ベストアンサー率43% (3589/8249)
回答No.3

一般的にSMBで名前を参照するのはNetBIOS名であり、同一セグメント内のみアクセス対象となります。 IPアドレスで接続先を指定する場合はルーターを超えてもアクセス可能な状態にしなければなりません。 LANを複数セグメントに区切るためにはローカルルーターを設置して、アクセスのコントロールを行います。 ローカルルーターでパケットフィルタリングを行うとき誤った設定をするとファイルサーバーにアクセス出来なくなることがありますので、注意が必要です。 DNSに登録したホスト名を参照することはIPアドレスを直接参照したことと等価になります。 DNSに登録しなくてもクライアントのhostsファイルにIPアドレスとホスト名の組合わせを記載することで同等の動作となります。

  • bunjii
  • ベストアンサー率43% (3589/8249)
回答No.1

「基礎から学ぶWindowsネットワーク」で詳しい説明があります。 http://www.atmarkit.co.jp/fwin2k/network/baswinlan020/baswinlan020_01.html http://www.atmarkit.co.jp/fwin2k/network/baswinlan021/baswinlan021_01.html http://www.atmarkit.co.jp/fwin2k/network/baswinlan022/baswinlan022_01.html NetBIOS名でアクセスするのはSMBということになります。 IPアドレスを指定してアクセスする場合はNetBIOS名を参照しませんのでCIFSになると思います。 一般的にはLAN内のクライアント端末(PC等)を全てDNSで名前解決をしません。クライアント端末同士でP2Pのファイル共有をするにはNetBIOS名を利用して相互アクセスします。(IPアドレスとコンピュータ名では覚え易さが違いますし、DHCPでIPアドレスを取得すると何時も同じアドレスになるとは限りません) サーバーのみをDNSに登録すればクライアント端末からDNS名でCIFSを利用してアクセス出来ます。(IPアドレスは固定とし、DHCPを使いません) 因に、Windowsネットワークのドメインコントローラで言う”ドメイン”とDNSで言う"ドメイン”は全く違うものです。

noname#199683
質問者

補足

回答ありがとうございます。 説明が足りなかったようです。今使用している環境ではサーバーは固定IPを使用しており、固定IPを使用しているPCはDNSに登録されそちらで名前解決が可能になっています。クライアントとサーバーはセグメントが違うネットワークに存在しています。 また、クライアントはWindowsドメインに参加していますが、サーバーは参加しておりません。 よって、クライアントからサーバーへのアクセスでは名前解決にWINSは使用できないと思っています。よって名前解決はDNSで行っていると考えたのです。 このような場合に「\\0.0.0.0」のように指定するのと「\\DNSに登録されている名前」としたことでSMB、CIFSの違いが出るのかと思ったのです。 今、自分で書いていて、SMBが使用されることは無いのではないかと思ってきました・・・ ご意見お願いいたします。

関連するQ&A