TCP/IP 経由の直接ホスト SMB

この記事では、ホスト サーバー メッセージ ブロック (SMB) を TCP/IP 経由で転送する方法について説明します。

適用対象: Windows Server 2012 R2
元の KB 番号: 204279

概要

Windows では、TCP で直接ホストされている SMB プロトコルを使用して、ファイルとプリンターの共有トラフィックをサポートしています。 SMB 1.0 以前の CIFS トラフィックでは、TCP 経由の NetBIOS (NBT) プロトコルがサポートされましたが、Windows Vista および WINDOWS Server 2008 (SMB 2.0.2 以降) では、ポート 445 経由の TCP/IP が必要です。 NetBIOS トランスポートの削除には、次のようないくつかの利点があります。

  • SMB トラフィックの転送を簡略化します。
  • 名前解決の手段として WINS と NetBIOS ブロードキャストを削除する。
  • ファイルとプリンターの共有のための DNS での名前解決の標準化。
  • 攻撃方法としての安全性の低い NetBIOS プロトコルの削除

直接ホステッド インターフェイスと NBT インターフェイスの両方が有効になっている場合、両方のメソッドが同時に試行され、最初に応答が使用されます。 このメカニズムにより、SMB トラフィックの直接ホスティングをサポートしていないオペレーティング システムで Windows を適切に機能できます。

詳細

NETBIOS over TCP は、従来、次のポートを使用します。

  • NBName: 137/UDP
  • NBName: 137/TCP
  • NBDatagram: 138/UDP
  • NBSession: 139/TCP

直接ホストされた NetBIOS レス SMB トラフィックでは、ポート 445 (TCP) が使用されます。 この状況では、SMB トラフィックの前に 4 バイトのヘッダーが置き込まれます。 このヘッダーの最初のバイトは常に0x00され、次の 3 バイトは残りのデータの長さです。

TCP/IP 経由で NetBIOS を無効にするには、次の手順を使用します。 この手順では、すべての SMB トラフィックを強制的にホストされた SMB トラフィックに転送します。 Windows ベースのコンピューターが SMB トラフィックを使用して以前のオペレーティング システムと通信できなくなるため、この設定の実装に注意してください。

  1. [ スタート] を選択し 、[設定] をポイントし、[ ネットワークとダイヤルアップ接続] を選択します。
  2. [ローカル エリア接続] を右クリックし、[プロパティ] を選択します。
  3. [ インターネット プロトコル (TCP/IP)] を選択し、[ プロパティ] を選択します。
  4. [詳細設定] を選択します。
  5. [ WINS ] タブを選択し、[ TCP/IP 経由で NetBIOS を無効にする] を選択します。

コード 1 に Microsoft ベンダー固有のオプションが構成されている DHCP サーバーを使用して、TCP/IP 経由で NetBIOS を無効にすることもできます。TCP/IP 経由で NetBIOS を無効にします。 このオプションを 2 の値に設定すると、NBT が無効になります。 この方法の使用方法の詳細については、Windows の DHCP サーバー ヘルプ ファイルを参照してください。

Windows ベースのコンピューターで TCP/IP 経由の NetBIOS が有効になっているかどうかを判断するには、コマンド プロンプトで または net config server コマンドを実行net config redirectorします。 出力には、NetbiosSmb デバイス (NetBIOS レス トランスポート) とNetBT_Tcpip デバイス (TCP トランスポート経由の NetBIOS) のバインドが表示されます。 たとえば、次の出力例は、アダプターにバインドされた直接ホスト型トランスポートと NBT トランスポートの両方を示しています。

Workstation active on
NetbiosSmb (000000000000)
NetBT_Tcpip_{610E2A3A-16C7-4E66-A11D-A483A5468C10} (02004C4F4F50)
NetBT_Tcpip_{CAF8956D-99FB-46E3-B04B-D4BB1AE93982} (009027CED4C2)

NetBT_Tcpipは、各アダプターに個別にバインドされます。 バインドされているネットワーク アダプターごとに、NetBT_Tcpipのインスタンスが表示されます。 NetbiosSmb はグローバル デバイスであり、アダプターごとにバインドされません。 そのため、Microsoft ネットワークのファイルとプリンターの共有を完全に無効にしない限り、Windows では直接ホストされた SMB を無効にすることはできません。