Corso TECNICO DI RETE · 11/01/2011 4 ANDREA SARNERI -CORSO CESCOT 2010 7 Il Client DHCP è un host...

22
11/01/2011 1 Corso TECNICO DI RETE MODULO 1 dimensionamento architettura di rete Docente: ing.Andrea Sarneri [email protected] 1 ANDREA SARNERI - CORSO CESCOT 2010 2 ANDREA SARNERI - CORSO CESCOT 2010 Lezione 7 Lo strato applicativo Il livello di applicazione Il protocollo DHCP Il protocollo DNS I protocollo Microsoft NETBIOS Il protocollo Microsoft WINS e SMB Protocollo Telnet, Ftp/TFTP,SMTP,HTTP La stampa: il protocollo LPD/LPR

Transcript of Corso TECNICO DI RETE · 11/01/2011 4 ANDREA SARNERI -CORSO CESCOT 2010 7 Il Client DHCP è un host...

Page 1: Corso TECNICO DI RETE · 11/01/2011 4 ANDREA SARNERI -CORSO CESCOT 2010 7 Il Client DHCP è un host che ha bisogno di ottenere un indirizzo IP valido per la sottorete a cui è collegato,

11/01/2011

1

Corso TECNICO DI RETE

MODULO 1 –dimensionamento architettura di rete

Docente: ing.Andrea [email protected]

1ANDREA SARNERI - CORSO CESCOT 2010

2ANDREA SARNERI - CORSO CESCOT 2010

Lezione 7 – Lo strato applicativo

•Il livello di applicazione

•Il protocollo DHCP

•Il protocollo DNS

•I protocollo Microsoft NETBIOS

•Il protocollo Microsoft WINS e SMB

•Protocollo Telnet, Ftp/TFTP,SMTP,HTTP

•La stampa: il protocollo LPD/LPR

Page 2: Corso TECNICO DI RETE · 11/01/2011 4 ANDREA SARNERI -CORSO CESCOT 2010 7 Il Client DHCP è un host che ha bisogno di ottenere un indirizzo IP valido per la sottorete a cui è collegato,

11/01/2011

2

3ANDREA SARNERI - CORSO CESCOT 2010

Livello di applicazione

5) Livello di sessione: garantire sincronizzazione end-to-end tra applicativi6) Livello di presentazione: gestire la sintassi dell’informazione end-to-end7) Livello di applicazione: definire i servizi e le interfacce di utilizzo della rete

Il modello OSI prevede ulteriori 3 livelli sopra il livello di trasporto.Il modello Internet Protocol semplifica a un livello cumulativo di applicazione,

salvo poi trovare nelle implementazioni reali (ad es Microsoft) segmentazioni corrispondenti a strati intermedi dovuti allo storico delle implementazioni e delle segmentazioni passate.

In questa area quindi non sempre esiste una demarcazione netta tra strati , come pure si possono ritrovare interfacce e sottostrati riconducibili non a un modello generale ma a una specifica interpretazione o implemetazione.

4ANDREA SARNERI - CORSO CESCOT 2010

Livello di applicazione

Page 3: Corso TECNICO DI RETE · 11/01/2011 4 ANDREA SARNERI -CORSO CESCOT 2010 7 Il Client DHCP è un host che ha bisogno di ottenere un indirizzo IP valido per la sottorete a cui è collegato,

11/01/2011

3

5ANDREA SARNERI - CORSO CESCOT 2010

Livello di applicazioneProtocollo DHCP

Il Dynamic Host Configuration Protocol (DHCP) (protocollo di configurazione dinamica degli indirizzi) è un protocollo che permette ai dispositivi di rete di ricevere la configurazione IP necessaria per poter operare su una rete basata su Internet Protocol.

In una rete basata sul protocollo IP, ogni calcolatore ha bisogno di un indirizzo IP, scelto in modo tale che appartenga alla sottorete a cui è collegato e che sia unico, ovvero che non ci siano altri calcolatori che stiano già usando quell'indirizzo.

Il compito di assegnare manualmente gli indirizzi IP ai calcolatori comporta un rilevante onere per gli amministratori di rete, soprattutto in reti di grandi dimensioni o in caso di numerosi computer che si connettono a rotazione solo a ore o giorni determinati. Inoltre gli indirizzi IPv4 (attualmente usati nella quasi totalità delle reti al mondo) con l'aumentare dei computer connessi a Internet hanno cominciato a scarseggiare, diminuendo la disponibilità di IP fissi.

DHCP viene utilizzato soprattutto in reti locali, in particolare su Ethernet. In altri contesti, funzioni simili sono svolte all'interno di PPP.

6ANDREA SARNERI - CORSO CESCOT 2010

Parametri assegnati dal DHCP:

•Maschera di sottorete •Default Gateway •Indirizzi dei server DNS •Nome di dominio DNS di default •Indirizzi dei server WINS •Indirizzi dei server NTP (network time protocol)•Indirizzo di un server tftp e nome di un file da caricare per calcolatori che caricano dalla rete l'immagine del sistema operativo •Parametri di configurazione del proxy•………………….

Livello di applicazioneProtocollo DHCP

Page 4: Corso TECNICO DI RETE · 11/01/2011 4 ANDREA SARNERI -CORSO CESCOT 2010 7 Il Client DHCP è un host che ha bisogno di ottenere un indirizzo IP valido per la sottorete a cui è collegato,

11/01/2011

4

7ANDREA SARNERI - CORSO CESCOT 2010

Il Client DHCP è un host che ha bisogno di ottenere un indirizzo IP valido per la sottorete a cui è collegato, e anche il programma che si occupa di richiedere l'indirizzo IP e configurarlo.

Il Server DHCP è l’host che assegna gli indirizzi IP, e anche il processo che svolge questa funzione. Talvolta questa funzione è incorporata in un router.

DHCP relay è il calcolatore (o più spesso una funzione implementata in un router) che si occupa di inoltrare le richieste DHCP ad un server, qualora questo non sia sulla stessa sottorete. Questo componente è necessario solo se un server DHCP deve servire molteplici sottoreti. Deve esistere almeno un DHCP relay per ciascuna sottorete servita. Ogni relay deve essere esplicitamente configurato per inoltrare le richieste a uno o più server.

Livello di applicazioneProtocollo DHCP

8ANDREA SARNERI - CORSO CESCOT 2010

DHCP utilizza il protocollo UDP, le porte registrate sono la 67 per il server e la 68 per il client.Quando un calcolatore vuole ottenere un indirizzo tramite DHCP, attiva il processo DHCP client. In questo momento, il calcolatore non ha un indirizzo IP valido, quindi non può usare tutte le funzionalità della rete. Esso invia quindi un pacchetto chiamato DHCPDISCOVER in broadcast, con indirizzo IP sorgente messo convenzionalmente a 0.0.0.0, e destinazione 255.255.255.255. Il pacchetto viene ricevuto da tutto il dominio di broadcast, e in particolare da tutti i server DHCP presenti, che possono rispondere (o meno) con un pacchetto di DHCPOFFER, in cui propongono un indirizzo IP ed altri parametri al client. Questo pacchetto è indirizzato direttamente all'indirizzo di livello datalink del client (che non ha ancora un indirizzo IP), per cui può essere inviato solo da un server che si trovi sullo stesso dominio di broadcast.A questo punto, il client è autorizzato ad usare l'indirizzo ricevuto per un tempo limitato, detto tempo di lease. Prima della scadenza, dovrà tentare di rinnovarlo inviando un nuovo pacchetto DHCPREQUEST al server, che gli risponderà con un DHCPACK se vuole prolungare l'assegnazione dell'indirizzo. Questi sono normali pacchetti IP unicast scambiati tra due calcolatori che hanno indirizzi validi. Se il client non riesce a rinnovare l'indirizzo, tornerà allo stato iniziale cercando di farsene attribuire un altro.

Livello di applicazioneProtocollo DHCP

Funzionamento del meccanismo di rilascio dell’indirizzo

Comando <IPCONFIG /RENEW> <IPCONFIG /RELEASE>

Page 5: Corso TECNICO DI RETE · 11/01/2011 4 ANDREA SARNERI -CORSO CESCOT 2010 7 Il Client DHCP è un host che ha bisogno di ottenere un indirizzo IP valido per la sottorete a cui è collegato,

11/01/2011

5

9ANDREA SARNERI - CORSO CESCOT 2010

Livello di applicazioneProtocollo DHCP

La lease può essere rinnovata prima della scadenza, è il client che in prossimità della scadenza si preoccupa di richiedere il renew. Il server mantiene il database delle lease

10ANDREA SARNERI - CORSO CESCOT 2010

Livello di applicazioneProtocollo DHCP

Gestione del DHCP server.Il tempo di lease va determinato in base a rapporto tra IP nel pool, IP nella sottorete, numero di host attivi contemporaneamente. Es se il n. di host attivi è << di IP nel pool e i PC sono piuttosto stabili, la lease può essere lunga (giorni), se invece il n. di host attivi è vicino al numero di IP nel pool o disponibili nella sottorete, è necessaria una rotazione veloce e la lease deve essere corta (max 1 giorno)

Più di UN DHCP server sulla sottorete: il protocollo non prevede un meccanismo di coordinamento tra due o più server, per cui si genera un conflitto se i due server rilasciano lo stesse IP a due MAC diversi. Potrebbe essere però utile avere DHCP server in ridondanza. In questo caso si adotta la regola 80/20 ovvero 80% degli IP assegnati al server primario, e 20% al backup. I due pool non devono essere sovrapposti.

Su una subnet è consigliabile assegnare al DHCP non tutti gli indirizzi disponibili, ma tenere una parte di essi in configurazione statica (ad esempio server, router, stampanti), e lasciare al DHCP tutti gli host che possono essere spostati o che comunque conviene gestire in automatico (laptops) nel momento in cui serve un cambio di parametri globale ( es cambiare il default gateway o il server DNS)

Page 6: Corso TECNICO DI RETE · 11/01/2011 4 ANDREA SARNERI -CORSO CESCOT 2010 7 Il Client DHCP è un host che ha bisogno di ottenere un indirizzo IP valido per la sottorete a cui è collegato,

11/01/2011

6

11ANDREA SARNERI - CORSO CESCOT 2010

Livello di applicazioneProtocollo DNS

Domain Name System (spesso indicato con DNS) è un sistema utilizzato per la risoluzione di nomi di host in indirizzi IP e viceversa. Il servizio è realizzato tramite un database distribuito e ridondante, costituito dai server DNS.

Il nome DNS denota anche il protocollo che regola il funzionamento del servizio, i programmi che lo implementano, i server su cui questi girano, l'insieme di questi server che cooperano per fornire il servizio.L'operazione di convertire un nome in un indirizzo è detta risoluzione DNS, convertire un indirizzo IP in nome è detto risoluzione inversa.

Un nome di dominio è costituito da una serie di stringhe separate da punti, ad esempio it.wikipedia.org. A differenza degli indirizzi IP, dove la parte più importante del numero è la prima partendo da sinistra, in un nome DNS la parte più importante è la prima partendo da destra. Questa è detta dominio di primo livello (o TLD, Top LevelDomain), per esempio .org o .com.

12ANDREA SARNERI - CORSO CESCOT 2010

Livello di applicazioneProtocollo DNS

Un dominio è un sottoinsieme del domain name space e prende il nome di dominio del suo nodo più alto. A sua volta, ogni dominio può avere ulteriori sottoinsiemi, chiamati sottodomini. I domini possono anche essere indicati per livello: un dominio top-level (o di primo livello) è immediatamente sotto la radice; un dominio di secondo livello è immediatamente sotto uno di primo livello; e così via.

Page 7: Corso TECNICO DI RETE · 11/01/2011 4 ANDREA SARNERI -CORSO CESCOT 2010 7 Il Client DHCP è un host che ha bisogno di ottenere un indirizzo IP valido per la sottorete a cui è collegato,

11/01/2011

7

13ANDREA SARNERI - CORSO CESCOT 2010

Livello di applicazioneProtocollo DNS

•Record A - Indica la corrispondenza tra un nome ed uno (o più) indirizzi IP (per la precisione indirizzi IPv4, ovvero la versione attualmente in uso). •Record MX - (Mail eXchange) indica a quali server debba essere inviata la posta elettronica per un certo dominio. •Record CNAME - Sono usati per creare un alias, ovvero per fare in modo che lo stesso calcolatore sia noto con più nomi. Uno degli utilizzi di questo tipo di record consiste nell'attribuire ad un host che offre più servizi un nome per ciascun servizio. In questo modo, i servizi possono poi essere spostati su altri host senza dover riconfigurare i client, ma modificando solo il DNS. •Record PTR - Il DNS viene utilizzato anche per realizzare la risoluzione inversa, ovvero per far corrispondere ad un indirizzo IP il corrispondente nome di dominio. Per questo si usano i record di tipo "PTR" (e una apposita zona dello spazio dei nomi in-addr.arpa). •Record SRV - Identificano il server per un determinato servizio all'interno di un dominio. Possono essere considerati una generalizzazione dei record MX.

Vi sono anche tipi di record "di servizio", necessari al funzionamento del database distribuito:•Record NS - Utilizzato per indicare quali siano i server DNS autorevoli per un certo dominio, ovvero per delegarne la gestione. •Record SOA - (Start of Authority) usato per la gestione delle zone DNS.

Tipi di record nel database DNS:

14ANDREA SARNERI - CORSO CESCOT 2010

Livello di applicazioneProtocollo DNS

Meccanismo della delega:Una zona DNS è una parte dello spazio dei nomi, costituita da un dominio e i suoi sottodomini che non sono a loro volta delegati, che è sotto una stessa gestione amministrativa e quindi è gestita da uno o più server.La gestione di una zona è delegata dalla zona superiore tramite dei record di tipo NS. Ad esempio, nella zona .org ci sarà una delega per la zona wikipedia.org ai server DNS che la gestiscono. Per ragioni di ridondanza, ciascuna zona è replicata su più server, e di conseguenza la delega è costituita da più record NS, che indicano che ciascuno dei server indicati contiene le informazioni per quella zona (ovvero è autoritativo per la zona). All'interno di una zona possono essere delegate delle zone di livello inferiore, ad esempio in wikipedia.org potrebbero esistere deleghe per devel.wikipedia.org o per accounting.admin.wikipedia.org.

Meccanismo della RicorsioneIn generale, per ottenere la risoluzione di un nome è necessario partire dalla radice, interrogare uno dei root server nel dominio di primo livello, ottenere il server che lo gestisce, interrogarlo nel dominio di secondo livello, fino a raggiungere il server autorevole per il nome desiderato. Questa tecnica è detta "ricorsione“. Questo meccanismo si abbina alla ridondanza del database DNS

Page 8: Corso TECNICO DI RETE · 11/01/2011 4 ANDREA SARNERI -CORSO CESCOT 2010 7 Il Client DHCP è un host che ha bisogno di ottenere un indirizzo IP valido per la sottorete a cui è collegato,

11/01/2011

8

15ANDREA SARNERI - CORSO CESCOT 2010

Livello di applicazioneProtocollo DNS

Qualsiasi rete IP può usare il DNS per implementare un suo sistema di nomi privato. Tuttavia, il termine "nome di dominio" è più comunemente utilizzato quando esso si riferisce al sistema pubblico dei DNS su Internet. Questo è basato su 13 "root server" universali, i cui indirizzi IP sono distribuiti indipendentemente dal DNS tramite un file detto "root hints" (letteralmente: indizi per la radice). Da questi server principali, il DNS viene poi delegato ad altri server DNS che si occupano dei nomi all'interno di parti specifiche dello spazio dei nomi DNS.Dieci dei tredici root server sono, almeno nominalmente, situati negli USA. Tuttavia, dato l'accesso a molti di essi è realizzato tramite indirizzamento anycast, che permette di assegnare a più computer lo stesso indirizzo IP per fornire un servizio uniforme su vaste aree geografiche, la maggior parte dei server sono in effetti localizzati al di fuori degli Stati Uniti.

Il proprietario di un nome di dominio è rintracciabile in un database chiamato Whois: per molti domini di primo livello un Whois base è gestito dalla IANA, con il Whois dettagliato mantenuto dall'autorità di registrazione che controlla quel dominio. Per i più di 240 domini nazionali l'autorità di registrazione gestisce in esclusiva il Whois per il dominio di competenza.

16ANDREA SARNERI - CORSO CESCOT 2010

Livello di applicazioneProtocollo DNS

Il DNS utilizza la porta 53, per lo scambio dei pacchetti UDP (risoluzione nomi) , o TCP (trasferimento zone).Il programma host che viene interpellato per la risoluzione del nome è il “resolver”

Page 9: Corso TECNICO DI RETE · 11/01/2011 4 ANDREA SARNERI -CORSO CESCOT 2010 7 Il Client DHCP è un host che ha bisogno di ottenere un indirizzo IP valido per la sottorete a cui è collegato,

11/01/2011

9

17ANDREA SARNERI - CORSO CESCOT 2010

Livello di applicazioneProtocollo DNS

NOTA: è possibile effettuare anche il REVERSE DNS LOOKUP, dato un IP trovare il nome associato (è utilizzato ad es. dall’utility traceroute)

18ANDREA SARNERI - CORSO CESCOT 2010

Livello di applicazioneProtocollo DNS

Un server DNS può essere configurato per assolvere ad una o più delle seguenti funzioni:

server autorevole per una o più zone, ovvero il server su cui sono configurati i dati di una zona, e che è delegato a gestirla tramite record NS inseriti nella zona superiore. Normalmente sono presenti più server autorevoli per una zona.

Molte implementazioni permettono di modificare i dati di una zona solo su un server: •primario - server autorevole su cui vengono modificati i dati di una zona •secondario - server autorevole che copia i dati di zona da un primario •server ricorsivo - il server che viene configurato in una popolazione di client, che si occupa di risolvere le query che riceve interrogando i server originali, e mantenendo una cache delle risposte ricevute (tipicamente implementato in un router/firewall)•query forwarder - un server che viene configurato in una popolazione di client, che risolve le loro query non direttamente ma interrogando un server ricorsivo

Page 10: Corso TECNICO DI RETE · 11/01/2011 4 ANDREA SARNERI -CORSO CESCOT 2010 7 Il Client DHCP è un host che ha bisogno di ottenere un indirizzo IP valido per la sottorete a cui è collegato,

11/01/2011

10

ANDREA SARNERI - CORSO CESCOT 2010 19

Livello di applicazioneProtocollo DNS

Comando utile per visualizzare la cache DNS locale (windows)<IPCONFIG /displaydns>

Comando utile per interrogare i DNS <nslookup>

Registry: TYPE Value and meaning ReferenceA 1 a host address [RFC1035] NS 2 an authoritative name server [RFC1035] CNAME 5 the canonical name for an alias [RFC1035] SOA 6 marks the start of a zone of authority [RFC1035] PTR 12 a domain name pointer [RFC1035] HINFO 13 host information [RFC1035] MINFO 14 mailbox or mail list information [RFC1035] MX 15 mail exchange [RFC1035] TXT 16 text strings [RFC1035] RP 17 for Responsible Person [RFC1183]

http://www.iana.org/assignments/dns-parameters

ANDREA SARNERI - CORSO CESCOT 2010 20

Livello di applicazioneProtocollo NETBIOS

NetBIOS è un protocollo di livello sessione, sviluppato da IBM e Sytec per la cosiddetta PC-Network all'inizio degli anni ottanta. Da quando la PC-Network non è più usata, essendo stata sostituita dalle reti TokenRing ed Ethernet, il protocollo NetBIOS potrebbe non essere più necessario. Ma dato che molti programmi sono stati scritti per le API di NetBIOS, sono state adattate per lavorare su altri protocolli come IPX/SPX e TCP/IP.

NetBIOS su TokenRing o Ethernet è ora chiamato NetBEUI (NetBIOS Extended UserInterface). Era ancora molto usato finché il sistema operativo Microsoft Windows 98 è stato rilasciato. NetBIOS su TCP/IP è chiamato NBT ed è stato standardizzato dalle RFC 1001 e 1002. NBT offre un'emulazione di PC-Network LAN basata su NetBIOS su una rete basata su IP. Questo protocollo è stato introdotto con Microsoft Windows 2000 ed è il trasporto preferito su NetBIOS.

Page 11: Corso TECNICO DI RETE · 11/01/2011 4 ANDREA SARNERI -CORSO CESCOT 2010 7 Il Client DHCP è un host che ha bisogno di ottenere un indirizzo IP valido per la sottorete a cui è collegato,

11/01/2011

11

ANDREA SARNERI - CORSO CESCOT 2010 21

Livello di applicazioneProtocollo NETBIOS

ANDREA SARNERI - CORSO CESCOT 2010 22

Livello di applicazioneProtocollo NETBIOS

NetBIOS offre sempre tre servizi:•Name service: registrazione e risoluzione del nome (la ricerca del nome è parte dell'SMB, un livello superiore)•Session service: comunicazione fidata orientata alla connessione•Datagram distribution service: comunicazione non fidata senza connessione

NetBIOS e NetBEUI sono destinati solo all'uso sulle reti locali. Per questo motivo, non hanno il supporto per il routing e possono gestire un massimo di 72 nodi. L'uso delle trasmissioni è intenso, specialmente per le operazioni collegate al name service.

Attualmente la forma maggiormente utilizzata è quella di NetBios incapsulato su TCP/IP (NetBios over TCP/IP o NBT).NBT usa uno o più NBNS (NetBIOS Name Server) per coprire il servizio dei nomi su subnetmultiple (mentre la trasmissione - broadcast - è limitata ad un unico subnet). Un NBNS è una specie di DNS dinamico. L'implementazione Microsoft di NBNS è chiamata WINS.

Page 12: Corso TECNICO DI RETE · 11/01/2011 4 ANDREA SARNERI -CORSO CESCOT 2010 7 Il Client DHCP è un host che ha bisogno di ottenere un indirizzo IP valido per la sottorete a cui è collegato,

11/01/2011

12

ANDREA SARNERI - CORSO CESCOT 2010 23

Livello di applicazioneProtocollo NETBIOS

L'indirizzamento di NetBios è flat, basato sul semplice nome di un host (generalmente fino a 15 caratteri) e senza elementi gerarchici (come il DNS) 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. 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.

Le porte utilizzate per questi servizi sono:netbios-ns 137/udp # NETBIOS Name Servicenetbios-dgm 138/udp # NETBIOS Datagram Servicenetbios-ssn 139/tcp # NETBIOS Session Service

ANDREA SARNERI - CORSO CESCOT 2010 24

Livello di applicazioneProtocollo NETBIOS e WINS

WINS è per i nomi NetBIOS, quello che il DNS è per i nomi di dominio - un mapping centrale di hostname risolti come indirizzi locali. Così come il DNS, anche WINS è diviso in due parti: •un Server Service (che gestisce il Jet Database, la replicazione server-to-server, le richieste di servizi (query e registrazione, rinnovi, deregistrazioni e conflitti); •un client TCP/IP che gestisce la registrazione da parte di client, il rinnovo dei nomi e si accolla l'incarico dell'esecuzione delle query.

Diversamente dal DNS, i mapping sono aggiornati dinamicamente (per esempio al boot della workstation), in modo che, quando un client necessita di contattare un altro computer sulla rete, può mantenere il proprio IP (ottenuto via DHCP), tralasciando la funzionalità di WINS che fornisce un modo di mantenere i nomi dei client unici sulla rete.

I nomi di host di NetBios su TCP/IP possono essere registrati (annunciati) e risolti (trovati) sul network locale sia tramite server WINS sia tramite broadcast (in assenza di server WINS), ma la prima soluzione, soprattutto su reti affollate, è molto più efficace.

Page 13: Corso TECNICO DI RETE · 11/01/2011 4 ANDREA SARNERI -CORSO CESCOT 2010 7 Il Client DHCP è un host che ha bisogno di ottenere un indirizzo IP valido per la sottorete a cui è collegato,

11/01/2011

13

ANDREA SARNERI - CORSO CESCOT 2010 25

Livello di applicazioneProtocollo WINS

A seconda di come un host è configurato per gestire i nomi assume un tipo di nodo diverso:•b-node - Host che usa solo broadcast per la risoluzione e la registrazione degli host name.•p-node - Host che usa un server centrale (comunicazione point-to-point) per risoluzione e registrazione•m-node - Host che usa broadcast per la registrazione e la risoluzione, inoltre se porta a termine con successo una registrazione lo notifica ad un server NBNS, che viene usato anche quando la risoluzione via broadcast non ha successo.•h-node(hybrid) - Host che usa un server NBNS (WINS) per risoluzione e registrazione dei nomi e, nel caso in cui il server NBNS non sia disponibile utilizza i broadcast. Questa modalità è stata introdotta da Microsoft, non appare nelle RFC 1001 e 1002.Il tipo di nodo, su Windows, è visibile nell'output del comando ipconfig/all dove si parla di NodeType

I nomi 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 workstation03 - Servizio di messaggistica (WinPopup)1B - Domain Master Browser20 - FileserverNetBios inoltre prevede il concetto di gruppo (i Workgroup in ambiente Windows).

ANDREA SARNERI - CORSO CESCOT 2010 26

Livello di applicazioneProtocollo SMB

Server Message Block (SMB) è un protocollo usato principalmente per condividere files, stampanti, porte seriali e comunicazioni di varia natura tra diversi nodi di una rete. Esso include anche un meccanismo di comunicazione tra processi autenticata. È soprattutto usato dai sistemi Microsoft Windows.

SMB agisce con un approccio client-server, per cui un client avanza le sue richieste ed il server risponde opportunamente. Una sezione del protocollo è dedicata specificatamente all'accesso al filesystem, in modo che i client possano fare richieste al file server, ma ci sono altre sezioni specializzate per le comunicazioni tra processi. SMB è stato ottimizzato per l'uso in rete locale, ma può essere usato anche attraverso l'Internet.

I server SMB rendono il loro filesystem e le altre risorse disponibili ai client sulla rete. I client possono avere i loro propri dischi che non sono pubblicamente accessibili ed accedere comunque al filesystem condiviso e alle stampanti del server, e questa è la modalità primaria di utilizzo del protocollo.

Nel protocollo SMB ogni client notifica la sua presenza con un broadcast all'intera rete. In realtà SMB non usa broadcast, esso viene usato da NetBIOS per localizzare i server disponibili ad intervalli periodici. Ciò è accettabile in reti con meno di 20 hosts, ma il traffico dovuto ai broadcast può creare problemi con l'aumentare del numero di macchine connesse. Tale problema può essere mitigato sfruttando WINS.

Page 14: Corso TECNICO DI RETE · 11/01/2011 4 ANDREA SARNERI -CORSO CESCOT 2010 7 Il Client DHCP è un host che ha bisogno di ottenere un indirizzo IP valido per la sottorete a cui è collegato,

11/01/2011

14

ANDREA SARNERI - CORSO CESCOT 2010 27

Livello di applicazione

File HOST/LMHOST

Il file Lmhosts.sam è un file di testo locale che associa indirizzi IP (Internet Protocol) ai nomi NetBIOS.

Il file di LMHOSTS si trova nella cartella % SystemRoot%\System32\Drivers\Etc in un computer Windows. Windows riconosce nomi anziché gli indirizzi IP per le richieste di rete e un processo di individuazione del nome viene utilizzato per instradare correttamente le richieste di rete con il protocollo TCP/IP. Perché il processo di individuazione del nome non viene in genere inviato da un router IP, il file LMHOSTS consente a Windows ai computer di comunicare attraverso TCP/IP di una subnet aggiunte al bridge di rete da un router IP.

In TCP/IP solo, NetBT (NetBIOS su TCP/IP) controlla questo elenco in memoria prima di eseguire un rilevamento del nome di nodo b. Quando Windows viene caricato, legge le prime 100 voci, per impostazione predefinita, nel file LMHOSTS contrassegnato con # pre.

Il file hosts è analogo ma mappa gli indirizzi IP a nomi DNS

Il comando <NBTSTAT> consente di visualizzare la tabella dei nomi Netbios e relativi IP

28ANDREA SARNERI - CORSO CESCOT 2010

TELNET

Il Livello di applicazione

L'obiettivo del protocollo TELNET è fornire un supporto per le comunicazioni sufficientemente generalizzato, bidirezionale ed orientato ai byte (otto bit). È solitamente utilizzato per fornire all'utente sessioni di login remoto di tipo linea di comando tra host su internet. E’ un protocollo client-server basato su TCP; i client solitamente si connettono alla porta 23 sul server.

E’ possibile utilizzare un programma Telnet per stabilire una connessione interattiva ad un qualche altro servizio su un server internet. Un utilizzo classico è collegarsi col Telnet alla porta 25 (sulla quale tipicamente si trova un server SMTP) per effettuare il debugging di un server di posta. Oppure collegarsi in remoto alla console di un sistema UNIX/Linux.

Page 15: Corso TECNICO DI RETE · 11/01/2011 4 ANDREA SARNERI -CORSO CESCOT 2010 7 Il Client DHCP è un host che ha bisogno di ottenere un indirizzo IP valido per la sottorete a cui è collegato,

11/01/2011

15

29ANDREA SARNERI - CORSO CESCOT 2010

TELNET

Il Livello di applicazione

Telnet utilizza il modello “Network virtual terminal” per creare una astrazione delle funzionalità comuni a due host:

•Dati rappresentati a 7 bit ASCII su un byte•Operazioni half-duplex con buffer di linea (EOL)•Funzione di eco locale•Input da tastiera•Output su schermo o stampante

30ANDREA SARNERI - CORSO CESCOT 2010

File Transfer Protocol FTP

Il Livello di applicazione

Il File Transfer Protocol (FTP) (protocollo di trasferimento file), è un Protocollo per la trasmissione di dati tra host basato su TCP. Gli obiettivi principali di FTP sono:•Promuovere la condivisione di file (programmi o dati) •Incoraggiare l'uso indiretto o implicito di computer remoti. •Risolvere in maniera trasparente incompatibilità tra differenti sistemi di stoccaggio file tra host. •Trasferire dati in maniera affidabile ed efficiente.

PI (protocol interpreter) è l'interprete del protocollo, utilizzato da client (User-PI) e server (Server-PI) per lo scambio di comandi e risposte. In gergo comune ci si riferisce ad esso come "canale comandi". DTP (data transfer process) è il processo di trasferimento dati, utilizzato da client (User-DTP) e server (Server-DTP) per lo scambio di dati. In gergo comune ci si riferisce ad esso come "canale dati".

Page 16: Corso TECNICO DI RETE · 11/01/2011 4 ANDREA SARNERI -CORSO CESCOT 2010 7 Il Client DHCP è un host che ha bisogno di ottenere un indirizzo IP valido per la sottorete a cui è collegato,

11/01/2011

16

31ANDREA SARNERI - CORSO CESCOT 2010

Un server FTP rimane tipicamente in ascolto sulla porta 21 TCP a cui si connette il client. La connessione da parte del client determinerà l'inizializzazione del canale comandi attraverso il quale client e server si scambieranno comandi e risposte. Lo scambio effettivo di dati (come ad esempio file) richiederà l'apertura del canale dati il quale può essere di due tipi.1. In un canale dati di tipo attivo il client apre una porta tipicamente random, tramite il

canale comandi rende noto il numero di tale porta al server e attende che esso si connetta.

2. In un canale dati di tipo passivo il server apre una porta tipicamente random (> 1023), tramite il canale comandi rende noto il numero di tale porta al client e attende che esso si connetta. Questa modalità consente di superare l’eventuale restrizione in entrata da parte di un firewall.

Sia il canale comandi sia il canale dati sono delle connessioni TCP; FTP crea un nuovo canale dati per ogni file trasferito all'interno della sessione utente, mentre il canale comandi rimane aperto per l'intera durata della sessione utente, in altre parole il canale comandi è persistente mentre il canale dati è non persistente.

File Transfer Protocol FTP

Il Livello di applicazione

32ANDREA SARNERI - CORSO CESCOT 2010

•usa l'UDP (porta 69) come protocollo di trasporto (a differenza del FTP che usa il TCP sulla porta 21); •non supporta la navigazione tra le directory; •non possiede meccanismi di autenticazioni o cifratura; •può essere usato per leggere o scrivere file da un server remoto; •supporta tre differenti modalità di trasferimento, "netascii", "octet" e "mail", dei quali i primi due corrispondono alle modalità "ASCII" e "image" (binario) del protocollo FTP; la terza è obsoleta e raramente usata; •ha un limite di dimensione dei file di 32 MB.

Trivial File Transfer Protocol (TFTP) è un protocollo di trasferimento file molto semplice, con le funzionalità di base del FTP.

TFTP è utile per l'avvio di computer che, come i router, non hanno dispositivi a memoria di massa. È ancora usato per trasferire piccoli file fra host di una rete.

Trivial File Transfer Protocol TFTP

Il Livello di applicazione

Page 17: Corso TECNICO DI RETE · 11/01/2011 4 ANDREA SARNERI -CORSO CESCOT 2010 7 Il Client DHCP è un host che ha bisogno di ottenere un indirizzo IP valido per la sottorete a cui è collegato,

11/01/2011

17

33ANDREA SARNERI - CORSO CESCOT 2010

SMTP è il protocollo standard per la trasmissione via internet di e-mail. È un protocollo relativamente semplice, testuale, nel quale vengono specificati uno o più destinatari di un messaggio, verificata la loro esistenza, il messaggio viene trasferito. Il protocollo SMTP utilizza come protocollo di livello transport TCP. Il client apre una sessione TCP verso il server sulla porta 25. Per associare il server SMTP a un dato nome di dominio (DNS) si usa un Resource Record di tipo MX (Mail eXchange).SMTP è un protocollo che permette soltanto di inviare messaggi di posta, ma non di richiederli ad un server: per fare questo il client di posta deve usare altri protocolli, quali il POP3 (Post Office Protocol) e l'IMAP (Internet Message Access Protocol).

Simple Mail Transfer Protocol SMTP

Il Livello di applicazione

E’ un protocollo end-2-end, che si distingue dal modello store-and-forward: il messaggio viene tenuto nel client fintanto che non è stato completamente copiato al destinatario

34ANDREA SARNERI - CORSO CESCOT 2010

Formato MIME (Multipurpose Internet Mail Extension)

Il Livello di applicazione

MIME (Multipurpose Internet Mail Extensions) è uno standard generico per il formato dei documenti scambiati sulla rete Internet tramite posta elettronica, news, WWW.ci si limitava a messaggi esclusivamente di tipo testo ASCII, senza alcun riferimento a messaggi di altro tipo (ad esempio, le immagini). Nel giugno 1992 viene specificato come definire il formato sia di messaggi testuali (ASCII e non) sia di messaggi multimediali (cioè contenenti video, suono, immagini, ecc.). Ogni messaggio non costituito da solo testo ASCII, deve essere convertito in questo formato prima di essere inviato in rete. Quando due programmi dialogano tra loro attraverso la rete Internet (uno invia un file e l'altro lo riceve), il programma che invia il file deve specificarne il tipo secondo lo standard MIME; in questo modo il programma che riceve i dati può capire come trattarli.

Con lo standard MIME è possibile inserire in un qualsiasi messaggio di e-mail, oltre al testo, anche files contenenti immagini, segnali audio e video; il software che gestisce la posta non si preoccupa del contenuto del messaggio, è l'utilizzatore finale a preoccuparsi della sua opportuna decodifica in base alle specifiche di tipo inserite nel messaggio stesso.

Page 18: Corso TECNICO DI RETE · 11/01/2011 4 ANDREA SARNERI -CORSO CESCOT 2010 7 Il Client DHCP è un host che ha bisogno di ottenere un indirizzo IP valido per la sottorete a cui è collegato,

11/01/2011

18

35ANDREA SARNERI - CORSO CESCOT 2010

Formato MIME (Multipurpose Internet Mail Extension)

Il Livello di applicazione

36ANDREA SARNERI - CORSO CESCOT 2010

POP3 Post Office Protocol

Il Livello di applicazione

Mentre SMTP è usato per l’invio, il Post Office Protocol (detto anche POP) è un protocollo che ha il compito di permettere, mediante autenticazione, l'accesso ad un account di posta elettronica presente su di un host per scaricare le e-mail del relativo account. Il pop (nella versione 3) rimane in attesa sulla porta 110 dell'host (di default, ma può anche essere diversa) per una connessione TCP da parte di un client. I messaggi di posta elettronica, per essere letti, devono essere scaricati sul computer (questa è una notevole differenza rispetto all'IMAP), anche se è possibile lasciarne una copia sull'host. Il protocollo POP3 non prevede alcun tipo di cifratura, quindi le password utilizzate per l'autenticazione fra server e client passano in chiaro.

IMAP Internet Messages Access Protocol

con il protocollo IMAP è possibile conservare copia delle proprie e-mail sul server, e scaricarle in un secondo momento da altri computer. Opera in due possibili modalità:offilne- simile a POP3, ci si connette al server, si scarica in locale, ci si disconnette e si cancella/conserva il messaggio sul client.Online – si opera direttamente sul server rimanendo online, e si manipolano le mail direttamente sul server senza scaricarle sul client.

Page 19: Corso TECNICO DI RETE · 11/01/2011 4 ANDREA SARNERI -CORSO CESCOT 2010 7 Il Client DHCP è un host che ha bisogno di ottenere un indirizzo IP valido per la sottorete a cui è collegato,

11/01/2011

19

37ANDREA SARNERI - CORSO CESCOT 2010

Protocollo HTTP HyperText Transfer Protocol

Il Livello di applicazione

L'HTTP funziona su un meccanismo richiesta/risposta (client/server): il client esegue una richiesta ed il server restituisce la risposta. Nell'uso comune il client corrisponde al browser ed il server al sito web. Vi sono quindi due tipi di messaggi HTTP: messaggi richiesta e messaggi risposta.

HTTP differisce da altri protocolli di livello 7 come FTP, per il fatto che le connessioni vengono generalmente chiuse una volta che una particolare richiesta (o una serie di richieste correlate) è stata soddisfatta. Questo comportamento rende il protocollo HTTP ideale per il World Wide Web, in cui le pagine molto spesso contengono dei collegamenti (link) a pagine ospitate da altri server (URL). Talvolta però pone problemi agli sviluppatori di contenuti web, perché la natura senza stato (stateless) costringe ad utilizzare dei metodi alternativi per conservare lo stato dell'utente. Spesso questi metodi si basano sull'uso dei cookie.

URL (Universal Resources Locator) : stringa univoca di identificazione di una risorsa nel WEB:protocollo://<username:password@>nomehost<:porta></percorso><?querystring>

38ANDREA SARNERI - CORSO CESCOT 2010

Protocollo HTTP HyperText Transfer Protocol

Il Livello di applicazione

Il server e il client HTTP dialogano sulla porta 80 TCP (default well-known-port) sulla base di un semplice schema richiesta-risposta

La richiesta è formata dai seguenti elementi:•Linea di richiesta•Intestazione•Linea vuota•Corpo del messaggio opzionale

La riga di richiesta è composta dal metodo, URL e versione del protocollo. Il metodo di richiesta, per la versione 1.1, può essere uno dei seguenti:GET POST HEAD PUT DELETE TRACE OPTIONS

Page 20: Corso TECNICO DI RETE · 11/01/2011 4 ANDREA SARNERI -CORSO CESCOT 2010 7 Il Client DHCP è un host che ha bisogno di ottenere un indirizzo IP valido per la sottorete a cui è collegato,

11/01/2011

20

39ANDREA SARNERI - CORSO CESCOT 2010

Il Web, WWW, ipertesti e sintassi HTML

Il Livello di applicazione

Un ipertesto è un insieme di documenti messi in relazione tra loro tramite parole chiave. Può essere visto come una rete; i documenti ne costituiscono i nodi. La caratteristica principale di un ipertesto è che la lettura può svolgersi in maniera non sequenziale: qualsiasi documento della rete può essere "il successivo", in base alla scelta del lettore di quale parola chiave usare come collegamento.È possibile, infatti, leggere all'interno di un ipertesto tutti i documenti collegati dalla medesima parola chiave. La scelta di una parola chiave diversa porta all'apertura di un documento diverso: all'interno dell'ipertesto sono possibili praticamente infiniti percorsi di lettura.

40ANDREA SARNERI - CORSO CESCOT 2010

Il computer ha reso immediato e automatico il passaggio da un documento all'altro. I documenti sono leggibili a video grazie a un'interfaccia elettronica, le parole chiave in esso contenute appaiono marcate (sottolineate oppure evidenziate, ecc) in maniera da renderle riconoscibili.L'azione del clic con il mouse su una parola chiave ha come conseguenza l'apertura di un altro documento.

Il Web, WWW, ipertesti e sintassi HTML

Il Livello di applicazione

il web, infatti, è stato concepito dal suo inventore, l'inglese Tim Berners-Lee, come un ipertesto globale in cui tutti i siti mondiali possono essere consultati da tutti. La pagina web è il singolo documento e la "navigazione" è il passaggio da un sito all'altro tramite i "link". L'interfaccia elettronica per visualizzare i siti web (e le pagine ipertestuali contenute) è il browser.

Page 21: Corso TECNICO DI RETE · 11/01/2011 4 ANDREA SARNERI -CORSO CESCOT 2010 7 Il Client DHCP è un host che ha bisogno di ottenere un indirizzo IP valido per la sottorete a cui è collegato,

11/01/2011

21

41ANDREA SARNERI - CORSO CESCOT 2010

Il linguaggio HTML appartiene alla categoria dei linguaggi di “markup”, deriva dall’SGML (Standard Generalized Markup Language) che è stato il primo metalinguaggio di markup descrittivo standardizzato a livello internazionale (ISO 8879 del 1986).

Con “markup” si intende l’aggiunta in un documento di testo, di marcatori /descrittori (marker/tag) che ne determinano la formattazione. Il linguaggio di markup definisce le regole con cui marcare (taggare) il testo al fine di ottenere la formattazione desiderata : es. corsivo, grassetto, blocco paragrafo, ecc…

HTML è un linguaggio di markup di tipo descrittivo:Esempio:“questo testo è in grassetto” Viene scritto come: <b>questo testo è in grassetto</b><b> è il marcatore di inizio grassetto</b> è il marcatore di fine grassettoAd esempio tra due tag è possibile racchiudere un link ad un URL il browser presenterà questo URL sottolineato , diventando così un contenuto “attivo” (cliccando col mouse si aprirà la pagina corrispondente all’URL)

Il Web, WWW, ipertesti e sintassi HTML

Il Livello di applicazione

42ANDREA SARNERI - CORSO CESCOT 2010

I documenti HTML sono la base di tutti i documenti del WEB, seguono una struttura standard che prevede •sezione di intestazione o header, delimitata tra i tag <head> e </head>, che contiene informazioni di controllo normalmente non visualizzate dal browser, con l'eccezione di alcuni elementi •sezione del corpo o body, delimitata tra i tag <body> e </body>, che contiene la parte informativa vera e propria, ossia il testo, le immagini e i collegamenti che costituiscono la parte visualizzata dal browser.

Il tutto è all’interno di due tag<html></html> che delimitano l’intero documento. Si tratta quindi di una struttura “annidata”, o ad albero.

Il Web, WWW, ipertesti e sintassi HTML

Il Livello di applicazione

Page 22: Corso TECNICO DI RETE · 11/01/2011 4 ANDREA SARNERI -CORSO CESCOT 2010 7 Il Client DHCP è un host che ha bisogno di ottenere un indirizzo IP valido per la sottorete a cui è collegato,

11/01/2011

22

43ANDREA SARNERI - CORSO CESCOT 2010

Il Web, WWW, ipertesti e sintassi HTML

Il Livello di applicazione

Il browser è lo strumento che implementa il client di un HTTP server, poi integra altri client con le funzionalità necessarie ad operare sui diversi servizi:Interprete HTMLClient HTTPClient FTPClient email

44ANDREA SARNERI - CORSO CESCOT 2010

Il Protocollo LPD/LPR

Il Livello di applicazione

Protocollo di stampa remota indipendente dalla piattaforma che utilizza il TCP/IP

Il protocollo è costituito da due componenti:Line Printer Remote (LPR) indica il procesco che invia lavori di stampa allastampante o alla coda di stampa. La workstation o il PC che invia la stampa è ilClient LPR.Il Line Printer Daemon (LPD) è il processo che riceve il lavoro di stampa dal LPR client. La stampante o il print server che riceve i lavori è il Server LPD. Il Client LPD invia I dati di stampa all’indirizzo IP del server LPD.

Quando un utente lancia "stampa", il computer (client LPR) inizia lo spooling del processo di stampa e genera un formato comune, ad esempio PostScript. Un file di dati di stampa di solito si compone di due elementi: 1. il file di dati con il contenuto effettivo da stampare2. il file di controllo che comprende la descrizione dei file di dati e informazioni

su cosa deve essere fatto con essoSuccessivamente, il processo di stampa viene inviato all'indirizzo IP del server LPD

dove è ricevuto tramite la porta TCP / IP 515. .