Поделиться через


Прямое размещение SMB через TCP/IP

В этой статье описывается, как направлять блок сообщений сервера узла (SMB) по протоколу TCP/IP.

Исходный номер базы знаний: 204279

Итоги

Windows поддерживает трафик обмена файлами и принтерами с помощью протокола SMB, размещенного непосредственно на TCP. SMB 1.0 и более старый трафик CIFS поддерживает протокол NetBIOS по протоколу TCP (NBT), поддерживаемый транспортом UDP, но начиная с Windows Vista и Windows Server 2008 с SMB 2.0.2, требуется TCP/IP через порт 445. Удаление транспорта NetBIOS имеет несколько преимуществ, в том числе:

  • Упрощение транспорта трафика SMB.
  • Удаление WINS и NetBIOS широковещательной трансляции в качестве средства разрешения имен.
  • Стандартизация разрешения имен в DNS для общего доступа к файлам и принтерам.
  • Удаление менее безопасного протокола NetBIOS в качестве метода атаки

Если включены и прямые размещенные, и интерфейсы NBT, оба метода выполняются одновременно, и используется первый ответ. Этот механизм позволяет Windows правильно работать с операционными системами, которые не поддерживают прямой размещение трафика SMB.

Дополнительная информация

NetBIOS по протоколу TCP традиционно использует следующие порты:

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

Прямой размещенный трафик NetBIOS без SMB использует порт 445 (TCP). В этой ситуации заголовок с четырьмя байтами предшествует трафику SMB. Первый байт этого заголовка всегда 0x00, а следующие 3 байта — длина оставшихся данных.

Чтобы отключить NetBIOS по протоколу TCP/IP, выполните следующие действия. Эта процедура заставляет весь трафик SMB напрямую размещать трафик SMB. Обратите внимание на реализацию этого параметра, так как компьютер под управлением Windows не может взаимодействовать с более ранними операционными системами с помощью трафика SMB:

  1. Выберите "Пуск", наведите указатель на параметры и выберите "Сеть" и "Подключение к телефону".
  2. Щелкните правой кнопкой мыши подключение к локальной области и выберите пункт "Свойства".
  3. Выберите протокол TCP/IP и выберите "Свойства".
  4. Выберите Дополнительно.
  5. Перейдите на вкладку WINS и выберите "Отключить NetBIOS" по протоколу TCP/IP.

Вы также можете отключить NetBIOS по протоколу TCP/IP с помощью DHCP-сервера, который имеет параметр, настроенный для конкретного поставщика Майкрософт для кода 1, отключить NetBIOS по протоколу TCP/IP. Если этот параметр задан, значение 2 отключает NBT. Дополнительные сведения об использовании этого метода см. в файле справки DHCP-сервера в Windows.

Чтобы определить, включена ли netBIOS через TCP/IP на компьютере под управлением Windows, запустите или net config server выполните net config redirector команду в командной строке. В выходных данных показаны привязки для устройства NetbiosSmb (который является транспортом netBIOS меньше) и для устройства NetBT_Tcpip (который является NetBIOS через транспорт TCP). Например, в следующем примере выходных данных показаны как прямой размещенный, так и транспорт 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 — это глобальное устройство и не привязано к каждому адаптеру. Таким образом, прямой размещенный SMB не может быть отключен в Windows, если вы не отключите общий доступ к файлам и принтерам для Microsoft Networks полностью.