NetBIOS API, NetBEUI, SMB/CIFDS, SAMBA ovvero Come condividere le risorse su una rete mista Unix Windows Il concetto di Workgroup



Documenti analoghi
Maschere di sottorete a lunghezza variabile

TECNOLOGIE E PROGETTAZIONE DI SISTEMI INFORMATICI E DI TELECOMUNICAZIONI

Reti di Telecomunicazione Lezione 6

Capitolo 5: NetBIOS over TCP/IP

SaMBa protocolli - browsing - subnet maggio 2005

Protocolli di Comunicazione

Reti di Telecomunicazioni Mobile IP Mobile IP Internet Internet Protocol header IPv4 router host indirizzi IP, DNS URL indirizzo di rete

Active Directory. Installatore LAN. Progetto per le classi V del corso di Informatica

CORSO DI RETI SSIS. Lezione n.2. 2 Novembre 2005 Laura Ricci

Reti di Telecomunicazione Lezione 7

MODELLO CLIENT/SERVER. Gianluca Daino Dipartimento di Ingegneria dell Informazione Università degli Studi di Siena

ARP (Address Resolution Protocol)

Dal protocollo IP ai livelli superiori

HORIZON SQL CONFIGURAZIONE DI RETE

Reti di Calcolatori. Il software

Esercitazione su Windows. Introduzione al calcolatore Introduzione a Windows

Interconnessione di reti

Reti di Calcolatori. Il Livello delle Applicazioni

Studi di Settore. Nota Operativa 22/4/2013

Con accesso remoto s'intende la possibilità di accedere ad uno o più Personal Computer con un modem ed una linea telefonica.

Software di gestione della stampante

Cenni di programmazione distribuita in C++ Mauro Piccolo

Transmission Control Protocol

Protocollo IP e collegati

Introduzione alle applicazioni di rete

GE 032 DESCRIZIONE RETI GEOGRAFICHE PER MX 650

FPf per Windows 3.1. Guida all uso

Reti. Reti. IPv4: concetti fondamentali. arp (address resolution protocol) Architettura a livelli (modello OSI)

Reti di Calcolatori

Inizializzazione degli Host. BOOTP e DHCP

Sistemi avanzati di gestione dei Sistemi Informativi

Mac Application Manager 1.3 (SOLO PER TIGER)

Reti di calcolatori. Reti di calcolatori

filrbox Guida all uso dell interfaccia WEB Pag. 1 di 44

NOTE TECNICHE DI CONFIGURAZIONE. Giugno 2009

Corso di recupero di sistemi Lezione 8

1. RETI INFORMATICHE CORSO DI LAUREA IN INGEGNERIA INFORMATICA SPECIFICHE DI PROGETTO A.A. 2013/ Lato client

LaCie Ethernet Disk mini Domande frequenti (FAQ)

InterNet: rete di reti

2.5. L'indirizzo IP identifica il computer di origine, il numero di porta invece identifica il processo di origine.

Stampe in rete Implementazione corretta

Topologia delle reti. Rete Multipoint: ogni nodo è connesso agli altri tramite nodi intermedi (rete gerarchica).

Creare una Rete Locale Lezione n. 1

Configurazione di Outlook Express

Configurazione del servizio Dynamic DNS. Questa procedura ti guiderà durante i 4 passi necessari alla messa in funzione del servizio.

Approfondimenti. Contenuti

BACKUP APPLIANCE. User guide Rev 1.0

1) GESTIONE DELLE POSTAZIONI REMOTE

Indirizzi Internet e. I livelli di trasporto delle informazioni. Comunicazione e naming in Internet

Schema Tipologia a Stella

Antonio Mattioli Seminario 5/12/2006. Windows Single Sign-on

Manuale Amministratore Legalmail Enterprise. Manuale ad uso degli Amministratori del Servizio Legalmail Enterprise

Firewall e Abilitazioni porte (Port Forwarding)

BREVE GUIDA ALL ATTIVAZIONE DEL SERVIZIO DDNS PER DVR SERIE TMX

SISTEMI OPERATIVI DISTRIBUITI

Istruzioni di installazione di IBM SPSS Modeler Text Analytics (licenza per sito)

ICARO Terminal Server per Aprile

File system II. Sistemi Operativi Lez. 20

Procedura SMS. Manuale Utente

INTERNET e RETI di CALCOLATORI A.A. 2011/2012 Capitolo 4 DHCP Dynamic Host Configuration Protocol Fausto Marcantoni fausto.marcantoni@unicam.

Linux User Group Cremona CORSO RETI

CONFIGURARE SAMBA 3 SU SUSE LINUX 9.1/9.2

Architettura del. Sintesi dei livelli di rete. Livelli di trasporto e inferiori (Livelli 1-4)

Corso di Amministrazione di Reti A.A. 2002/2003

RETI E SISTEMI INFORMATIVI Domain Name System. Prof. Andrea Borghesan

ARCHIVIA PLUS VERSIONE SQL SERVER

CAPITOLO 1. Introduzione alle reti LAN

Aggiornamenti Sistema Addendum per l utente

1. Il Client Skype for Business

Gestione degli indirizzi

Corso di Sistemi di Elaborazione delle informazioni. Reti di calcolatori 3 a lezione a.a. 2009/2010 Francesco Fontanella

Il client deve stampare tutti gli eventuali errori che si possono verificare durante l esecuzione.

CERTIFICATI DIGITALI. Manuale Utente

Hardware delle reti LAN

GRUPPO CAMBIELLI. Posta elettronica (Webmail) Consigli di utilizzo

Comunicazione tra Computer. Protocolli. Astrazione di Sottosistema di Comunicazione. Modello di un Sottosistema di Comunicazione

2 Configurazione lato Router

ATOLLO BACKUP GUIDA INSTALLAZIONE E CONFIGURAZIONE

Manuale Utente MyFastPage

Consiglio regionale della Toscana. Regole per il corretto funzionamento della posta elettronica

MyFRITZ!, Dynamic DNS e Accesso Remoto

Guida alla registrazione on-line di un DataLogger

Gestione degli indirizzi

Introduzione ai protocolli di rete Il protocollo NetBEUI Il protocollo AppleTalk Il protocollo DLC Il protocollo NWLink Il protocollo TCP/IP

Capitolo 4 Pianificazione e Sviluppo di Web Part

Manuale NetSupport v Liceo G. Cotta Marco Bolzon

BMSO1001. Virtual Configurator. Istruzioni d uso 02/10-01 PC

GSP+ Customer Relationship Manager V 7.0. Manuale utente

SUPPORTO TECNICO AI PRODOTTI:

GESGOLF SMS ONLINE. Manuale per l utente

SIMULAZIONE PROVA SCRITTA ESAME DI STATO. PER LA DISCIPLINA di SISTEMI

INDIRIZZI IP AUTORIZZATI

Introduzione alla consultazione dei log tramite IceWarp Log Analyzer

FRANCESCO MARINO - TELECOMUNICAZIONI

Digital Persona Client/Server

Sistemi Operativi di Rete. Sistemi Operativi di rete. Sistemi Operativi di rete

Sistemi di Antivirus CEFRIEL. Politecnico di Milano. Consorzio per la Formazione e la Ricerca in Ingegneria dell Informazione. Politecnico di Milano

Installazione del software Fiery per Windows e Macintosh

FtpZone Guida all uso

Corso di Sistemi di Elaborazione delle informazioni. Reti di calcolatori 2 a lezione a.a. 2009/2010 Francesco Fontanella

Transcript:

NetBIOS API, NetBEUI, SMB/CIFDS, SAMBA ovvero Come condividere le risorse su una rete mista Unix Windows Il concetto di Workgroup Workgroup e SMB La condivisione delle risorse puo avvenire tramite uno schema client server (ad esempio il file system distribuito CODA) oppure su base piu paritaria, simile a qunto avviene nelle reti Peer to Peer. Il Workgroup di Windows e uno di questi sistemi, e ogni nodo puo essere sia client che server nella condivisione delle proprie cartelle. E possibile accedere ad una cartella condivisa avendo uno user ID e una password (ma anche senza, se il possessore della cartella decide di non fare controlli), anche se non esiste un servizio centralizzato per l accesso. Su ogni host Windows c e un elenco di utenti, e il possessore della cartella puo decidere di condividerla con un sottoinsieme di tali utenti. Con il meccanismo del Workgroup e possibile simulare il comportamento di un server concentrando le directory da condividere su un unico computer. Questa situazione, se il computer che ospita le risorse condivise non e abbastanza potente e il sistema operativo sicuro (cioe un vero server), puo portare a problemi, ad esempio la perdita dei dati per errore, o rallentamenti nell accesso. Per quanto riguarda il SO, invece di acquistare una licenza piu costosa, si puo usare un sistema Linux, che si interfaccia con i protocolli usati nei Workgroup di Windows. Le operazioni di condivisione su Windows avvengono tramite il protocollo SMB (Short Message Group), di cui Linux (ma non solo, anche Mac, OpenVMS e altri SO) possiede una versione che ha il nome SAMBA (SaMBa) Samba è un insieme di strumenti, realizzati da Andrew Tridgell per le piattaforme Unix e GNU/Linux, che permettono ad una macchina GNU/Linux di accedere alle risorse condivise di un elaboratore MSWindows ma anche mettere a disposizione proprie risorse a clienti MSWindows o GNU/Linux. SMB e' stato creato da IBM a metà dagli anni 80 e successivamente adottato e modificato dalla Microsoft. La sua implementazione è presente in quasi tutti i sistemi Windows. Originariamente SMB si appoggiava alle API NetBios, da Windows 2000/XP esiste anche il supporto diretto su TCP/IP chiamato Direct hosted. Vediamo comunque anche la prima versione, per parlare dei protocolli NetBios e NetBEUI, e della versione NetBios over IP. Nella figura 1 si vedono i livelli a cui si posiziona SMB e i protocolli su cui si basa. Sotto a SMB si può trovare NetBEUI oppure NetBIOS (quest'ultimo a sua volta su un protocollo di trasporto quale il TCP/IP o l'ipx/spx di Novell), oppure direttamente il protocollo Internet (TCP/IP). Vediamo ora un po' di definizioni per non perderci.

Definizioni SMB/CIFS Server Message Block (SMB) Protocol (introdotto da IBM metà '80) Microsoft (anni '90) Common Internet File System, un derivato di SMB che nelle sue recenti versioni può anche essere trasportato direttamente dal TCP/IP, senza layer NetBios intermedio. Legato al supporto NetBIOS fino a Windows 2000, successivamente anche direttamente su TCP/IP Protocolli di contorno per risoluzione nomi, ricerca servizi, autenticazione, autorizzazione Almeno 6 versioni differenti introdotte in varie versioni NetBios NetBios (Network Basic Input/Output System) e un insieme di API, quindi e interfaccia di programmazione, prodotta per IBM nel 1983/84 per permettere a delle applicazioni di comunicare scambiandosi file e messaggi sui PC network del tempo, che avevano un basso numero di host e non prevedevano ancora l'uso del protocollo IP (già presente ma usato più su WAN che in LAN) per le comunicazioni di rete. Essendo un API ha bisogno di un supporto per il trasporto su rete. NETBEUI Con l'introduzione di Token Ring, IBM nel 1985 definì delle estensioni a NetBios (NetBIOS Extended User Interface NetBEUI, che e' invece un protocollo) per potersi appoggiare su un protocollo di livello 2 IEE 802.2 (Token Ring o Ethernet). Quindi, mentre il NetBIOS può lavorare solo se è abbinato ad un protocollo di trasporto, NetBEUI non ha bisogno ne' di protocolli di trasporto ne' di interfacce verso SMB. Microsoft ha iniziato ad usare NetBEUI come protocollo di rete su Windows for Workgroup (Windows 3.1) e poi su tutte le versioni successive. L'idea iniziale di NetBIOS e NetBEUI era di creare un protocollo su misura per le LAN di dimensioni contenute (fino a circa 200 nodi), che fosse piccolo, semplice e veloce. Caratteristiche: Identificazione dell host Si possono assegnare nomi "umani" alle risorse, invece dei "complessi" indirizzi usati da IP, purche' ogni macchina abbia un nome diverso. Risoluzione dei nomi NetBIOS usa intensamente i broadcast piuttosto che interrogare un'entità centralizzata. Formazione di gruppi. Gestisce il concetto di gruppo ed e richiesta una registrazione al Workgroup per poter effettuare la condivisione. Di conseguenza, un computer che vuole registrarsi con il proprio nome NetBIOS come nuovo nodo, deve inviare messaggi broadcast a tutto il Workgroup per farsi accettare come nuovo nodo attivo. Se il nome è già usato, il possessore di quel nome invia un messaggio di risposta per respingere la scelta. Se invece un computer vuole localizzare un nodo preesistente, invierà ancora altri broadcast nel tentativo di contattare quello specifico nodo (oppure si deve tenere una lista di nodi). Il computer remoto è sempre tenuto a rispondere ai broadcast con un messaggio unicast (uno a uno). Solo successivamente i due computer potranno comunicare senza usare broadcast. Dopo lo sviluppo di Internet e stata implementata una versione di NetBIOS anche su IP, oltre che su altri protocolli. E' quindi possibile trovare NetBios nella sua versione originaria, come NetBIOS Frames Protocol (NBF) detto anche semplicemente NetBios o NetBEUI, che copre anche i livelli di network e trasporto, oppure incapsulato su TCP/IP (protocollo NBT), con questi ultimi a gestire il network e transport layer e NetBios posizionato come session layer.

Modello OSI NetBEUI NetBIOS over TCP/IP TCP/IP Applicazione Presentazione SMB SMB telnet, ftp, smtp, smb Sessione NetBEUI NetBIOS Trasporto TCP, UDP TCP, UDP Network IP/ ICMP IP, ICMP Data link fisico Indipendente dai protocolli superiori NetBIOS fornisci 3 servizi: Name service Datagram service chiamato UDP (NON e quello di internet!) per la gestione dei messaggi di controllo del gruppo Session service (protocollo SMB) per il passaggio dei dati Name service su NetBIOS L'indirizzamento di NetBios è flat, basato sul semplice nome di un host (generalmente fino a 15 caratteri) e senza elementi gerarchici che di fatto lo rendono inadatto per gestire il routing fra network diversi. Il nome NetBios è lo stesso che viene utilizzato dai procotolli superiori come SMB/CIFS. NetBEUI consente solo comunicazione intra guppi, non suipporta comunicazioni fuori dai gruppi e il suo protocollo non e riconosciuto dai router (messaggi droppati). Per impedire che due host nella stessa rete abbiamo lo stesso nome viene utilizzato il protocollo Name Management Protocol (NMP), tramite il quale, a colpi di broadcast, un host annuncia la sua presenza in rete e avverte quando un nuovo host con lo stesso nome prova ad apparire (vedere precedente lezione sui possibili naming di elementi di rete, terzo caso). Datagram e Session Service Nella comunicazione fra host NetBios usa lo User Datagram Protocol (UDP, diverso dall'udp usato su IP), unreliable e basato su datagrammi fino a 512 byte, e il Session Management Protocol (SMP), bidirenzionale, reliable e basato su sessioni che vengono stabilite fra due host. Supporta: Unicast (specific) Multicast (group) Broadcast (ma nessun datagramma esce dalla LAN) Il session service effettua il controllo di sequenza, fondamentale per lunghe connessioni uno a uno. Le sessioni possono essere aperte solo tra due macchine Netbios. Se la sessione viene interrota, teoricamente possibile riconnessione.

NetBIOS su TCP/IP (NBT) Quando la rete cresce di dimensioni, come e' successo con Internet, nascono problemi di non facile soluzione: 1. NetBIOS richiede un nome unico per ogni nodo: in questo caso ogni computer in internet dovrebbe avere un nome flat unico. 2. non essendo gerarchico, NetBeui non consente routing: dato un nome NetBIOS, è impossibile sapere quale sia la strada per raggiungerlo ne' dove si trovi geograficamente. 3. i router di Internet non consentono il propagarsi del broadcast, quindi non si possono collegare 2 computer qualunque in rete con NetBios BetBios insomma non scala. Per evitare la scomparsa di NetBIOS Microsoft abbina l'interfaccia NetBIOS al protocollo TCP/IP, limitando l'impiego del NetBEUI nell'ambito delle reti locali tra sistemi Microsoft. In questo modo ogni messaggio elaborato da NetBIOS viene incapsulato in un messaggio TCP/IP (NetBios over TCP/IP o NBT), che non soffre delle limitazioni di cui parlavamo prima. Chiaramente sorgono nuove complicazioni. 1. DNS mappati su server WINS, per la risoluzione dei nomi da identificatori NetBios a identifictori IP 2. HOSTS mappato su LMHOSTS, per la ricerca in rete Questo standard è definito nelle RFC 1001 e RFC 1002 dove si affrontano in particolare le problematiche relative all'associazione di un nome di host ad un indirizzo IP (broadcast o server di nomi centralizzato) e i metodi di comunicazione (a datagram o a sessioni). I nodi che offrono un servizio, in ambiente NBT, hanno 4 modalità standard: b nodi (nodi broadcast): usano broadcast sia per la registrazione che per la risoluzione dei nomi in indirizzi IP. I b nodi soffrono ancora del problema dei broadcast di NetBIOS: se i nodi sono separati da router, non riusciranno a vedersi. p nodi (nodi punto punto): conoscono l'ip della risorse interrogando con richieste unicast un server WINS (Windows Internet Name Service) noto. WINS, a imitazione di un DNS server, fornisce una lista di coppie < nomenetbios, indirizzoip >. m nodi (nodi misti): usano prima il broadcast come gli m nodi e poi le richieste come i p nodi. h nodi (nodi ibridi): l'opposto degli m nodi, cioè prima contattano un server WINS noto, poi, se la richiesta ha esito negativo, fanno broadcast. Una volta ricavati gli indirizzi IP al posto dei nomi si possono contattare nodi remoti. I client Microsoft per accedere ad un host consultano in ordine: una cache interna, il server WINS se presente, poi fanno broadcast, e per finire leggono file LMHOSTS. LMHOSTS è simile al file HOSTS delle macchine UNIX. E' un file da editare manualmente contenente le coppie di < nominetbios indirizziip >. Torna utile se non non si dispone di nessun server WINS e non si riesce a risolvere un nome remoto tramite broadcast perchè il nodo è al di la di uno o più router o se il destinatario risiede nella stessa rete locale. Infatti, per non essere obbligati a subire una marea di broadcast sulla propria rete, è possibile precaricare le associazioni del file LMHOSTS più usate nella cache. Per quanto riguarda il traffico di rete, sono definte alcune well known port IP:

TCP/135 RCP che veicola le richieste di tipo RPC per i servizi residenti su macchine remote (i servizi sono infatti implementati come RPC) UDP/137 NetBIOS Name Service. Questa porta viene usata per la risoluzione dei nomi su NetBIOS, in modo simile ad un DNS: riceve un nome NetBIOS e restituisce un nome DNS. UDP/138 NetBIOS Datagram Service serve per popolare la lista delle macchine visualizzate tramite Sfoglia la rete. TCP/139 NetBIOS Session Service utilizzata per trasferire i files tramite TCP e su di essa si appoggia la condivisione files e stampanti di Windows. NetBIOS inizialmente non era pericoloso per la sicurezza perche' non è routabile. Con NetBIOS over TCP/IP i problemi di sicurezza si sono amplificati. In sostanza l unica protezione per le condivisioni di file e stampanti esposte su internet è la forza della password associata alla risorsa. Server WINS Il Windows Internet Name Service (WINS) è l'implementazione Microsoft di un NetBios Name Server (NBNS) che ha la funzione di mantenere la lista dei nomi NetBios degli host in rete e dei relativi indirizzi IP. Ovviamente questo serve quando si usa NetBios over TCP/IP ed è una soluzione consigliabile quando si ha una rete medio grande o si devono connettere workgroup presenti su network IP differenti. Oltre ad un Primary Wins Server possono esistere uno o piu Secondary Wins Server con funzioni di ridondanza e backup. Protocollo SMB SMB e un protocollo usato a livello applicazione (a somiglianza di telnet, ssh, ftp ecc.) abbastanza semplice, che consente i comandi: Apertura e chiusura files Creazione e cancellazione directory e files Lettura e scrittura files Ricerca files Inserimento e cancellazione di files dalle code di stampa, ecc. Essenzialmente il lavoro di questo protocollo è quello di rendere possibile la condivisione di file e stampanti, incluse tutte le operazioni che comunemente vengono fatte su queste risorse (per es: aprire, chiudere, leggere, scrivere, creare, cancellare...). Ad ogni operazione corrisponde un messaggio SMB (open, read, write, close...). SMB consente anche di esplorare la rete cercando risorse utilizzabili e di poter disporre di tali risorse come se fossero locali. Il nome di questo componente è "redirector". Tramite il redirector ad esempio, è possibile vedere un disco di un altro computer come se fosse un disco sul proprio computer. Le comunicazioni con il livello inferiore (NetBEUI, NetBIOS o TCP/IP) avvengono tramite particolari strutture dati di 64 byte, chiamate NCB, cioè "Network Control Block", blocco di

controllo di rete. Attraverso le NCB passano le richieste e le risposte SMB. Il metodo consiste nel caricare opportunamente queste strutture dati con tutte le informazioni necessarie (codice del comando, nomi NetBIOS, puntatori e parametri vari). Centralizzazione per la gestione dei nomi Per evitare che ogni nodo debba contenere una copia completa della lista dei nomi registrati e delle relative risorse condivise, viene eletto tra i computer un Local Browse Master, a cui verrà affidata una unica lista. In generale l'elezione del browse master viene vinta dai sistemi di classe "superiore", come sistemi NT o macchine Linux su cui gira Samba (un server smb). In alcuni sistemi si puo' decidere manualmente chi sarà il browse master, in modo statico. Praticamente ogni macchina Windows può agire da Local Master Browser o da Backup Browser (host che riceve la browse list da un Master Browser e viene utilizzata in caso di inagibilità di quest'ultimo). Tutti gli host partecipano all elezione tramite broadcast. A seconda del sistema operativo, della versione di protocollo utilizzata, del tempo di uptime nella rete e del nome dell'host viene automaticamente deciso chi deve operare come Master Browser e questo rimane tale fino a quando resta connesso o un nuovo host con migliori credenziali si aggiunge alla rete. Su un sistema Windows cliccando su Risorse di Rete si vedono delle icone di computer, che indicano gli host presenti in rete. Queste informazioni sono ottenute dal Master Browser che gestisce la browse list degli host in rete (notare che questa potrebbe essere non perfettamente aggiornata, con alcuni host che risultano presenti anche se magari sono spenti o disconnessi e non hanno avuto modo di comunicarlo al Master Browser). Cliccando sul singolo host si ottiene l'elenco delle sue risorse condivise. Le unita condivise sono genericamente servizi (file o stampanti), quindi per l accesso occorre indicare sia il nome dell'host che della risorsa desiderata. Con NetBIOS, poi, non si parla di nodi, ma direttamente di server, client o peer. Il nome di un servizio ha il formato: \\<server>\<servizio> Il nome del server e quello del servizio non tengono conto della differenza tra lettere maiuscole e minuscole. Per esempio, \\server\condivisione rappresenta il servizio condivisione dell'elaboratore server. I nomi SMB possono essere lunghi 15 caratteri (byte) e contenere caratteri alfanumerici standard ( a z, A Z, 0 9,! @ # $ % ^ & ( ) ' ). Il sedicesimo e ultimo byte indica il tipo di risorsa, a seconda del valore esadecimale indicato corrisponde una diversa risorsa, alcuni esempi: 00 Normale workstation 03 Servizio di messaggistica (WinPopup) 1B Domain Master Browser 20 Fileserver Dalla sua introduzione originaria SMB ha subito varie modifiche e varianti che modificano e aggiungono nuovi SMB (Server Message Blocks, di fatto i "comandi" utilizzabili).

I Domini Windows Fondamentalmente un dominio Windows è un workgroup con un server che agisce come Domain Controller con funzioni di autenticazione centralizzata per l'accesso alle risorse (file, stampanti, login sul sistema...) da parte tutti gli host che fanno parte del dominio. Vengono usati protocolli differenti per Windows 95/98, Windows NT e Windows 2000 (dove il concetto di dominio viene ulteriormente allargato con le Active Directory). Il Primary Domain Controller (PDC) è il server che mantiene un database di tutte le password (SAM): quando un client cerca di accedere alle risorse di un server, quest'ultimo verifica sul PDC se login e password fornite sono valide. Se questo accade al client viene permesso l'accesso alle risorse richieste e fornito un token di autenticazione con cui automaticamente riesce ad accedere ad altre risorse in rete accessibili dalla stessa login. Il database delle password viene automaticamente copiato ad uno o più Backup Domain Controller (BDC) che possono essere utilizzati per autenticare i clinet nel caso in cui i PDC risulti inaccessibile. Da Windows 2000/XP la condivisione dei file funziona in modo diverso. La prima differenza è l uso della TCP/445 in alternativa alle solite 137 139. Il protocollo SMB è stato riscritto in modo che giri direttamente sopra il TCP, per eliminare la dipendenza da NetBIOS. Il nome dato da MS al sistema è direct hosting dell SMB. Questo permette di avere uno stack meno disordinato, e di appoggiarsi completamente al DNS per la risoluzione dei nomi. Uno dei vantaggi principali di direct hosting su NetBIOS è l utilizzo di DNS per la risoluzione dei nomi. NetBIOS risolve i nomi tramite broadcast e manca di scalabilità, mentre DNS è uno standard che usa uno spazio dei nomi gerarchico, che scala bene verso la dimensione di Internet. Connettendosi ad un sistema Win2000/XP che ha attivati sia NetBIOS over TCP/IP sia il direct hosting, utilizzando una macchina che li usa entrambi, saranno tentati entrambi i metodi. Il servizio che risponde per primo sarà quello utilizzato per lo scambio, mentre l altra connessione sarà terminata. SMB e Linux GNU/Linux è in grado di offrire servizi NetBIOS attraverso il protocollo di trasporto TCP/IP e questo per mezzo del gruppo di programmi denominato Samba. La limitazione di GNU/Linux nell'utilizzo del trasporto TCP/IP per questo scopo, deve essere tenuta presente nella configurazione degli elaboratori con cui si vuole comunicare attraverso NetBIOS. SAMBA e' basato su 2 demoni: smbd e nmbd.

smbd fornisce i servizi di condivisione di file stampanti per i clienti SMB (che possono essere macchine MS Windows o altre macchine GNU/Linux) e si occupa della gestione delle sessioni di comunicazione e delle autenticazioni necessarie all'accesso alle risorse che vengono offerte in condivisione dal server; il demone avvia una copia di se stesso per ogni richiesta di servizio da soddisfare; nmbd gestisce la distribuzione dell'elenco delle risorse condivise alle altre macchine della rete, può mantenere la lista delle risorse condivise (scansione della rete) ed eventualmente risolvere i nomi NetBIOS della rete (server WINS);