Разница между NetBIOS и SMB

25

Я также пытаюсь выяснить связь между netbios-ssn, обычно работающим на порте 139, и microsoft-ds, работающим на порте 445.

Я понимаю, что ранее порт 139 был более популярен на старых машинах, а NetBIOS, использующий протокол SMB, используется для обмена файлами / принтеров и т. Д. В наши дни мы с большей вероятностью увидим, как microsoft-ds работает на порте 445 в сочетании с портом 139 и Сервис netbios-ssn.

Мои вопросы, однако.

  • Нужны ли обе службы / предоставляют дополнительные преимущества по сравнению с одной службой? Насколько я понимаю, системы Linux не запускают порт 445, а используют Samba на 139 порту. Могу ли я что-нибудь сделать на компьютере с Windows с этими двумя портами, чего не могу сделать на компьютере с Linux?

  • Если каждая служба имеет свою особую роль, какую информацию предоставляет каждая из них? Какую информацию можно получить от microsoft-ds и что можно получить от netbios-ssn?

  • Правильно ли я отношусь к отношениям между SMB и NetBIOS? Или они на самом деле являются двумя отдельными протоколами, связанными только тем фактом, что они достигают сходной цели? Один полагается на другого?

Пелей
источник
Я добавил ответ, который, надеюсь, ответит на ваши вопросы, хотя я все еще работаю над тем, чтобы составление было совершенно правильным.
Тор

Ответы:

37

Давайте попробуем пройти через это как путешествие, в котором мы с тобой оба узнаем, как это работает!

1. Нужны ли обе услуги? Если нет, есть ли какие-либо преимущества по сравнению с одним сервисом?

В зависимости от вашей операционной системы и среды , обе службы не нужны .

SMB (блок сообщений сервера)

Блок сообщений сервера , современный диалект которого известен как Общая файловая система Интернета , работает как сетевой протокол прикладного уровня, в основном используемый для предоставления общего доступа к файлам, принтерам, последовательным портам и различным связям между узлами в сети. ...

Протокол блокировки сообщений сервера может работать поверх сеансового (и нижнего) сетевых уровней несколькими способами:

  • непосредственно через TCP, порт 445
  • через API NetBIOS, который, в свою очередь, может работать на нескольких транспортных средствах:
    • на UDP-портах 137, 138 и TCP-портах 137, 139 - см. NetBIOS через TCP / IP
    • на нескольких устаревших протоколах, таких как NBF (неправильно именуемый NetBEUI).

Цитата : WikiPedia статья о блоке сообщений сервера

В Windows SMB может работать напрямую через TCP / IP без необходимости использования NetBIOS через TCP / IP . Это будет использовать, как вы указали, порт 445.

Вообще говоря, в других системах вы найдете службы и приложения, использующие порт 139. В сущности, это означает, что SMB работает с NetBIOS через TCP / IP , где по стеку SMB находится на вершине NetBIOS, если вы хотите представить его с моделью OSI.

Вот визуализация от Ричарда Шарпа, от samba.org.

Модель OSI, показывающая SMB и NetBIOS

Вот слегка измененная версия, чтобы проиллюстрировать, как вы можете представить это в системе на базе Windows.

Модель OSI с потрясающим рисунком, указывающим на пропуск NetBIOS

1.a Если они оба необходимы, есть ли преимущества?

Единственное «преимущество» - это не столько преимущество, сколько требование - это то, что с SMB через NBT (NetBIOS через TCP / IP) вы на самом деле сможете общаться с большим количеством реализаций SMB ,

2. Какую информацию / услугу делает netbios-ssnи microsoft-dsпредоставляет?

* Я быстро догадываюсь, что пока netbios-ssnпросто предоставляет API NetBIOS, включая NBT (NetBIOS через TCP / IP) через порт 139. С другой стороны, microsoft-dsобеспечивает прямой хостинг в SMB через порт 445. *

С Windows 2000 Microsoft чувствовала, что это можно улучшить. Они добавили порт 445 для того же сервиса. На порту 445 SMB работает напрямую через TCP. Единственное отличие состоит в том, что клиент пропускает сеанс NetBIOS (сохраняет один прием), затем выполняет согласование, аутентификацию, монтирование и т. Д.

Проверьте свойства вашей сетевой карты. Где-то в расширенных настройках IP есть флажок «Включить NetBIOS через TCP». Активируйте его, и ваш компьютер использует порт 139. Отключите эту опцию, и система захочет использовать 445.

...

  • Порт 139: SMB -> NetBIOS -> TCP
  • Порт 445: SMB -> .... -> TCP

Источник : packethunter в Wireshark Q & A

3. Какова связь между SMB и NetBIOS; они раздельные, один полагается на другой?

SMB использует NetBIOS для связи с устройствами, которые не поддерживают прямой хостинг SMB через TCP / IP .

NetBIOS полностью независим от SMB . Это API, который могут использовать SMB и другие технологии, поэтому NetBIOS не зависит от SMB.

NetBIOS (базовая сетевая система)

... Он предоставляет услуги, связанные с уровнем сеанса модели OSI, позволяя приложениям на отдельных компьютерах обмениваться данными по локальной сети . Будучи строго API, NetBIOS не является сетевым протоколом. ...

... В современных сетях NetBIOS обычно работает через TCP / IP через протокол NetBIOS через TCP / IP (NBT) . Это приводит к тому, что каждый компьютер в сети имеет как IP-адрес, так и имя NetBIOS, соответствующее (возможно, другому) имени хоста. ...

Цитата : WikiPedia статья о NetBIOS

Как видите, отношения будут Application -> SMB -> NetBIOS -> (TCP/IP, others).

Тор
источник
2
Вот запись в блоге, объясняющая, какие приложения или сервисы все еще требуют NetBIOS: blogs.msmvps.com/acefekay/2013/03/02/do-i-need-netbios
CMCDragonkai