Riprendiamo da una differenza fra indirizzo pubblico e privato e di cosa si tratta.
IP Pubblico è un indirizzo rilasciato dall’associazione ICANN e viene assegnato da un ISPN in maniera univoca al nostro gateway.
IP Privato è l’ip di una rete lan e quindi visibile solamente ai computer di queste lan e al di fuori solo tramite alcuni accorgimenti che vedremo nelle prossime guide.
Un IP Privato può accedere alla rete solo con NAT.
Il router modem. evoluzione del modem con molti programmi per instradare i percorsi con la rete internet o attraverso una rete privata.
Ogni router possiede due indirizzi
- IP Pubblico con il quale comunica verso l’esterno
- IP Privato con il quale comunica con i terminali che sono connessi a lui.
La Nat per traslare gli indirizzi
La N.A.T è l’acronimo di Network Address Translation, e consiste nell’utilizzare un gateway con interfaccia di rete per connettere terminali in remoto con terminali della propria rete. Ne esistono di due tipi fondamentalmente
- Nat a Traslazione Statica che consente di associare un indirizzo IP privato a un indirizzo IP pubblico.
- Nat a Traslazione Dinamica Tutti gli indirizz IP privati sono visti all’esterno dallo stesso IP Pubblico ( masquerable)
Vediamo subito un esempio
- Iphone tramite un browser apre www.google.it
- Iphone comunica al rooter di ricevere sulla porta 2310 e manda questo pacchetto MITT 192.168.1.5:2310 , DEST > 192.168.1.1:80 ossia indica che IPHONE riceve sulla porta 2310 la request inviata a google mentre il router dall’esterno riceverà sulla porta 80 di default.
- Il router memorizza queste informazioni.
- Il Router traduce la richiesta invia il seguente messaggio MITT 93.15.15.21 > DEST www.google.it:80
- Google invia la risposta MITT>www.google.it;80, DEST>93.15.15.21:2310
- Il router riconosce e traduce ossia il NAT e traduce questa porta in quella dell’IPHONE e quindi effettua la seguente operazione MITT > 192.168.1.1:80 > 192.168.1.50:2310
questa traduzione fra indirizzi pubblici e indirizzi privati prende appunto il nome di NAT.
Il Port Forwarding per aprire le porte del Router
Abbiamo visto prima cosa succede quando da una rete locale LAN inviamo una richiesta alla rete globale WAN in questo caso il www. Ma vediamo cosa succede quando dal www riceviamo noi una richiesta senza che prima ne abbiamo fatto una richiesta come nell’esempio sopra. Ossia siamo per esempio nel caso che abbiamo un web server con sopra Apache, il più comune del web. Il NAT in questo caso non sarà in grado di stabilire quale porta dovrà indirizzare ossia non saprà tradurre la richiesta che ha ricevuto e per questo la respingerà ossia non farà e quindi chi avrà effettuato la richiesta non riceverà informazioni. Proprio per questo motivo si cerca di ovviare a questo problema con la tecnica del Port Forwarding che apre solamente determinate porte ossia quelle in corrispondenza del nostro server Apache. Supponiamo quindi che il nostro server ascolti su
192.168.1.2. : 54123
a questo punto non dovremo fare altro che impostare il router con il Port Forwarding in modo tale che tutti i pacchetti che arrivano sulla sua porta 80 siano traslati nella seguente maniera.
198:168.1.9:80 —-> 198.162.1.5:54123
Vengono poi instradati al giusto host.
Port Triggering. Si tratta di un Port Forward particolare. Per esempio consideriamo un FTP , quindi si stabilisce una connessione nella porta 21 e dopo si utilizerà solamente la porta 20 , quindi il router in questo caso sa già quello che dovrà fare, ossia il suo comportamento.