{"id":889,"date":"2021-08-03T10:03:29","date_gmt":"2021-08-03T08:03:29","guid":{"rendered":"https:\/\/il-mio-ip.it\/?page_id=889"},"modified":"2021-08-03T11:32:28","modified_gmt":"2021-08-03T09:32:28","slug":"nat-network-address-translation","status":"publish","type":"page","link":"https:\/\/il-mio-ip.it\/?page_id=889","title":{"rendered":"NAT &#8211; Network Address Translation"},"content":{"rendered":"\n<div class=\"wp-block-cover alignfull has-background-dim has-parallax has-background-gradient\" style=\"background-image:url(https:\/\/il-mio-ip.it\/wp-content\/uploads\/2021\/08\/servizi.jpg);min-height:380px;aspect-ratio:unset;\"><span aria-hidden=\"true\" class=\"wp-block-cover__gradient-background\" style=\"background:linear-gradient(100deg,rgb(21,50,67) 0%,rgb(26,108,122) 100%)\"><\/span><div class=\"wp-block-cover__inner-container is-layout-flow wp-block-cover-is-layout-flow\">\n<h1 class=\"has-text-align-center has-white-color has-text-color wp-block-heading\">NAT &#8211; Network Address Translation<\/h1>\n<\/div><\/div>\n\n\n\n<div style=\"height:50px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading\"><span style=\"color: #0693e3;\" class=\"ugb-highlight\"><strong><strong><strong>Assegnazione degli indirizzi IP<\/strong><\/strong><\/strong><\/span><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">L\u2019indirizzo IP di ogni host connesso ad una rete deve necessariamente essere univoco. A livello internazionale esiste un\u2019authority che coordina l\u2019assegnazione degli indirizzi IP ed \u00e8 la IANA (Internet Assigned Numbers Authority) che a sua volta delega alle diverse autorit\u00e0 locali, le quali a loro volta delegano agli ISP dei vari paesi.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Per sopperire alla scarsit\u00e0 di indirizzi IPv4 dovuta all\u2019enorme incremento di dispositivi connessi alla rete, ed in attesa di passare definitivamente ad IPv6 che risolver\u00e0 alla base il problema, si utilizzano i cosiddetti indirizzi privati, ovvero relativi ad una particolare rete. Tali indirizzi sono quindi visibili solo all\u2019interno di una determinata LAN.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">In pratica l\u2019indirizzo IP pubblico \u00e8 assegnato dall\u2019authority competente, mentre all\u2019interno della propria rete locale \u00e8 possibile definire degli indirizzi IP privati che non saranno visibili su Internet ma solo all\u2019interno della propria rete locale.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>NAT<\/strong><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">La tecnica del Network Address Translation nasce originariamente per sopperire in parte alla carenza di indirizzi IPv4. Come il suo nome suggerisce, il NAT \u00e8 una traduzione di indirizzi IP tra due reti, operata tipicamente dal router, ovvero una traduzione tra un indirizzo IP ed un altro, mantenendo tuttavia un legame logico tra i due indirizzi.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Tramite il NAT \u00e8 possibile \u201cnascondere\u201d dietro un solo indirizzo IP pubblico numerosi host che all\u2019interno della loro rete locale hanno un proprio indirizzo IP privato.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Il NAT utilizza un gateway con almeno un\u2019interfaccia connessa alla rete locale interna (LAN) e un\u2019altra interfaccia collegata alla rete esterna Internet (WAN). Grazie alle funzioni realizzate dal NAT, tutti i dispositivi della rete locale (aventi un proprio indirizzo IP privato) possono accedere ad Internet tramite l\u2019indirizzo IP pubblico del gateway, e viceversa da Internet \u00e8 possibile raggiungere uno specifico host all\u2019interno della rete locale. Il gateway, tipicamente un router o un firewall, \u00e8 lo strumento che si occupa materialmente di effettuare la traslazione degli indirizzi IP e quindi di mantenere le informazioni su queste operazioni in memoria, nella cosiddetta tabella NAT.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Nella pratica l\u2019esigenza di utilizzare la tecnica del NAT si pu\u00f2 presentare in due casi:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>Caso 1: l\u2019host di una LAN deve comunicare con un host su Internet;<\/li><li>Caso 2: un host all\u2019interno di una LAN deve essere raggiungibile dall\u2019esterno;<\/li><\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Source NAT<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Se ci troviamo nel Caso 1 allora siamo di fronte al primo tipo di traduzione degli indirizzi, detto Source NAT (SNAT), che \u00e8 il caso pi\u00f9 comune e che si verifica quando un host all\u2019interno di una rete locale, dotato quindi soltanto di indirizzo IPv4 privato, deve comunicare con un host che si trova al di fuori della LAN e raggiungibile attraverso un indirizzo IPv4 pubblico.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">In questo caso all\u2019interno della LAN dobbiamo distinguere due possibili tipologie di traslazione degli indirizzi:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Static Translation<\/strong>, o <strong>traslazione 1 a 1<\/strong>: in questo caso ad ogni host della rete, con il proprio IP privato, verr\u00e0 assegnato un IP pubblico. Questo \u00e8 il caso tipicamente detto Network Address Translation.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Dynamic Translation<\/strong>, o <strong>traslazione 1 a N<\/strong>: in questo caso tutti gli host della rete condivideranno con il mondo esterno lo stesso IP pubblico ma ad ognuno di essi, affinch\u00e9 sia univocamente identificabile, si attribuir\u00e0 una specifica porta. Questo \u00e8 il caso indicato come Port Address Translation (PAT) o pi\u00f9 correttamente come Network Address and Port Translation (NAPT). Il Dynamic Translation \u00e8 il sistema pi\u00f9 usato che aiuta a sopperire alla penuria di indirizzi IPv4.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Quando un host della rete, con il proprio IP privato, deve collegarsi con un host su Internet, il gateway prender\u00e0 il pacchetto IP inviato dall\u2019host della LAN, modificher\u00e0 l\u2019header inserendo il proprio indirizzo IP pubblico al posto di quello privato dell\u2019host della rete e un modificher\u00e0 anche il numero di porta usato internamente dall\u2019host con il numero di una porta disponibile, quindi provveder\u00e0 ad inviare il pacchetto all\u2019host di destinazione su Internet.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Questi vedr\u00e0 i dati indicati dal gateway (quindi quelli modificati, non quelli reali dell\u2019host mittente) vedendo quindi solo il gateway come mittente del pacchetto ricevuto, e provveder\u00e0 a restituire la risposta. Tutte le informazioni che entrano in gioco (IP privato e porta privata dell\u2019host della LAN ha inviato la richiesta) vengono memorizzate nella cosiddetta tabella NAT (o meglio, tabella PAT\/NAPT). Quando l\u2019host di destinazione risponder\u00e0 alla richiesta ricevuta (e modificata) dal gateway, inoltrata dall\u2019host della LAN, a sua volta provveder\u00e0 ad inviare il pacchetto con la risposta all\u2019indirizzo IP e alla porta che il gateway ha specificato nell\u2019header modificato: tali valori corrisponderanno ad una porta esposta sull\u2019indirizzo IP pubblico del gateway. Il gateway a sua volta, ricevuto quel pacchetto, confronter\u00e0 i dati header con quelli presenti in tabella e sapr\u00e0 a quale degli host della sua rete inoltrare il pacchetto ricevuto dall\u2019esterno.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Esempio<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Abbiamo un router con indirizzo IP pubblico 200.100.100.100 che funziona come gateway predefinito per una rete locale LAN al cui interno si trovano 10 host. All\u2019interno della rete il gateway ha indirizzo 192.168.0.1 mentre gli host hanno indirizzi che vanno da 192.168.0.2 a 192.168.0.11.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Ipotizziamo che l\u2019host con indirizzo 192.168.0.2 voglia comunicare con un web server raggiungibile all\u2019indirizzo IP pubblico 220.220.220.220 sulla porta 80, ad esempio per richiedere una pagina web al Web Server.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">L\u2019host della nostra rete, ad esempio, sta usando la porta interna 25.000, e trasmette al gateway la richiesta di instaurare una connessione sulla porta 80 con il server di indirizzo 220.220.220.220 (ricordiamo che l\u2019host, trovandosi sulla stessa rete del gateway, potr\u00e0 inviare la sua richiesta direttamente senza ulteriori complicazioni). Avremo quindi che il nostro router \u00e8 indirizzabile direttamente dagli host della sua rete all\u2019indirizzo 192.168.0.1, e comunica con il mondo esterno tramite l\u2019indirizzo 200.100.100.100.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Il router ricever\u00e0 quindi le seguenti informazioni: l\u2019host di indirizzo 192.168.0.2 vuole stabilire una connessione sulla sua porta 25.000 con la porta 80 del server remoto di indirizzo 220.220.220.220.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Per soddisfare questa richiesta, il router, nel pacchetto IP da inviare all\u2019esterno, sostituisce l\u2019IP privato dell\u2019host con il proprio IP pubblico (ovvero sostituir\u00e0 192.168.0.2 con 200.100.100.100) e la porta 25.000 con una propria porta in quel momento libero, mettiamo sia la 30.000. Ecco all\u2019opera la traslazione degli indirizzi di tipo 1 a N.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Le informazioni relative a questa operazione verranno memorizzate in una tabella simile a questa:<\/p>\n\n\n\n<table id=\"tablepress-2\" class=\"tablepress tablepress-id-2\">\n<thead>\n<tr class=\"row-1\">\n\t<th class=\"column-1\">IP privato dell\u2019Host<\/th><th class=\"column-2\">Porta dell\u2019host<\/th><th class=\"column-3\">IP pubblico del router<\/th><th class=\"column-4\">Porta pubblica del router<\/th>\n<\/tr>\n<\/thead>\n<tbody class=\"row-striping\">\n<tr class=\"row-2\">\n\t<td class=\"column-1\">192.168.0.2<\/td><td class=\"column-2\">25.000<\/td><td class=\"column-3\">200.100.100.100<\/td><td class=\"column-4\">35.000<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<!-- #tablepress-2 from cache -->\n\n\n\n<p class=\"wp-block-paragraph\">Una volta inviata al web server la richiesta, questo vedr\u00e0 come mittente il nostro router con le sue informazioni (indirizzo IP pubblico e porta) e risponder\u00e0 alla richiesta inviando la pagina web desiderata. La risposta raggiunge quindi il router, all\u2019indirizzo IP pubblico 200.100.100.100 e sulla porta 35.000, il quale ricever\u00e0 quindi una risposta dal server di indirizzo remoto 220.220.220.220 tramite la porta 80. In base ai dati contenuti nella sua tabella di NAT, il router sa che tale richiesta andr\u00e0 inoltrata alla porta 25.000 dell\u2019host di indirizzo 192.168.0.2, che vedr\u00e0 quindi soddisfatta la propria richiesta.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Destination NAT<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">La tecnica del Destination NAT si usa nel caso inverso, ovvero nel caso 2, cio\u00e8 quando si vuole rendere raggiungibile dall\u2019esterno un host che ha un indirizzo IP privato all\u2019interno di una LAN. Con il Destination NAT si utilizza una porta pubblica del gateway e la si mappa permanentemente verso un indirizzo IP di rete, tramite delle funzioni normalmente disponibili nei router o nei firewall. La regola sar\u00e0 quindi memorizzata in maniera permanente e non temporanea, come nella tabella NAT\/PAT. Analogamente a quanto visto prima, ogni volta che dall\u2019esterno arriva un pacchetto su quella determinata porta, il gateway, che ha la regola memorizzata, provveder\u00e0 ad inoltrare il pacchetto verso l\u2019indirizzo IP interno associato. Si parla in questo caso di port forwarding.<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"539\" src=\"https:\/\/il-mio-ip.it\/wp-content\/uploads\/2021\/08\/22-NAT-Nework-Address-Translation-1024x539.png\" alt=\"Figura 22: Network Address Translation\" class=\"wp-image-891\" srcset=\"https:\/\/il-mio-ip.it\/wp-content\/uploads\/2021\/08\/22-NAT-Nework-Address-Translation-1024x539.png 1024w, https:\/\/il-mio-ip.it\/wp-content\/uploads\/2021\/08\/22-NAT-Nework-Address-Translation-300x158.png 300w, https:\/\/il-mio-ip.it\/wp-content\/uploads\/2021\/08\/22-NAT-Nework-Address-Translation-768x404.png 768w, https:\/\/il-mio-ip.it\/wp-content\/uploads\/2021\/08\/22-NAT-Nework-Address-Translation.png 1436w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption><em><strong>Figura 22: Network Address Translation<\/strong><\/em><\/figcaption><\/figure><\/div>\n\n\n\n<div class=\"wp-block-group alignfull has-background is-layout-flow wp-block-group-is-layout-flow\" style=\"background-color:#f3f9fb\">\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-7387b849 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<h3 class=\"wp-block-heading\"><a href=\"https:\/\/il-mio-ip.it\/guida-al-networking\/address-resolution-protocol-arp-rarp-arp-inverso\/\" data-type=\"page\" data-id=\"882\">&lt;&lt; <strong>Address Resolution Protocol (ARP\/RARP\/ARP Inverso)<\/strong><\/a><\/h3>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<h3 class=\"has-text-align-right wp-block-heading\"><a href=\"https:\/\/il-mio-ip.it\/guida-al-networking\/ipv6\/\" data-type=\"page\" data-id=\"897\">IPv6 >><\/a><\/h3>\n<\/div>\n<\/div>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Assegnazione degli indirizzi IP L\u2019indirizzo IP di ogni host connesso ad una rete deve necessariamente essere univoco. A livello internazionale esiste un\u2019authority che coordina l\u2019assegnazione degli indirizzi IP ed \u00e8 la IANA (Internet Assigned Numbers Authority) che a sua volta delega alle diverse autorit\u00e0 locali, le quali a loro volta delegano agli ISP dei vari [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":647,"menu_order":35,"comment_status":"closed","ping_status":"closed","template":"","meta":{"site-sidebar-layout":"right-sidebar","site-content-layout":"plain-container","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"disabled","ast-breadcrumbs-content":"","ast-featured-img":"disabled","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"enabled","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"footnotes":""},"categories":[10],"tags":[],"class_list":["post-889","page","type-page","status-publish","hentry","category-guida-al-networking"],"featured_image_urls_v2":{"full":"","thumbnail":"","medium":"","medium_large":"","large":"","1536x1536":"","2048x2048":""},"post_excerpt_stackable_v2":"<p>NAT &#8211; Network Address Translation Assegnazione degli indirizzi IP L\u2019indirizzo IP di ogni host connesso ad una rete deve necessariamente essere univoco. A livello internazionale esiste un\u2019authority che coordina l\u2019assegnazione degli indirizzi IP ed \u00e8 la IANA (Internet Assigned Numbers Authority) che a sua volta delega alle diverse autorit\u00e0 locali, le quali a loro volta delegano agli ISP dei vari paesi. Per sopperire alla scarsit\u00e0 di indirizzi IPv4 dovuta all\u2019enorme incremento di dispositivi connessi alla rete, ed in attesa di passare definitivamente ad IPv6 che risolver\u00e0 alla base il problema, si utilizzano i cosiddetti indirizzi privati, ovvero relativi ad una&hellip;<\/p>\n","category_list_v2":"<a href=\"https:\/\/il-mio-ip.it\/?cat=10\" rel=\"category\">Guida al Networking<\/a>","author_info_v2":{"name":"admin","url":"https:\/\/il-mio-ip.it\/?author=1"},"comments_num_v2":"0 commenti","_links":{"self":[{"href":"https:\/\/il-mio-ip.it\/index.php?rest_route=\/wp\/v2\/pages\/889","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/il-mio-ip.it\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/il-mio-ip.it\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/il-mio-ip.it\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/il-mio-ip.it\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=889"}],"version-history":[{"count":6,"href":"https:\/\/il-mio-ip.it\/index.php?rest_route=\/wp\/v2\/pages\/889\/revisions"}],"predecessor-version":[{"id":933,"href":"https:\/\/il-mio-ip.it\/index.php?rest_route=\/wp\/v2\/pages\/889\/revisions\/933"}],"up":[{"embeddable":true,"href":"https:\/\/il-mio-ip.it\/index.php?rest_route=\/wp\/v2\/pages\/647"}],"wp:attachment":[{"href":"https:\/\/il-mio-ip.it\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=889"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/il-mio-ip.it\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=889"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/il-mio-ip.it\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=889"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}