Comunicazioni Multimediali II

Slides:



Advertisements
Presentazioni simili
Training On Line - CONP. 2 Richiesta Da Menu: Conferimenti ad inizio anno termico > Agosto > Pluriennali > Nuova Richiesta Si accede alla pagina di Richiesta.
Advertisements

Gli ipertesti del World Wide Web Funzionamento e tecniche di realizzazione a cura di Loris Tissìno (
1 MeDeC - Centro Demoscopico Metropolitano Provincia di Bologna - per Valutazione su alcuni servizi erogati nel.
TAV.1 Foto n.1 Foto n.2 SCALINATA DI ACCESSO ALL’EREMO DI SANTA CATERINA DEL SASSO DALLA CORTE DELLE CASCINE DEL QUIQUIO Foto n.3 Foto n.4.
1 Pregnana Milanese Assessorato alle Risorse Economiche Bilancio Preventivo P R O P O S T A.
Informatica e Telecomunicazioni
Elaborazione del Book Informatico
ISA Server 2004 Enterprise Edition Preview. ISA Server 2004.
ISA Server 2004 Configurazione di Accessi via VPN
Configuring Network Access
Public Key Infrastructure
Java Enterprise Edition (JEE)
Frontespizio Economia Monetaria Anno Accademico
Reti Private Virtuali (VPN)
IL NOSTRO LABORATORIO. Di INFORMATICA.. Presentazione: Nel nostro laboratorio abbiamo 24 postazioni con dei computer di tipo Desktop con queste caratteristiche:
IL NOSTRO LABORATORIO. Di INFORMATICA..
IL NOSTRO LABORATORIO. Di INFORMATICA.. Presentazione: Nel nostro laboratorio abbiamo 24 postazioni con dei computer di tipo Desktop con queste caratteristiche:
Organizzazione di una rete Windows 2003
4-1 Mobilità in Internet Crediti Parte delle slide seguenti sono adattate dalla versione originale di J.F Kurose and K.W. Ross (© All Rights.
Anno Accademico Corso di Informatica Informatica per Scienze Biologiche e Biotecnologie Anno Accademico
1 Seconda ora Larchitettura di un sistema di e- government: parte seconda Un esempio di progetto di e-Government: il progetto servizi alle imprese Un esempio.
Programmazione 1 9CFU – TANTE ore
Secure Shell Giulia Carboni
ICT (Information and Communication Technology):
Architettura Three Tier
Ufficio Studi UNIONCAMERE TOSCANA 1 Presentazione di Riccardo Perugi Ufficio Studi UNIONCAMERE TOSCANA Firenze, 19 dicembre 2000.
SEVER RAS.
PPPoE significa "Point-to-Point Protocol over Ethernet" ovvero "protocollo punto a punto operante su Ethernet", una nuova alternativa per le connessioni.
Architettura del World Wide Web
Corso di Informatica Corso di Laurea in Conservazione e Restauro dei Beni Culturali Gianluca Torta Dipartimento di Informatica Tel: Mail:
SSL (Secure Socket Layer)
La partita è molto combattuta perché le due squadre tentano di vincere fino all'ultimo minuto. Era l'ultima giornata del campionato e il risultato era.
Reti di Calcolatori IL LIVELLO RETE.
Concetti introduttivi
Reti di Calcolatori IL LIVELLO RETE.
4 Cosa è una rete? ã Punto di vista logico: sistema di dati ed utenti distribuito ã Punto di vista fisico: insieme di hardware, collegamenti, e protocolli.
Univ. Studi di Roma FORO ITALICO Prof. Stefano Razzicchia 1 UNIVERSITA STUDI DI ROMA FORO ITALICO Corso di Laurea Triennale INFORMATICA Lez. 6.
Corso di Informatica per Giurisprudenza Lezione 7
2 3 4 RISERVATEZZA INTEGRITA DISPONIBILITA 5 6.
La sicurezza può essere fornita in ciascuno degli strati: applicazione, trasporto, rete. Quando la sicurezza è fornita per uno specifico protocollo dello.
Modulo 1: 1.3 Le Reti.
1 Negozi Nuove idee realizzate per. 2 Negozi 3 4.
ISOIVA (LOCALE) TO ISOIVA (WEB) RIPARTIZIONE INFORMATICA UFFICIO APPLICATIVI AMMINISTRATIVI 13/04/2011 UNIVERSITÀ DEGLI STUDI DI FERRARA 1.
ECDL Patente europea del computer
Secure Socket Layer (SSL) Transport Layer Security (TLS)
Server Web in una rete Windows Sommario Meccanismi di accesso remoto Meccanismi di accesso remoto Introduzione ai Server Web Introduzione ai Server.
21 marzo 2002 (ri-)Avvisi: Giovedi 28 marzo la lezione e sospesa. Nuovo indirizzo di Spedire messaggi e esercizi solo.
1 Ripassino Reti di Computer Carasco 19/02/ Che cosa è una rete informatica? Una rete informatica è un insieme di computer connessi tra di loro.
ECDL Patente europea del computer
Reti di Calcolatori ed Internet Fabio Massimo Zanzotto.
IPSec Fabrizio Grossi.
Web Information Systems Prof
prof.ssa Giulia Quaglino
Distributed System ( )7 TCP/IP four-layer model.
Dischi in RAID  Redundant Array of Independent Disk Configurazione che permette di combinare più dischi secondo obiettivi di performance e ridondanza.
Protocolli e architetture per WIS. Web Information Systems (WIS) Un Web Information System (WIS) usa le tecnologie Web per permettere la fruizione di.
SIARL ARCHITETTURA DEL SISTEMA E GESTIONE DELLA SICUREZZA Milano, 5 novembre 2003 Struttura Sistemi Informativi e Semplificazione.
Creato da Riccardo Nuzzone
IL GIOCO DEL PORTIERE CASISTICA. Caso n. 1 Il portiere nella seguente azione NON commette infrazioni.
Certificati e VPN.
CUBE firewall Lic. Computers Center aprile 2003 Villafranca di Verona, Italia.
VPN Marco Sanlorenzo.
IPSEC Studente Professore Michele Di Renzo Stefano Bistarelli.
Servizi Internet Claudia Raibulet
Reti II Stefano Leonardi
Layered Grid Architecture. Application Fabric “Controlling elements locally”: Access to, & control of, resources Connectivity “Talking to Grid elements”:
Internetworking V anno.
I FIREWALL. COSA SONO I FIREWALL? LAN MONDO ESTERNO UN FIREWALL E’ UN SISTEMA CHE SUPPORTA UNA POLITICA DI CONTROLLO DEGLI ACCESSI FRA DUE RETI (POLITICHE.
1 Il livello transport. Concetti fondamentali - Canale logico e canale fisico 2 Quando un segnale deve essere trasmesso, viene inviato su un Canale, cioè.
Virtual Private Networks
Transcript della presentazione:

Comunicazioni Multimediali II

Comunicazioni Multimediali Lo scopo delle Comunicazioni Multimediali è quello di fornire servizi di telecomunicazione che integrano diversi flussi informativi: dati testo voce e audio immagini fisse ed in movimento Video Applicazioni Mediche (remote diagnostics), educative (distance learning), editoriali (virtual library), bancarie, amministrative Paradigma: fruizione remota di applicativi multimediali

Programma (Prima parte) Applicazioni Aziendali (Multimediali e Web) Tipologie e requisiti di Rete Aziendale Reti VPN IP tunneling e crittografia Indirizzi IP privati e NAT/PAT Firewall (es. IPCOP) Reti WAN MPLS

Applicazioni Aziendali (multimediali e via web)

Tipologie di applicativi e servizi Applicativi di informazione per la fornitura su richiesta di informazioni strutturate e classificate (gestione personale, anagrafiche, tipologia prodotti, etc.) accesso a pagine dinamiche (form) e interrogazioni a basi di dati Applicativi di comunicazione per interagire con il pubblico ovvero gruppi di individui basati su e-mail, liste di discussione, chat, form per inserimento richieste, .. Applicativi transazionali per acquistare prodotti o servizi on line o per trasmettere dati Generalmente basate: o su applicazioni client-server o su WEB

Classificazioni di applicativi/servizi on line Business to Consumer B2C varianti: G2C (Government to Citizen) servizi operativi per clienti Business to Business B2B varianti: G2G (Government to Government) servizi operativi tra aziende

Applicativo WEB esempio

Applicativo WEB

Applicativo WEB

Applicativo WEB

Applicazioni WEB Il web offre enormi potenzialità per lo sviluppo di sistemi informativi Tuttavia ci sono alcuni limiti Il protocollo HTTP è privo di stato E' necessario produrre le risposte dinamicamente Prime soluzioni (inefficaci e inefficienti) CGI: permette ad un server HTTP di interagire con applicazioni Cookie: permette di gestire lo stato Soluzione attuale (efficiente ed efficace) Application server: una piattaforma complessa per lo sviluppo di veri e propri sistemi informativi su web

Web Story Inizialmente Problemi Server Web: obiettivo fornire contenuti “statici” Documenti in formato HTML Problemi Come offrire contenuti “dinamici” ? Ad esempio, pagine costruite dinamicamente a partire da dati memorizzati in un database Come offrire costruire veri e propri sistemi informativi su web? Non solo pubblicazione di dati, ma anche operazioni (es. bonifico bancario) I server Web, inizialmente nati per fornire solo contenuti statici (file .html), molto presto si sono trasformati in contenitori di servizi interattivi. Questi servizi sono forniti da “applicazioni Web”

Wide area network (Internet) Web Story Inizialmente: contenuti statici Il Server web offre solo contenuti statici (file) Le richiesta HTTP dei browser fanno riferimento a file memorizzati nel file system (dell'host sul quale risiede il server Web) File server Questa è l’architettura tradizionale di un server Web con contenuti esclusivamente statici Browser HTTP server File html Wide area network (Internet)

Wide area network (Internet) Web Story Problemi: come offrire contenuti dinamici Il Server web per rispondere ad una richiesta HTTP attiva una applicazione che "crea" la risposta (un documento HTML) Una prima soluzione: Common Gateway Interface (CGI). Un meccanismo che permette ad un server Web di interfacciarsi con una applicazione esterna e per es. ad un database Questa è l’architettura tradizionale di un server Web con contenuti esclusivamente statici database Browser HTTP server Programma CGI Wide area network (Internet)

Web Story Costruire sistemi informativi su Web Il problema principale è la gestione dello stato (es. Autenticazione o più in generale "conversazioni") Il protocollo HTTP è privo di stato Ogni richiesta non ha memoria delle precedenti Per realizzare operazioni complesse serve un meccanismo per mantenere traccia dello stato della sessione tra una richiesta e l’altra

Mantenere lo stato delle sessioni Cookies originariamente introdotti da Netscape meccanismo per tenere traccia dello stato della sessione in applicazioni Web standardizzati successivamente IETF RFC 2109 – HTTP State Attenzione il loro uso è controverso (privacy)

Cookies Idea fondamentale Set-Cookie Cookie Utilizzare le intestazioni HTTP per "nascondere" informazioni che vengono scambiate tra client e server Vengono introdotte due nuove intestazioni Set-Cookie nelle risposte del server per inviare un cookie Cookie nelle richieste del client per restituire i cookie

Gestione della sessione Il segreto sta nel fatto che abbiamo una informazione "nascosta" scambiata tra il server e il client il client si impegna a ritornare questa informazione al server ad ogni richiesta il server usa questa informazione per ricostruire ai propri fini la storia delle interazioni con il client

CGI + Cookie: applicazioni In linea di massima CGI e cookie permettono di realizzare applicazioni complesse Ma questa tecnologia è rudimentale, in particolare è inefficace Applicazioni difficili da mantenere, non scalabili

Application Server Per superare questi problemi (efficienza ed efficacia) sono stati sviluppati gli Application server Application server: Fornisce servizi per lo sviluppo di applicazioni Web complesse Offre un'infrastruttura per la programmazione (librerie) di applicazioni Web complesse Lavora congiuntamente al server HTTP (oppure include un server HTTP)

Application Server Infrastruttura di programmazione minima offerta: decodifica delle richieste del client (es: decodifica di valori sottomessi con una form) gestione del ciclo di vita delle applicazioni gestione delle sessioni gestione di informazioni condivise (dataBase) supporto alla produzione della risposta HTTP (se si usa http esterno)

Application Server Alcuni servizi offerti replicazione e “clustering” per: bilanciamento del carico alta affidabilità (“failover”) gestione trasparente delle sessioni sicurezza servizi Web (“Web services”)

Application Server CHAPTER 2 FIGURE 2 -section 1.2 HTTP Http server browser presentation layer application logic layer connection to resource mgmt layer wide area network (Internet) CHAPTER 2 FIGURE 2 -section 1.2 application server resource management layer

Enterprise Architecture Tipica struttura eBusiness RAID storage (NAS or SAN) Robotic tape library Application servers Database servers Archive server Web server(s) User Intranet Internet Enterprise Architecture

Architettura Three Tier Database Server Web Server Application Server

Three Tier Web These servers may be independent HTTP Request / RPC Call HTTP Request SQL Query HTTP Response Result Set HTTP Response / RPC Return Client Web Browser Internet / Intranet Web Server (presentation) App Server (business logic) Database (resource) These servers may be independent or may run on the same machine

Ridondanza - Clustering FC switch 1 FC switch 2 Raid HW OS Fiber Channel GigabitEthernet Database server 1 server 2 Application

Tipica struttura eBusiness Internet Router / Proxy Firewall /Security Web Server The layers of a typical e-business configuration consists of Cache engines for caching frequently accessed HTTP pages of Web servers Web servers to reply to requests concerning static Web contents A firewall for protecting the mission critical data from unauthorised access or destruction Application servers and database servers to perform transaction and to reply to requests concerning dynamic Web contents Storage systems Firewall Cluster Protected area Application Server Data flow Database Server Database

Disaster Recovery Data Center LAN LAN Database Server Application Server The challenge is to split cluster into two units and host it in different buildings Management station SAN

Tipologie di rete aziendale

Reti aziendali Quattro tipologie: Rete non protetta Rete privata Rete ibrida Rete VPN

Rete Sicura Una RETE INFORMATICA si può definire sicura quando: Consente l’accesso a sistemi, servizi e risorse solo a persone autorizzate Protegge la sicurezza e la privacy delle transazioni da e verso Internet

Rete non Protetta Sottorete 1 Sottorete 2 R1 Internet R2 La Sottorete 1 può comunicare con la Sottorete 2 in modo non protetto usando Internet L’accesso a Internet avviene attraverso i router R1 e R2 Tutti gli host delle 2 sottoreti devono avere indirizzi IP globali

Rete privata Rete (server, host router) inaccessibile al traffico di altre reti Implementazione tipica: affitto di linee tra i nodi della rete privata Vantaggi potenziali Riuso degli indirizzi Riservatezza e protezione

Rete privata Linea dedicata Rete privata In questo caso la rete è completamente inaccessibile dall’esterno

Rete privata: vantaggi Per “l’impresa”: - sicurezza - flessibilità nella gestione dell’indirizzamento: ampia disponibilità di indirizzi gestione privata dell’univocità Per la comunità: risparmio di indirizzi Svantaggio: non fruibilità all’esterno

Rete ibrida Linee dedicate connettono i diversi gruppi di nodi che formano la rete privata Alcuni o tutti i gruppi sono connessi al resto di Internet  indirizzi IP pubblici (globali) Possibilità di riservatezza e protezione con collegamento verso l’esterno: Traffico privato su linee dedicate Traffico da/verso il resto di Internet su linee condivise

Linea privata dedicata Rete ibrida Sottorete 1 Sottorete 2 Internet R2 R1 Linea privata dedicata La Sottorete 1 può comunicare con la Sottorete 2 in modo riservato usando la linea dedicata L’accesso a Internet avviene attraverso i router R1 e R2 Gli host che accedono all’esterno usano indirizzi IP globali

Rete virtuale privata (VPN) Cerca di limitare gli svantaggi delle soluzioni precedenti: -Reti non protette  l’uso di Internet per la connessione tra sottoreti non offre riservatezza e protezione -Reti completamente private o ibride sono costose  affitto o installazione linee dedicate Rete virtuale privata (VPN) Non usa linee dedicate Traffico da/verso nodi della rete privata autenticato, criptato e incapsulato (tunneling)

Rete VPN Sottorete 1 TUNNEL CRITTOGRAFATO Sottorete 2 R1 Internet R2 La Sottorete 1 può comunicare con la Sottorete 2 in modo riservato usando il tunnel sicuro su Internet L’accesso a Internet avviene attraverso i router R1 e R2 R1 ed R2 devono avere indirizzi IP globali Le 2 sottoreti usano indirizzi IP privati (per facilità di riuso)

Tecniche per il VPN Tunneling Crittografia (cifratura) Autenticazione pacchetti incapsulati in pacchetti IP standard come parte dati Crittografia (cifratura) pacchetti cifrati alla sorgente e decifrati a destinazione Autenticazione Solo gli utenti autorizzati accedono alla rete Unica parte visibile: intestazione del pacchetto esterno Incapsulamento o tunneling: la parte dati contiene il pacchetto originario cifrato Indirizzi IP sorgente e destinazione originali cifrati

VPN - Esempio Pacchetto D1 da Host1 a Host2 D1 cifrato da R1  D2 Sottorete 2 Sottorete 1 D2 D2 D1 Host2 Internet R2 R1 D1 Host1 Decifratura Cifratura Pacchetto D1 da Host1 a Host2 D1 cifrato da R1  D2 D2 giunge a R2 e viene decifrato  D1 D1 è consegnato a Host2

Tabella di routing di R1 R1 R3 Internet R4 R2 Destinazione Next hop 128.10.2.0 R2 Rete 128.10.2.0 Rete 192.5.48.0 192.5.48.0 Tunnel verso R3 default Router di ISP La entry di default indica che il pacchetto è inviato a Internet senza cifratura e tunneling

VPN Due tipologie Tre categorie Client-to-LAN LAN-to-LAN Remote Access VPN Intranet VPN Extranet VPN Client-to LAN LAN-to-LAN

Connecting Remote Networks to a Local Network VPN LAN-to-LAN: Local Network VPN Server Computer Internet VPN Tunnel VPN Server Computer Connecting Remote Networks to a Local Network Remote Network

Connecting Remote Users to a Corporate Network VPN Client-to-LAN: Corporate Network VPN Server Computer Internet VPN Tunnel Remote User Connecting Remote Users to a Corporate Network

VPN a confronto: LAN-to-LAN Prevede l’utilizzo di apparati/server che gestiscono la comunicazione VPN e fanno da gateway tra le due reti La crittografia è applicata solo nelle comunicazioni tra i gateway (tunnel-endpoint) Si usa soprattutto crittografia simmetrica (Symmetric Encryption) di tipo “Shared-Key”

VPN a confronto: Client-to-LAN E’ una tipica connessione uno (gateway/Access Point) a molti (Client) La crittografia è applicata alle comunicazioni tra il gateway ed N client La crittografia sietrica (di tipo “Shared-Key”) non è adeguata (distribuzione della chiave in N posti!) Si usano perciò soprattutto tecniche di crittografia asimmetrica (Asymmetric Encryption)

Tre Categorie di VPN WAN VPN Home Office Main Office POP Remote Office Intranet VPN Low cost, tunneled connections with rich VPN services, like IPSec encryption and QoS to ensure reliable throughput Home Office Main Office WAN VPN POP Remote Office Business Partner Extranet VPN Extends WANs to business partners POP Mobile Worker Remote Access VPN Secure, scalable, encrypted tunnels across a public network, client software

Principali problemi delle VPN Quality of service L’incapsulamento (tunneling) puo’ nascondere dei markers per la gestione della QoS Sicurezza Indirizzamento e raggiungibilità Visibilità esterna di servizi interni alla rete Gestione di reti con indirizzi privati: se si vuole collegare insieme 2 reti con lo stesso spazio di indirizzamento bisogna usare un NAT translator (che agisca facendo un pre-routing e un post-routing) Performance guarantees are necessary for companies that want to reduce their dependence on SNA networks. SNA networks provide bandwidth guarantees, so having a way to replace these is important. One of the proposals for integrated services, originally from Van Jacobson, provides for a virtual circuit type connection. I will talk about that further in the Integrated Services talk.

Tecnologie di VPN PPTP- point-to-point tunneling protocol L2F- layer-2 forwarding L2TP- layer-2 tunneling protocol IPSec- IP security protocol GRE- generic routing encapsulation MPLS- multiprotocol label switching

Tunneling IP

Tunneling IP Tecnica per l’attraversamento di una rete IP da parte di traffico non IP o IP con caratteristiche particolari. Strumento principale: incapsulamento pacchetti non IP all’interno di un pacchetto IP

Perchè il Tunneling IP Sicurezza - Tunneling + cifratura permettono di ottenere collegamenti sicuri su reti pubbliche (VPN) Collegamento di router con capacità non disponibili nel resto della rete - Es. Multicast Attraversamento di segmenti IP da parte di pacchetti di protocolli diversi - Es. IPv6 Mobile IP

Crittografia (Cifratura)

Crittografia Encrypted IP Packet

Tipi di chiave (KEY) Key type Description Symmetric Asymmetric La stessa chiave è usata per cifrare e decifrare i dati Protegge i dati dall’intercettazione Asymmetric Consiste in una chiave pubblica e una privata La chiave privata è protetta e confidenziale, la chiave pubblica è liberamente distribuibile Se viene usata la chiave privata per cifrare dei dati, gli stessi possono essere decifrati esclusivamente con la corrispondente chiave pubblica, e vice versa

Symmetric (Private Key) Encryption Original Data Cipher Text Original Data Symmetric encryption: Usa la stessa chiave per cifrare e decifrare E’ spesso referenziata come bulk encryption E’ intrinsicamente vulnerabile per il concetto di “Shared secret”: la chiave è condivisa

Asymmetric (Public Key) Encryption

Public Key Encryption 2 Encrypted Message is Sent Over Network Data Alice Encrypts Message with Bob’s Public Key. 1 3A78 Data Bob Decrypts Message with Bob’s Private Key. 3

Public Key Authentication ~*~*~*~ Message is Sent Over Network 2 ~*~*~*~ Alice Signs Message with Her Private Key. 1 ~*~*~*~ Bob Validates Message is From Alice with Alice’s Public Key. 3

Cifratura del pacchetto IP Parte dati di D1 Cifratura H2 D1 cifrato D2 H2 non è cifrato Indirizzi IP in H2 sono quelli di degli end-point (router o firewall che cifrano l’informazione) sorgente e destinazione (R1 ed R2) rispettivamente Indirizzi di Host1 e Host2 contenuti in H1 e perciò cifrati

Metodi di Cifratura Livello 2: Livello 3: Livello 4: apparecchiature dedicate PPTP Livello 3: cifratura dei pacchetti IP: SKIP, IPSEC Livello 4: cifratura della connessione TCP SSL, SSH

IPSEC Prevede: È trasparente alle applicazioni due tipologie di security header: AH (Autentication Header) e ESP (Encapsulation Security Payload) con alcune funzionalità (es. autenticazione) ridondanti due tipologie di sistemi: hosts e gateway due modalità di “incapsulamento”: transport e tunnel È trasparente alle applicazioni Richiede una modifica dello stack TCP/IP Permette l’associazione delle chiavi a sistemi o utenti Separa la cifratura del traffico dal meccanismo di gestione delle chiavi (IKE)

IPSec Security Headers Encapsulating security payload (ESP) Authentication header (AH) >> IP datagram security <<

ESP Header IP Packet Protected by ESP

ESP Transport Mode Il pacchetto è cifrato a livello di Trasporto Tunnel Mode Il pacchetto è cifrato a livello IP

AH Header IP Packet Protected by AH

AH Transport Mode Il pacchetto è cifrato a livello di Trasporto Tunnel Mode Il pacchetto è cifrato a livello IP

Tunnel IPSEC

Indirizzi IP privati

Indirizzi privati Alcuni blocchi di indirizzi sono riservati all’uso su inter-reti private non direttamente connesse a Internet Gli stessi indirizzi privati possono essere riusati da più organizzazioni Indirizzi non instradabili Un pacchetto destinato a un indirizzo privato viene riconosciuto da un router di Internet

Indirizzi privati Blocchi di indirizzi privati 10.0.0.0/8 172.16.0.0/12 192.168.0.0/16 Più sottoreti di Internet possono usare questi blocchi di indirizzi, purchè non siano accessibili dall’esterno Una VPN generalmente usa indirizzi privati per i nodi interni

Terminologia Stub domain: Una rete interna stub domain può essere per esempio una LAN aziendale che utilizza indirizzi IP privati, validi solo all'interno della rete locale. All'occorrenza gli host con indirizzo IP privato possono comunicare con Internet attraverso router con funzionalità NAT e PAT. Public/Global/External network: idirizzi ottenuti da IANA Private/Local network: indirizzi non ottenuti da IANA

VPN con indirizzi privati 223.190.16.1 220.128.3.2 10.1.0.1 10.2.0.1 R2 R3 Internet Internet 10.1.0.0/16 10.2.0.0/16 Le due sottoreti della VPN usano blocchi di indirizzi privati R1 ed R2 hanno bisogno di due indirizzi globalmente validi per il tunneling

Indirizzi privati: vantaggi/svantaggi Servono meno indirizzi globali Problema: gli host delle sottoreti locali non hanno accesso a Internet Per avere accesso a Internet serve un indirizzo IP globale Soluzione NAT: Network Address Translation - traduzione degli indirizzi di rete

Network Address Translation (NAT)

NAT - Network Address Translation Associazione (mappatura) di indirizzi pubblici a indirizzi privati Requisiti - Singola connessione a Internet - Almeno un indirizzo IP valido Proposto per la prima volta nel 1994 in risposta alla penuria di indirizzi IP: ad ogni istante, soltanto un sottoinsieme dei nodi della rete interna comunica verso l’esterno Il NAT è ormai usato con molte finalità - Realizzazione di reti non visibili all’esterno - Sicurezza

NAT Public Internet Private Network 128.32.32.68 24.1.70.210 10.0.0.1 BMRC Server Public Internet 24.1.70.210 Gateway 10.0.0.1 10.0.0.2 10.0.0.3 10.0.0.4 Host A Private Network

NAT statico Associazione statica tra un indirizzo globale e uno privato Usato quando un dispositivo deve essere accessibile dall’esterno

NAT dinamico Associazione dinamica tra un indirizzo globale e uno privato Il NAT ha a disposizione un pool di indirizzi globali Allo stesso indirizzo privato possono essere associati indirizzi pubblici diversi nel tempo Scadenza binding determinata da timer Accessibilità di host interno solo se ha iniziato per primo la comunicazione.

NAT dinamico/1 indirizzo globale 10.1.0.1 223.190.16.1 D2 R Internet Internet D1 10.1.0.2 Router NAT Traduzione per i pacchetti da/verso 10.1.0.2 IP sorgente di D1: 10.1.0.2  223.190.16.1 IP destinazione di D2: 223.190.16.1  10.1.0.2 Come fa R a capire che D2 è diretto a 10.1.0.2?

Percorso inverso Uscire dallo spazio di indirizzamento privato non è un problema Il problema è il percorso inverso

Problemi implementativi Tutti i pacchetti in arrivo ad R da Internet hanno lo stesso indirizzo di destinazione (es.: 223.190.16.1) Come distinguere la destinazione all’interno della rete locale? D2 è la risposta a D1, quindi la destinazione reale di D2 è 10.1.0.2 Soluzione: si creano tabelle di traduzione NAT -Esistono diversi casi (le tabelle di traduzione cambiano nei seguenti casi): NAT semplice NAT multi-indirizzo NAT con mappatura delle porte (PAT) o NAT Masquerade

NAT semplice Tutti i pacchetti in arrivo al router NAT hanno lo stesso IP di destinazione (un solo IP pubblico disponibile) Le tabelle di traduzione NAT si basano sulla seguente assunzione: Se l’host interno H invia un pacchetto all’host di Internet A allora i pacchetti provenienti da A sono diretti a H Funziona se al più 1 host interno vuole inviare pacchetti allo stesso host globale  al massimo 1 macchina locale può accedere a una stessa macchina su Internet

Tabella di traduzione di R Tabella NAT semplice Internet R 10.1.0.2 Router NAT 225.12.3.25 225.12.3.28 10.1.0.3 225.12.3.28 10.1.0.2 225.12.3.25 10.1.0.3 Provenienza Dest. host Tabella di traduzione di R 10.1.0.2 comunica con 225.12.3.28 10.1.0.3 comunica con 225.12.3.25 la prima volta che R riceve un pacchetto da 10.1.0.2 per 225.12.3.28 crea l’entry (225.12.3.28, 10.1.0.2 ) nella tabella NAT Non permette l’inizio della comunicazione da parte di un Host esterno

NAT multi-indirizzo L’interfaccia esterna del router NAT ha più indirizzi globali associati Gli indirizzi globali sono assegnati a rotazione come indirizzi sorgente dei pacchetti uscenti K indirizzi globali permettono fino a K connessioni di host interni con la stessa macchina su Internet

NAT multi-indirizzo (K=2) 10.1.0.3 223.190.16.1 223.190.16.2 10.1.0.1 225.12.3.28 10.1.0.4 R Internet Internet Router NAT 10.1.0.2 225.12.3.25 Provenienza IP global dest. Dest. host 10.1.0.2 e 10.1.0.4 comunicano con 225.12.3.28 10.1.0.3 comunica con 225.12.3.25 225.12.3.28 223.190.16.1 10.1.0.2 225.12.3.28 223.190.16.2 10.1.0.4 225.12.3.25 223.190.16.1 10.1.0.3 Tabella di traduzione di R

NAT semplice con mappatura delle porte (PAT o NAT Masquerade) Il router NAT individua le destinazioni (interne) dei pacchetti provenienti da Internet anche in base al protocollo di trasporto (TCP o UDP) e alle relative porte (SAP e DAP) Usa quindi anche i numeri di porta Necessità di estendere le entry della tabella di traduzione NAT con nuovi campi (fields)

Mappatura delle porte 10.1.0.1 128.10.19.20 10.1.0.2 223.190.16.1 10.1.0.3 R Internet Internet 10.1.0.5 Router NAT 10.1.0.6 10.1.0.1 e 10.1.0.5 hanno ciascuno una connessione HTTP verso 128.10.19.20 Gli altri host hanno connessioni TCP verso altre macchine non mostrate in figura

Tabella NAT/PAT Indirizzo privato Porta privata Indirizzo esterno Porta esterna Porta NAT 10.1.0.5 21023 128.10.19.20 80 14003 10.1.0.1 386 14010 10.1.0.6 26600 207.200.75.12 21 14012 10.1.0.3 1274 128.210.1.5 14007 Tabella NAT Le prime due righe corrispondono alla figura precedente Manca colonna protocollo di trasporto (TCP in tutti i casi)

Tabella NAT/PAT Il router NAT mantiene un numero di porta NAT distinto per ciascuna connessione Due host locali potrebbero scegliere lo stesso numero di porta privata La macchina 128.10.19.20 individua le due connessioni corrispondenti alle prime due righe della tabella precedente così: (223.190.16.1, 14003, 128.10.19.20, 80) (223.190.16.1, 14010, 128.10.19.20, 80)

Discussione su NAT Il NAT interagisce con i protocolli di strati superiori (TCP-UDP-ICMP) Il NAT deve: Modificare gli header IP Modificare i numeri di porta TCP e UDP Ricalcolare i checksum (perchè gli header cambiano) Gestire esplicitamente messaggi ICMP (es. ping) Traduzione di numeri di porta per es. in sessioni FTP

Discussione su NAT NAT altera il principio di comunicazione End-to-End Principle perchè modifica i pacchetti. La sostituzione degli indirizzi IP/porte implica il ricalcolo del checksum Viene usata la tabella di traduzione NAT per risalire a sorgente e destinatario NAT works bets with applications that make connections to the outside world using TCP connections. It has trouble with datagram protocols.

TCP Protocol Diagram Client Server IP Header TCP Header SYN SYN flag indicates a new TCP connection Client Server IP Header . . . . . SYN, ACK Checksum ACK Source IP Address Destination IP Address . . . . . Packet 0:50 ACK 0:50 TCP Header FIN Source Port Number Dest Port Number FIN, ACK Sequence Number . . . . .

TCP con NAT PROTO SADDR DADDR SPORT DPORT FLAGS CKSUM TCP 10.0.0.3 128.32.32.68 1049 80 SYN 0x1636 1 1. Host tries to connect to web server at 128.32.32.68. It sends out a SYN packet using its internal IP address, 10.0.0.3. PROTO SADDR DADDR SPORT DPORT FLAGS CKSUM TCP 24.1.70.210 128.32.32.68 40960 80 SYN 0x2436 2 2. NAT gateway sees SYN flag set, adds new entry to its translation table. It then rewrites the packet using gateway’s external IP address, 24.1.70.210. Updates the packet checksum. Internet Server NAT Gateway PROTO SADDR DADDR SPORT DPORT FLAGS CKSUM TCP 128.32.32.68 10.0.0.3 80 1049 SYN, ACK 0x7841 4 4. NAT gateway looks in its translation table, finds a match for the source and destination addresses and ports, and rewrites the packet using the internal IP address. PROTO SADDR DADDR SPORT DPORT FLAGS CKSUM TCP 128.32.32.68 24.1.70.210 80 40960 SYN, ACK 0x8041 3 3. Server responds to SYN packet with a SYN,ACK packet. The packet is sent to the NAT gateway’s IP address. 128.32.32.68 10.0.0.3 10.0.0.1 24.1.70.210 NAT Translation Table Client Server IPAddr Port IPAddr Port NATPort 10.0.0.3 1049 128.32.32.68 80 40960 . . . .. . . . .. . .

Interazione tra dispositivi NAT Due dispositivi NAT semplice 10.1.0.1 223.190.16.1 192.168.1.1 10.1.0.3 223.190.16.10 10.1.0.2 R1 R2 192.168.1.2 10.1.0.5 Internet Router NAT 10.1.0.6 Router NAT 10.1.0.6 192.168.1.3 NAT semplice Rete 2 Rete 1

Tabella di traduzione di R Tabelle NAT semplice R1 sostituisce il suo indirizzo 223.190.16.1 ai pacchetti diretti verso l’esterno. R2 sostituisce il suo indirizzo 223.192.16.10 ai pacchetti diretti verso l’esterno. I pacchetti hanno come indirizzi sorgente e destinazione R1 ed R2 Non vi è modo di distinguere due comunicazioni tra host di Rete 1 e Host di Rete 2e quindi di comunicazione tra le 2 reti 192.168.1.1 10.1.0.?? Provenienza Internal Dest. host Tabella di traduzione di R

NAT multi-indirizzo 223.190.16.1 223.190.16.2 223.190.16.3 223.190.16.10 223.190.16.11 223.190.16.12 10.1.0.1 10.1.0.3 10.1.0.2 R2 R1 Internet 10.1.0.5 Router NAT 10.1.0.6 Rete 1

Tabelle di NAT multi-indirizzo 223.190.16.10 10.1.0.2 10.1.0.4 Provenienza Dest. host Tabella di traduzione di R1 IP global dest. 223.190.16.1 223.190.16.2 223.190.16.3 10.1.0.3 192.168.1.1 192.168.1.2 Tabella di traduzione di R2 Sono Possibili tutte le comunicazioni da host su Rete 1 ad Host su Rete 2

Server Load Balancing con NAT Public Internet NAT Gateway (Virtual Server) Server Private Intranet Server Server Un solo indirizzo IP per il server WEB NAT fa il redirect delle richieste su più server interni distribuendo il carico (workload balancing  clustering) Offre il vantaggio di alta affidabilità

Reti Load Balancing con NAT Service Provider 1 Private Intranet NAT Gateway Network X Service Provider 2 Le connessioni dalla rete privata sono indirizzate selettivamente (split) a 2 diversi Service Providers Bilanciamento di carico a livello di connessione