Salta il menu

NAT & PAT

Notizia del 11/06/2007

Il tutorial è frutto di qualche lezione che mi sta dando Mr. Z, che ringrazio (soprattutto per la tenacia e determinazione impiegate a colmare le mie lacune ;); in calce al post il glossario dei termini usati.

***

Vediamo come funziona "meccanicamente" l'inoltro di una richiesta da parte del client di una LAN a un server di una WAN.

Nello schema qui sotti i nodi coinvolti:

  • il client, ovvero il personal computer parte di una rete locale da cui sarà inviata attraverso il browser una richiesta per Google
  • il router, cioè l'apparecchio che rappresenta il gateway, il punto di connessione tra la rete locale e Internet
  • il server di Google che riceverà e smaltirà la richiesta

Gli indirizzi IP coinvolti sono:

  • 192.168.1.10 -> il numero del personal computer; per l'esattezza il numero del computer è solo 10, il resto è il numero della sottorete a cui è collegato
  • 192.168.1.254 -> il numero del router dal lato rivolto verso la rete locale e 65.249.87.126 il numero univoco con cui il router è collegato e identificabile in Internet
  • 216.239.59.147 -> l'indirizzo di un server di Google.it

Schema di una rete LAN collegata alla rete WAN tramite un router che fa da gateway

***

Il client fa partire una richiesta per il server remoto; la "busta" (il pacchetto) avrà come indirizzo del mittente 192.168.1.10 (quello del client) e come indirizzo del destinatario 216.239.59.147 (quello del server).

Siccome però dallo stesso client potrebbero partire più richieste in contemporanea, le si distingue tra loro attraverso l'indicazione della porta: nel nostro caso, la richiesta è uscita attraverso la porta 2457; per quanto riguarda la porta di destinazione invece sarà sempre la porta 80, cioè quella di default in entrata per il protocollo http.

Riepilogando, il mittente sarà 192.168.1.10:2457 e il destinatario 216.239.59.147:80:

Il client o nodo di una rete LAN inoltra la richiesta al router: mittente l'IP del client, destinatario l'IP del server

Nota: la porta di partenza è stata indicata a caso; l'esempio avrebbe potuto essere fatto con la porta 3982 oppure 1843 etc.

***

Il pacchetto raggiunge il router e quest'ultimo provvede a sostituire l'indirizzo del client - non valido per Internet - con quello con cui il router stesso è identificabile in rete, cioè 65.249.87.126; scrive su una tabella gestita da una tecnica di mappatura chiamata NAT (Network Address Translation) la corrispondenza della richiesta in modo da sapere a quale client inoltrare la risposta quando arriverà.

Modifica anche il numero di porta di riferimento, sostituendola con una propria compresa per convenzione tra 1024 e 4999 incluse: la tecnica di mappatura che provvederà al cambio si chiama PAT (Port Address Translation).

Il pacchetto uscirà quindi dal router avendo come indirizzo del mittente 65.249.87.126:1024 e come indirizzo del destinatario 216.239.59.147:80:

Il router provvede a sostituire l'IP del client con il proprio e a segnare nella tabella NAT la corrispondenza della richiesta: mittente IP del router, destinatario IP del server

***

Il server provvede a smaltire la richiesta e inoltra la risposta a quello che per lui risulta essere il mittente. La risposta avrà quindi come mittente l'indirzo del server 216.239.59.147:80 e come destinatario l'indirizzo IP del router rivolto verso Internet, 65.249.87.126:1024:

Il server risponde e l'indirizzo di riferimento è quello del router: mittente IP del server, destinatario IP del router

***

Il router dopo aver ricevuto il pacchetto procede a modificare in base alla proprie tabelle NAT e PAT l'indirizzo del destinatario, in modo da inoltrarlo al reale richiedente. Dopo la modifica, il pacchetto avrà come mittente l'indirizzo del server 216.239.59.147:80 e come destinatario l'indirizzo del client 192.168.1.10:2457:

Il router recupera dalla propria tabella NAT la corrispondenza della richiesta e inoltra il pacchetto al nodo che ne ha fatto richiesta: mittente l'IP del server, destinatario l'IP del client

***

Glossario

  • Client: un computer che effettua la richiesta a un altro computer; un personal computer collegato in rete è il client per antonomasia.
  • Gateway: normalmente un router, un dispositivo in grado di porre in comunicazione reti di tipologie differenti, come una rete locale (LAN) e una rete pubblica (WAN).
  • LAN: Local Area Network, ovvero rete locale. Normalmente si estende all'interno di un'azienda, un'abitazione, due edifici vicini etc.
  • Mappa: è il termine con cui si indica la tabella delle corrispondenze per gli indirizzi "tradotti".
  • NAT: Network Address Translation, ovvero la tabella di mappatura che si occupa di trasformare un indirizzo di rete locale in un indirizzo di rete pubblica. La tabella del NAT è installata all'interno del router. Attenzione! Il NAT entra in funzione solo nel caso in cui la comunicazione sia fatta tra un nodo interno di una LAN e un nodo pubblico. Un computer collegato in rete tramite un semplice modem non utilizzerà questo sistema, né ovviamente userà il PAT.
  • Pacchetto: un blocco di dati contraddistinto da un contenuto (chiamato payload), un indirizzo IP di partenza e un indirizzo IP di destinazione. Ogni file trasmesso da un nodo all'altro di una rete viene segmentato in uno o più pacchetti prima di essere trasmesso.
  • PAT: Port Address Translation: è la tabella di mappatura che si occupa di tradurre la porta di partenza di una richiesta in una porta disponibile del router.
  • Porta: una porta è un canale di comunicazione che collega due dispositivi; esistono porte dedicate (la porta 80 gestisce sempre il protocollo HTTP, la porta 21 il protocollo FTP etc) e porte usate a seconda delle necessità.
  • Protocollo: insieme di regole di codifica di un determinato comportamento.
  • Protocollo HTTP: Hyper Text Transfer Protocol protocollo che si occupa della trasmissione di informazioni via web.
  • Server: computer depositario di informazioni, programmi etc a disposizione dei client che ne fanno richiesta. Un server è normalmente sempre acceso e può essere interno come il file server di un'azienda, oppure esterno, come i web server dove sono ospitati i siti web.
  • WAN: Wide Area Network. Rete che copre grandi superfici; la WAN per antonomasia è Internet, che copre tutto il globo terrestre.

Commenti

1 - Scritto da gioi il 11/06/2007 alle 20:55

incredibile!!

tu e Mr. Z non state facendo lezioni per utonti, ma per quelli ancora più sotto, considerando il fatto che questa lezione l'ho capita pure io ;)

2 - Scritto da reb il 11/06/2007 alle 23:12

intanto non buttarti troppo giu', che quel che sai di informatica lo so bene e non e' cosi' poco come vai raccontando eppoi se l'hai capita tu vuol dire soprattutto... che IO l'ho capita abbastanza da riuscire a spiegartela :D

Aggiungi il tuo commento

I campi con * sono obbligatori.

Torna a inizio pagina