Guide: passo per passo

Condividi:        

NAT e Proxy

Network/P2P
PREMESSA: se non conoscete il significato di qualche parola consultate il nostro Glossario.
1. Introduzione

Tra gli argomenti di maggior frequenza che trovate sui NewsGroups c'è la condivisione di Internet su di una rete locale usando un solo access point (punto di accesso).

Come è normale ci sono numerose teorie, al riguardo oltre al fatto che i consigli si sprecano: chi opta per una soluzione Hardware basata su router ( apparecchio instradatore), chi sceglie di condividere un modem o una scheda ISDN utilizzando un Software.

Tra i tanti Software disponibili ne cito alcuni tra i più usati come Wingate (forse il più diffuso), l'ICS - Internet Connection Sharing - (presente nei S.O. di Microsoft a partire da Windows 98 SE), WinProxy, WinRoute e altri ce ne sarebbero. Da notare il successo di tutti quei software che iniziano per Win, propaganda occulta o autosuggestione?!?

Tutti questi prodotti permettono di ottenere il risultato voluto, ma lo fanno utilizzando tecniche diverse e con caratteristiche diverse, cioè il NAT o il Proxy.


NAT
E' l'acronimo di Network Address Traslation, ovvero la traslazione di più indirizzi di rete IP privati in un unico indirizzo IP pubblico fornito dall'ISP ( Internet Service Provider ).

Come funziona?
NAT usa una tabella contenente la corrispondenza tra i socket interni ed esterni in uso ( il socket non è altro che l'insieme di indirizzo IP e porta di comunicazione ).
Quando un client va a visitare una pagina web su un Server esterno, il suo indirizzo e la sua porta di origine vengono traslati o tradotti se vogliamo e la corrispondenza viene registrata nella tabella.
Quando arriva la risposta dal Server esterno, la tabella permette di capire chi voleva quei dati, quindi effettua la traslazione inversa dei dati e li manda al client richiedente.
Tutte le comunicazioni dall'esterno che non sono state registrate nella tabella vengono eliminate.

Un esempio:
Il client 192.168.1.1 utilizza, ad esempio, la prima porta disponibile 1111 per aprire una sessione Web con il Server 195.130.210.24 sulla porta 80.
Il Gateway ( PC o apparato con compiti di instradamento da una rete ad un'altra ) che sfrutta NAT riceve la richiesta e modifica l'intestazione dei pacchetti TCP, in modo che risultino generati da lui, quindi per esempio 62.130.25.14 (IP pubblico del Gateway) porta 2222.
Nella tabella viene inserita questa corrispondenza:

Origine            Traduzione          Destinazione
192.168.1.1:1111   62.130.25.14:2222   195.130.210.24:80


La destinazione finale riceverà i pacchetti da 62.130.25.14:2222, ed a questo socket spedirà i dati contenuti nelle pagine Web.
L'apparato Gateway riceve ora la risposta da 195.130.210.24:80, consulta la tabella e modifica l'intestazione dei pacchetti ricevuti per mandarli verso 192.168.1.1:1111.
Se arriva qualche pacchetto da indirizzi IP non richiesti, cioè non presenti in tabella, questi vengono scartati.
Come si evince l'idea di base è semplice, per questo gli sviluppi di NAT sono sempre affidabili e senza buchi.
Occorre capire che questa tecnica lavora ad un livello ISO/OSI ( Pila di Protocolli usata per dividere gli strati esistenti nel trasporto nei dati ) basso, opera modificando solamente le intestazioni dei pacchetti TCP, quindi non può analizzare il contenuto delle informazioni che tratta, proteggendo così la rete in modo completo e permettendo policy per le varie utenze.


Network/P2P: kadosh [243.691 visite dal 20 Dicembre 04 @ 00:01 am]