Introduzione al Networking Versione 1.2 febbraio 07
Definizione di rete: una serie di computer e/o dispositivi collegati insieme al fine di condividere delle risorse e dei dati
Rete casalinga Poter utilizzare risorse di altri PC, divertimento (net game), condividere una connessione ad internet Connessione tramite Hub Velocità 10/100Mbps
Rete aziendale Esigenze di backup Condivisione di periferiche “pregiate” Connessione ad Internet veloce e “sicura” Interconnessioni tramite switch e router Velocità 100Mbps/1Gbps
Rete PAN Collegamento fonia, palmare, notebook Connessione ad Internet per servizi mail Interconnessioni IrDA, Bluetooth Velocità 2Mbits
ISP Server Web Servizi dial-up Gestione della banda Internet Sicurezza e ridondanza dei servizi Intranet / Internet Velocità Gbps
Quello che serve… Due Pc (almeno) NIC su ogni PC Mezzo trasmissivo (cavo) Hub o Router Software di rete (protocolli di trasmissione e tools di configurazione)
Scheda di rete Slot ISA, PCI, Integrata, PCMCIA Transfer rate 10/100Mbps MAC address a 48 bit (6 byte)
Cablaggio Cavo coassiale: obsoleto Doppino (10BaseT): più diffuso; Categoria 3 -> utilizzato dalle linee telefoniche (4 fili)obsoleto Categoria 5(e) -> utilizzato per reti dati (dati/voce, 8 fili) UTP (Unshielded Twisted Pair) Wireless 802.11b 802.11g Fibre ottiche: connessione tra grandi reti, ottima affidabilità e velocità
Cavo (RJ-45) Standard: PC <-> Hub Cross: PC <-> PC Note: 10BaseT ->4 pin su 8 100BaseT ->8 pin su 8 Console: porta COM <-> router
HUB Collega più terminali sullo stesso segmento di rete Condivisione della banda (velocità)(Se user1 utilizza 5% di una Fast Ethernet 100Mbps, altri usa 95Mbps) Propaga il segnale a tutti i terminali connessi (sarà il PC ad accettare o meno il pacchetto)
Switch Banda dedicata, (switch 10Mbps, ogni utente 10Mbps) “Segmenti” di rete separati per ogni porta Propagazione del segnale (pacchetto) solo al destinatario Sicurezza: una porta aperta tra source e destination
Router connette due (o più) reti trasferendo solo i pacchetti di un tipo di protocollo di rete determinato (TCP/IP, IPX/SPX, ecc.), indipendentemente dal tipo di reti fisiche connesse effettivamente. connette reti separate che hanno schemi di indirizzamento differenti, ma che utilizzano lo stesso tipo di protocollo di rete (al terzo livello ISO/OSI) Utilizza una tabella per l'instradamento dei pacchetti attraverso le reti che connette
Pacchetti I dati viaggiano nella rete in forma di pacchetti I dati possono essere suddivisi e aggregati in modi differenti (in base alle esigenze di trasmissione) Il confezionamento e le dimensioni dei pacchetti dipendono dal tipo di rete fisica utilizzata.
Formato dei pacchetti IP: Header 5 o 6 words Body (payload) Protocol (TCP, UDP) Sorce Add, Dest Add TCP: Source e Dest Port (80, 23, 8080, 21) Sequence e Acknowledgment num Windows(buffer R/W) SYN: sincronizza seq num start conn ACK: convalida ack num FIN: termine invio dati mittente RST: resetta e chiude la connessione
Protocolli I pacchetti di dati vengono trasmessi e ricevuti in base a delle regole definite da un protocollo di comunicazione Protocollo non connesso:non fornisce il mezzo per determinare se il messaggio è giunto o meno a destinazione (solo destinatario) Protocollo connesso:prevede la conferma dell'invio di un messaggio, la ritrasmissione in caso di errore e la ricomposizione dell'ordine dei pacchetti
Modello ISO-OSI Problema complesso che in passato è stato alla base delle maggiori incompatibilità tra i vari sistemi (differenze legate all'hardware) Il modello OSI (Open system interconnection), diventato parte degli standard ISO(international Standard Organization), scompone la gestione della rete in livelli, o strati (layer) Non definisce uno standard tecnologico, ma un riferimento comune ai concetti che riguardano le reti.
Modello ISO-OSI Livello Definizione Descrizione 7 Applicazione Interfaccia di comunicazione con i programmi (Application program interface). 6 Presentazione Formattazione e trasformazione dei dati a vario titolo, compresa la cifratura e decifratura. 5 Sessione Instaurazione, mantenimento e conclusione delle sessioni di comunicazione. 4 Trasporto Invio e ricezione di dati in modo da controllare e, possibilmente, correggere gli errori. 3 Rete Definizione dei pacchetti, dell'indirizzamento e dell'instradamento in modo astratto rispetto al tipo fisico di comunicazione. 2 Collegamento dati Definizione delle trame (frame) e dell'indirizzamento in funzione del tipo fisico di comunicazione. 1 Fisico Trasmissione dei dati lungo il supporto fisico di comunicazione.
Livello 1 - Fisico Per avere connessione tra nodi, è necessario un supporto fisico, composto solitamente da un cavo e da interfacce di comunicazione. La connessione tipica in una rete locale è implementata utilizzando hardware Ethernet. I cavi e le schede Ethernet appartengono a questo primo livello.
Livello 2 – Trasporto (Dati) Nell'hardware Ethernet, ogni scheda ha un proprio indirizzo univoco (MAC address stabilito dal fabbricante) composto da 48 bit e rappresentato solitamente in forma esadecimale 00:A0:24:77:49:97
Livello 3 - Rete Protocollo per comunicare indipendentemente dal supporto fisico utilizzato, astraendo il modo di inviare blocchi di dati, l'indirizzamento di questi e il loro instradamento. Per quanto riguarda il TCP/IP, il livello del protocollo IP si occupa di questo compito. Se un pacchetto è più grande della dimensione massima trasmissibile in un tipo di rete fisica utilizzata, viene scomposto in segmenti più piccoli e ricombinati correttamente alla destinazione.
Livello 4 - Trasporto Protocolli di comunicazione che si occupano di correggere gli errori e di prevenire intasamenti della rete. TCP (Transmission control protocol):scomposizione e ricomposizione dei dati; verifica e riordino dei dati all'arrivo; ritrasmissione dei pacchetti perduti o errati; ricomposizione dei dati finali. UDP (User datagram protocol):protocollo non connesso, non esegue alcun controllo(DNS). Percorso di un pacchetto: origine (numero IP e porta) destinazione (numero IP e porta relativa)
Livello 5 - Sessione Servizi di rete (file system sharing, email, FTP, ecc.) con proprio protocollo, porte di servizio e meccanismo di trasporto Utilizzo consigliato delle stesse porte e stessi tipi di trasporto per i nodi che intendono comunicare servizio www (HTTP): porta 80 per comunicare protocollo di trasporto TCP Comunicazione livello 5 -> sessione. (apertura o termine di sessione)
Livello 6 - Presentazione Librerie (funzioni) in grado di gestire eventuali conversioni dei dati tra la sessione di comunicazione e il livello successivo. Uniformità dei dati inviati dal livello precedente, indipendentemente dalle caratteristiche fisiche delle macchine che li elaborano.
Livello 7 - Applicazione Utilizzazione delle risorse di rete. All’utente risultano del tutto trasparenti i livelli precedenti
Modello ISO-OSI abbinato al TCP/IP Livello ISO-OSI TCP(IP 7 Applicazione Applicazione con il suo protocollo (FTP, HTTP, SMTP, Telnet, …) 6 Presentazione 5 Sessione 4 Trasporto Protocolli TCP, UDP e ICMP 3 Rete Protocollo IP 2 Collegamento dati Protocollo della rete fisica 1 Fisico
Protocollo TCP/IP Rappresenta un sistema di protocolli di comunicazione basati su IP Normalmente utilizzato negli ambienti Unix Il protocollo IP si colloca al terzo livello ISO-OSI TCP si colloca al di sopra di questo e utilizza IP al livello inferiore
IPV4 Implementa una comunicazione indipendente dal supporto fisico utilizzato, astraendo il modo di inviare blocchi di dati, l'indirizzamento di questi e il loro instradamento Implementa una rete formata da nodi (host) identificati tramite un indirizzo L’indirizzo è una sequenza di 32 bit, suddivisi in quattro gruppi di 8 bit, separati da un punto, in base 10 (Notazione Decimale Puntata)
IPV4 00000001.00000010.00000011.00000100 1.2.3.4 Un indirizzo è formato da due parti: l'indirizzo di rete e l'indirizzo del nodo particolare La prima parte del numero (prefisso) definisce la zona (distretto telefonico) La seconda parte identifica l'apparecchio telefonico specifico di quella zona
Indirizzo di rete e broadcast 00000001.00000010.00000011.00000000 Indirizzo di rete 00000001.00000010.00000011.11111111 Indirizzo di broadcast 00000001.00000010.00000011.00000100 Indirizzo di rete nodo(host)
Maschera di rete Meccanismo utilizzato per distinguere la parte dell'indirizzo che identifica la rete E’un indirizzo abbinato all'indirizzo da analizzare con l'operatore booleano AND, per filtrare la parte di bit che interessano
Maschera di rete 00000001.00000010.00000011.00000100 nodo 11111111.11111111.11111111.00000000 maschera di rete 00000001.00000010.00000011.00000000 indirizzo di rete 1. 2. 3. 4 nodo 255.255.255. 0 netmask 1. 2. 3. 0 rete
Classi di indirizzi Classe A Primo bit a zero, 7 bit per l'indirizzo di rete, 24 bit per i nodi. (127r 16.777.214h) 0rrrrrrr.hhhhhhhh.hhhhhhhh.hhhhhhhh Appartengono a questa classe gli indirizzi compresi tra 1.___.___.___ e 126.___.___.___. Classe B Primo bit a uno e il secondo a zero, 14 bit per l'indirizzo di rete, 16 bit per i nodi. (16.384r 65.534h) 10rrrrrr.rrrrrrrr.hhhhhhhh.hhhhhhhh Appartengono a questa classe gli indirizzi compresi tra 128.1.___.___ e 191.254.___.___. Classe C Primo e il secondo bit a uno, terzo bit a zero, 21 bit per l'indirizzo di rete, 8 bit per i nodi. (2.097.152r 254h) 110rrrrr.rrrrrrrr.rrrrrrrr.hhhhhhhh Appartengono a questa classe gli indirizzi compresi tra 192.0.1.___ e 223.255.254.___.
Indirizzi speciali Classe D Classe E appartengono a questa classe gli indirizzi compresi tra 224.___.___.___ e 239.___.___.___. Classe E Appartengono a questa classe gli indirizzi compresi tra 240.___.___.___ e 247.___.___.___. 127.*.*.* indirizzi che identificano una rete virtuale interna al nodo stesso All'indirizzo 127.0.0.1 corrisponde una interfaccia immaginaria Ogni nodo utilizza questo indirizzo per riferirsi a se stesso e non “disturbare” la rete
Indirizzi riservati per reti private Permettono di rendere inaccessibili i nodi della propria rete locale alla rete globale Internet Si possono utilizzare questi indirizzi per configurare una rete locale classe A -> da 10.0.0.0 a 10.255.255.255 classe B -> da 172.16.0.0 a 172.31.255.255 classe C -> da 192.168.0.0 a 192.168.255.255
Configurazione step1 Windows: Risorse di rete -> Proprietà -> Connessione alla rete locale (LAN) Linux: DrakeConf, YAST, ifconfig Il PC così configurato accede ad Internet (modem)
Configurazione step2 Installare, se non presente, il protocollo TCP/IP Modificare la configurazione IP tramite Proprietà
Configurazione step3 Inserire l’indirizzo IP Compilare la SubnetMask Impostare il Gateway Specificare uno, o più, server DNS
Configurazione dei clients Ripetere la procedura modificando: Indirizzo IP Gateway -> utilizzare indirizzo IP del PC collegato ad Internet Server DNS -> utilizzare un indirizzo IP fornito dall’ISP o indirizzo IP del PC collegato ad Internet
Strumenti per la dignostica Ifconfig /all -> visualizza le informazioni relative alla scheda Ping x.x.x.x -> permette di inviare una richiesta di eco a un indirizzo, utilizzando il protocollo ICMP Tracert -> visualizza il percorso utilizzato effettivamente dai pacchetti per raggiungere una destinazione Browser
Configurazione Router ADSL Interfaccia Telnet o Web Indirizzo IP (statico se fornito dall’ISP) Gateway -> utilizzare indirizzo IP assegnato precedentemente Server DNS -> utilizzare un indirizzo IP fornito dall’ISP o dal NIC (Network Information Center) Funzionalità NAT e firewalling
NAT Network address translation, tecnica con la quale sostituire gli indirizzi IP reali con altri indirizzi. NAT è un metodo che consente alle macchine di una rete privata di comunincare con le altre macchine su internet. Possibilità di riutilizzare dinamicamente gli indirizzi IP riservati alle reti private, permettendo ugualmente a tali reti di accedere all'esterno, pur non essendo questi univoci a livello globale. Possibilità di gestire un numero ristretto di indirizzi IP univoci, da abbinare dinamicamente a degli indirizzi IP locali privati. NAT è eseguito sul router che collega la rete privata alla rete pubblica (internet), rimpiazza la coppia indirizzo IP , porta in un altra coppia indirizzo IP , porta .
NAT
NAT (Accenni) In base alle richieste provenienti dalla rete interna, è possibile abbinare temporaneamente un indirizzo IP univoco a un indirizzo IP privato interno.
Webografia http://www.informaticalibera.it/a2/HTML/ http://www.linux-ip.net http://tlpd.org/HOWTO/Net-HOWTO/