Diferença entre NetBIOS e SMB

22

Também estou tentando descobrir a relação entre o netbios-ssn normalmente em execução na porta 139 e o microsoft-ds em execução na porta 445.

Entendo que anteriormente a Porta 139 era mais popular com máquinas mais antigas e o NetBIOS usando o protocolo SMB é usado para compartilhamento de arquivos / impressoras etc. Atualmente, é mais provável que o microsoft-ds seja executado na Porta 445 em conjunto com a Porta 139 e o serviço netbios-ssn.

Minhas perguntas são no entanto.

  • Os dois serviços são necessários / oferecem benefícios adicionais ao executar um único serviço? Pelo que entendi, os sistemas Linux não executam a porta 445, em vez disso, usam o Samba na porta 139. Existe algo que eu possa fazer em uma máquina Windows com essas duas portas que não posso em uma máquina Linux?

  • Se cada serviço tem seu próprio papel distinto, que informações cada um deles fornece? Quais informações podem ser obtidas no microsoft-ds e o que pode ser obtido no netbios-ssn?

  • Estou correto no relacionamento entre SMB e NetBIOS? Ou eles são na verdade dois protocolos separados, apenas relacionados pelo fato de atingirem um objetivo semelhante? Um depende do outro?

Peleus
fonte
Eu adicionei uma resposta que espero responder às suas perguntas, embora eu ainda esteja trabalhando para acertar a composição.
Thor

Respostas:

35

Vamos tentar fazer isso como uma jornada em que você e eu aprendemos como isso funciona!

1. Os dois serviços são necessários? Caso contrário, há benefícios em executar um único serviço?

Dependendo do sistema operacional e do ambiente , os dois serviços não são necessários .

SMB (bloco de mensagens do servidor)

O Server Message Block , cujo dialeto moderno é conhecido como Common Internet File System , opera como um protocolo de rede da camada de aplicativos usado principalmente para fornecer acesso compartilhado a arquivos, impressoras, portas seriais e comunicações diversas entre os nós da rede. ...

O protocolo Server Message Block pode ser executado sobre as camadas de rede Session (e inferiores) de várias maneiras:

  • diretamente sobre TCP, porta 445
  • via API NetBIOS, que por sua vez pode ser executada em vários transportes:
    • nas portas UDP 137, 138 e TCP 137, 139 - consulte NetBIOS sobre TCP / IP
    • em vários protocolos herdados, como NBF (incorretamente referido como NetBEUI).

Citação : Artigo da WikiPedia sobre Server Message Block

No Windows, o SMB pode executar diretamente sobre TCP / IP sem a necessidade de NetBIOS sobre TCP / IP . Isso usará, como você indica, a porta 445.

De um modo geral, em outros sistemas, você encontrará serviços e aplicativos usando o port 139. Isso, basicamente, significa que o SMB está sendo executado com o NetBIOS sobre TCP / IP , onde, em pilha, o SMB está no topo do NetBIOS, se você quiser imaginá-lo com o modelo OSI.

Aqui está uma visualização de Richard Sharpe, do samba.org.

Modelo OSI mostrando SMB e NetBIOS

Aqui está uma versão ligeiramente aprimorada para ilustrar como você pode imaginar isso em um sistema baseado no Windows.

Modelo OSI com desenho incrível, indicando o desvio do NetBIOS

1.a Se ambos forem necessários, existem benefícios?

O único "benefício" - não é realmente um benefício, é um requisito - é que, com o SMB sobre NBT (NetBIOS sobre TCP / IP), você poderá se comunicar com uma grande quantidade de implementações de SMB .

2. Que informação / serviço fornece netbios-ssne microsoft-dsfornece?

* Meu palpite rápido é que, embora netbios-ssnsimplesmente forneça a API NetBIOS, incluindo NBT (NetBIOS sobre TCP / IP) via porta 139. Por outro lado, microsoft-dsfornece a hospedagem direta de SMB via porta 445. *

Com o Windows 2000, a Microsoft achou que isso poderia ser melhorado. Eles adicionaram a porta 445 para o mesmo serviço. Na porta 445, o SMB é executado diretamente no TCP. A única diferença é que o cliente ignora a sessão NetBIOS (economiza uma viagem de ida e volta) e depois negocia, autentica, monta etc.

Verifique as propriedades da sua placa de rede. Em algum lugar nas Configurações avançadas de IP, há uma caixa de seleção "Ativar NetBIOS sobre TCP". Ative-o e seu computador usa a porta 139. Desative a opção e o sistema deseja usar 445.

...

  • Porta 139: SMB -> NetBIOS -> TCP
  • Porta 445: SMB -> .... -> TCP

Fonte : packethunter na Wireshark - Perguntas e respostas

3. Qual é o relacionamento entre SMB e NetBIOS; eles são separados, um depende do outro?

O SMB depende do NetBIOS para comunicação com dispositivos que não oferecem suporte à hospedagem direta de SMB por TCP / IP .

O NetBIOS é completamente independente do SMB . É uma API que SMB e outras tecnologias podem usar, portanto, o NetBIOS não depende de SMB.

NetBIOS (Sistema Básico de Rede)

... Fornece serviços relacionados à camada de sessão do modelo OSI, permitindo que aplicativos em computadores separados se comuniquem através de uma rede local . Como estritamente uma API, o NetBIOS não é um protocolo de rede. ...

... Nas redes modernas, o NetBIOS normalmente executa TCP / IP através do protocolo NetBIOS over TCP / IP (NBT) . Isso resulta em cada computador na rede tendo um endereço IP e um nome NetBIOS correspondentes a um nome de host (possivelmente diferente). ...

Citação : Artigo da WikiPedia sobre NetBIOS

Como você pode ver, o relacionamento seria Application -> SMB -> NetBIOS -> (TCP/IP, others).

Thor
fonte
2
Aqui está um post explicando o que os aplicativos ou serviços ainda requerem NetBIOS: blogs.msmvps.com/acefekay/2013/03/02/do-i-need-netbios
CMCDragonkai