PDA

View Full Version : Domanda teorica su nat e virtual server


vittorio130881
15-01-2015, 17:29
A proposito di NAT, quando richiedi un dato su internet ad un server tipo google alla porta 80, lui risponde avendo avuto come input l’ip pubblico del mio router e la porta da cui proviene la richiesta. E google risponde mettendo come mittente il suo indirizzo ip e porta 80 verso il mio ip pubblico e porta del router. Ma mi chiedo…..se nella mia lan contemporaneamente due disopsitivi con ip privati diversi hanno fatto la richiesta a Google sulla stessa porta come fa il router che riceve la risposta da google a capire a quale ip privato dei due dispositivi mandarlo? Esempio ipad ip 192.168.1.3 Iphone 192.168.1.4 Indirizzo ip pubblico router 93.45.48.6 Porta di comunicazione 2345 (o generica 80) A quale dei due manda la risposta? Come fa a capire?

Seconda domanda nei menu del router trovo la voce virtual server..... ma cosa è e che differenza cè tra questo e il port forwarding?

Wolfhwk
15-01-2015, 20:06
Il router tiene una tabella delle traduzioni in memoria. Monitora le sessioni.

Es. s=192.168.1.3:12345 d=ip_pubblico_Google:80
s=192.168.1.4:34567 d=ip_pubblico_Google:80

TRADUZIONE USCITA

s=93.45.48.6:12345 d=ip_pubblico_Google:80
s=93.45.48.6:34567 d=ip_pubblico_Google:80

Appena google risponde, il router guarda la porta, poi guarda l'ip privato associato a tale porta casuale assegnata al client richiedente la connessione al server web.

Il caso sopra si chiama PAT. E' una variante del NAT vero e proprio.

pigi2pigi
15-01-2015, 20:07
La prima domanda è difficile

La seconda port, forwarding port mapping virtual server sono grosso modo la stessa cosa, telecom usa la definizione port mapping e poi trovi sia port mapping che viruial server altri usano la definizione port forwarding, quando sono presente entrambe sui menu, fanno le stesse cose uno più a mano l'altro più guidato.
Tecnicamente la dizione più giusta è port forwarding in quanto "server virtuale" viene usato in vari altri ambiti (l'informatica segue le mode ora tutto è cloud, c'è stato un periodo che tutto era virtuale) e port mapping si potrebbe confondere con port mapper che a sua volta ha un paio di definizioni diverse, vero che traducendolo in "mappando le porte" viene bene uguale

vittorio130881
15-01-2015, 21:17
Grazie a tutti e due....pero wolf se la porta dei due ip privati è uguale??? Cioe se fossero entrambi sulla 124345?

Wolfhwk
15-01-2015, 21:21
Se la porta è uguale, guardo l'ip privato. In realta' in genere si parla di socket, ovvero l'associazione ip+porta.
Il router vede così le entry: 192.168.1.4:12345 e 192.168.1.3:12345, ma a livello di ip_pubblico in uscita modifichera' una delle porte.

Es. 192.168.1.4:12345 93.45.48.6:12345
192.168.1.3:12345 93.45.48.6:12346

Qui pero' ci pensa il router, dato che l'ip pubblico che usa è soggetto al limite di 65550 porte circa, escluse le well-known.

alfonsor
15-01-2015, 23:13
A proposito di NAT, quando richiedi un dato su internet ad un server tipo google alla porta 80, lui risponde avendo avuto come input l’ip pubblico del mio router e la porta da cui proviene la richiesta. E google risponde mettendo come mittente il suo indirizzo ip e porta 80 verso il mio ip pubblico e porta del router. Ma mi chiedo…..se nella mia lan contemporaneamente due disopsitivi con ip privati diversi hanno fatto la richiesta a Google sulla stessa porta come fa il router che riceve la risposta da google a capire a quale ip privato dei due dispositivi mandarlo? Esempio ipad ip 192.168.1.3 Iphone 192.168.1.4 Indirizzo ip pubblico router 93.45.48.6 Porta di comunicazione 2345 (o generica 80) A quale dei due manda la risposta? Come fa a capire?


cambia la porta di partenza; una connessione è fatta da 5 elementi
ip1,porta1,ip2,porta2,protocollo

il router sa a quale dispositivo mandare la risposta di google perché la cinquina è unica

vittorio130881
16-01-2015, 07:01
Si ma nella cinquina di ritorno cè lip pubblico dei due ipad.... non cè quello privato dei due...o si porta dietro il pacchetto anche linfo dell ip privato?

vittorio130881
16-01-2015, 07:03
Grazie wolffff chiaro ora non avevo letto il tuo secondo messaggio

alfonsor
16-01-2015, 08:55
Si ma nella cinquina di ritorno cè lip pubblico dei due ipad.... non cè quello privato dei due...o si porta dietro il pacchetto anche linfo dell ip privato?

una cinquina sarà
<ip-google,443,ip-wan,49122>

quindi il router, diciamo il kernel linux nel 90% dei casi, tiene una lista in cui a quella cinquina corrisponde lo host della lan che ha fatto quella connessione, cambia ip-wan in ip-locale e glielo manda; per questo, tante connessioni ingolfano il router e per questo le connessioni disponibili non sono 60mila, ma qualcosa come 4000

chiaramente tutto questo si riferisce a ipv4, se fai una connessione a ipv6.google.com la cinquina sarà
<ipv6.google.com,443,ipv6-host-della-lan,49122>
e non ci sarà bisogno di modificare niente

vittorio130881
16-01-2015, 10:04
grazie a tutti
spero non sia stata una domanda sciocca. ciao!