Condividi:

Tipi di NAT e problemi col NAT simmetrico

Il posto giusto per trovare tutte le risposte sull'uso dei servizi di rete fissa FASTWEB (telefono e internet)
Tipi di NAT e problemi col NAT simmetrico #1
lun feb 02, 2015 12:17 pm
Mi riallaccio ad una domanda fatta da Barbutus per dire due parole a proposito.

Barbutus ha scritto:su XONE ho Nat Limitato, ma se entro in una chat di gruppo, dopo qualche secondo magicamente ho il Nat Aperto, anche se nelle informazioni dettagliate su NAT mi dice "La rete

è dietro un NAT cone". (che diavolo vuol dire ?!)

Non conoscendo la situazione e attenendomi allo stringente significato del termine... "non vuol dire nulla" nel senso che non specifica.
Vediamo di arrivarci per gradi...
Spiego prima i diversi tipi di NAT e poi facciamo una ricerca.
Premessa: gli addetti ai lavori di solito usano il femminile (la NAT --> traslation) ma a me non è mai piaciuto... boh xD quindi rimango con le mie abitudini lol (misoginia inconscia Immagine)

Allora, cominciamo col dire che esistono due tipi di NAT: lo statico ed il dinamico. Nelle varie versioni poi, nella definizione classica arrivano a dividersi in 4 tipi (poi però si aggiunge altro... vediamo)

Lo statico è quello che normalmente facciamo nei nostri router quando creiano un port forwarding fisso ed è anche chiamato NAT uno ad uno.
Viene definito Full Cone NAT e si comporta in questo modo:
tu hai un ip interno del tipo 192.168.1.2 con su un sito sulla porta 80.
Il router crea una corrispondenza fissa tra ip pubblico del router - porta 80 <--> ip interno - porta 80 (e la porta ovviamente non deve per forza essere la stessa... come ad esempio si usa fare per la 22 quando si mette come esterna una porta diversa per "aumentare" la sicurezza... o la parvenza di sicurezza).
Quindi un host esterno può raggiungere un interno cominciando per primo la connessione visto che la porta è sepre aperta.
Se si aprono tutte le porte, in maniera non proprio esatta, si parla di DMZ.

I tre tipi di dinamici sono:

Restricted Cone NAT, Port Restricted Cone NAT e Symmetric NAT

Il Restricted Cone NAT funziona come quello statico a differenza del fatto che il tutto ha luogo solo previo invio del pacchetto da parte dell'host interno.
Esempio: io dal mio 192.168.1.2 creo una connessione con un sito sulla porta 80 utilizzando la mia porta locale abcd.
Il sito manderà indietro i pacchetti sull'ip pubblico del mio router connettendosi alla porta abcd.
Il router, con un NAT dinamico, inoltrerà la connessione al mio pc visto che il mio pc aveva cominciato il tutto.
Se un altro cercasse da un altro ip di comunicare con l'ip pubblico del router su quella porta abcd, il pacchetto verrebbe scartato.

Il Port Restricted Cone NAT funziona come il Restricted Cone NAT a differenza del fatto che oltre all'ip sorgente, la restrizione è applicata alla porta.
Esempio: io dal mio pc 192.168.1.2 tramite porta abcd mi collego al sito 2.2.2.2 sulla porta 80.
Il mio router crea una mappatura tra 192.168.1.2 / porta abcd e ip pubblico del mio router / porta abcd.
Quando il sito risponde, deve avere come prima lo stesso ip pubblico sorgente per passare attraverso il mio router ma oltre a questo, deve anche mandare i pacchetti come porta di origine la porta 80. Se la porta viene cambiata, il pacchetto verrà scartato.

Il Symmetric NAT agisce come il Port Restricted Cone NAT ma con più problemi perchè gestisce il NAT in modo diverso.
Vediamo perché...
In tutti i casi precedenti, quando noi usciamo dal nostro router, la porta di origine non viene cambiata e si ha quella che si chiama "port preservation".
Nel NAT simmetrico invece, la porta di origine applicata è scelta in modo random ad anche quando si ha lo stesso host interno ma destinazioni diverse, la porta può variare dinamicamente ed a caso.
Esempio:
sempre dal mio 192.168.1.2 mi collego a due siti diversi partendo dalla mia porta locale abcd.
Il router creerà quindi una connessione con un ip sorgente = suo ip pubblico e nel caso di NAT simmetrico, due porte random diverse tra di loro e diverse rispetto alla locale abcd. Quindi, in caso la porta locale fosse la 56423, si possono utilizzare per esempio la porta 58423 e 59243.
Quando il sito 1 risponderà quindi, dovrà creare una connessione verso l'ip pubblico del mio router sulla porta 58423 mentre il sito 2 sulla 59243. Il router poi manderà entrambe le connessioni sul mio ip interno.

A quanto pare quindi, proprio il NAT simmetrico è quello che crea più problemi ed infatti spesso i messaggi di errore delle console e di alcuni programmi per esempio di VoIP riportano la situazione di NAT simmetrico quando non funzionano come dovrebbero (e questo accade spesso quando ci si collega ad un qualcosa anch'essa dietro NAT).

Perchè succede è semplice...
la nostra console non sa di essere dietro NAT.
Lei legge il suo ip e crea la connessione mandando il suo ip e la sua porta interna.
Un router con NAT simmetrico cambia purtroppo anche la porta sorgente oltre all'ip...
Quindi che succede... la console vuole ricevere una connessione di ritorno sulla sua porta interna ed ip interno ma non sa di essere dietro NAT e non ha modo di dire alle altre console con le quali sta giocando di mandare le connessioni all'ip pubblico e porta random scelta dal router...

Questo è proprio tipico problema dei Technicolor/Thomson come ho in passato già scritto qui

spiegando che appunto, su questi router, si rimane in regime di NAT simmetrico (a meno di non fare una modifica via telnet) anche se si sono fissate delle porte tramite port forwarding (a meno quindi anche di modifiche firmware).

Come si risolve questo problema?

Allora, uno dei mezzi per ovviare al generale problema del NAT è l'utilizzo di STUN (Session Traversal Utilities for NAT).
Grazie a questo protocollo, la console "impara" il corretto ip pubblico e la porta per poter dire alle altre console dove mandare i propri pacchetti.
Purtroppo però non funziona col NAT simmetrico... e vediamo perché.
Che fa il server con lo STUN protocol (per esempio quelli di XBOX Live) ?
Semplicemente legge la porta di origine (scelta dal router) associata all'ip pubblico del router e manda indietro queste informazioni al client che così impara le due informazioni per poterle quindi inoltrare alle altre console.
Il problema è che come abbiamo visto prima, la porta scelta è sempre random quindi la connessione con lo STUN server genera una porta a sè che non rimarrà fissa per le connessioni successive... in questo modo ciò che la console impara non servirà a nulla.
Allo stesso modo quindi, tutte le connessioni che la console instaurerà con altre console avranno una porta di origine (associata all'ip pubblico del router) differente e questa porta non sarà conosciuta dalla console che non potrà quindi comunicarla alle altre console per poter avere connessioni di ritorno correttamente instradate su di essa.

Questo è il motivo per il quale il NAT simmetrico genera così tanti problemi...

Facciamo un paio di esempi con i due casi differenti:

Port Restricted Cone NAT:

La mia console su 192.168.1.2 hosta un gioco sulla 58342.
Si connette ad Xbox Live e comunica questa informazione.
Xbox Live, che usa STUN, legge il mio ip pubblico e la porta 58342 così lo dice alla mia console.
La mia console aggiorna le proprie informazioni ed informa di nuovo Xbox Live.
Quando un secondo giocatore trova il mio gioco hostato su Xbox Live e vi accede, automaticamente proverà a collegarsi al mio ip pubblico ed alla porta 58342.
Cosa succederà alla connessione?
Io ho mai parlato con questo giocatore iniziando una connessione tramite porta sorgente 58342?
No... quindi la connessione verrà scartata.
La mia console però, tramite Xbox live imparerà l'ip e la porta dell'altro giocatore e con questa informazione creerà una connessione verso di lui utilizzando la porta

sorgente 58342.
Da quel momento quindi, tutti i pacchetti che il secondo giocatore manderà al mio ip pubblico sulla 58342 saranno inoltrati grazie ai settaggi del port restricted Cone NAT

Symmetric NAT


La mia console su 192.168.1.2 hosta un gioco sulla 58342.
Si connette ad Xbox Live e comunica questa informazione.
Xbox Live, che usa STUN, legge il mio ip pubblico e la porta 58342 così lo dice alla mia console.
La mia console aggiorna le proprie informazioni ed informa di nuovo Xbox Live.
Quando un secondo giocatore trova il mio gioco hostato su Xbox Live e vi accede, automaticamente proverà a collegarsi al mio ip pubblico ed alla porta 58342.
Come nel caso del port restricted NAT la connessione sarà scartata perché non esiste una connessione precedente con quella porta di origine.
Quindi che succede?
La mia console tramite Xbox Live impara ip e porta del giocatore e instaura una connessione "iniziale"... il problema però è il fatto che verrà a crearsi un nuovo tipo di

mapping con una porta random diversa...
Così verrà mandato al giocatore l'info contenente mio ip e porta 58342 mentre la porta che il router "aprirà" sarà purtroppo un'altra.
Risultato: connessione del giocatore scartata...

Tornando alla domanda di Barbutus quindi... già la parola "Cone" significa che l'info è positiva perché non si tratta di NAT simmetrico.
Avendo tu un Technicolor quindi, significa che il firmware - settaggio hanno "sbloccato" la situazione.

Riguardo a questa cosa:
Barbutus ha scritto:...
però la cosa assurda è che io con un HAG telsey (CPA-ZNTE60FWB) quello nero per intenderci... e con ip nattato, non avevo nessun tipo di problema con le porte, mi era bastato collegarci un router netgear, ed aprire le porte sul netgear, mai entrato nella MFP per aprire le porte, avevo NAT aperto su xbox 360 e xbox one, ps3 e ps4 con Nat 2.
Quanto lo rimpiango :((



è facilmente spiegabile... tramite STUN la corretta informazione veniva imparata e mandata indietro alla console (tramite NAT di Fastweb la porta non variava) che poteva così "pubblicizzarla" sempre tramite Xbox Live.
Non c'era bisogno di aprire nulla nè di avere l'ip pubblico proprio perché bastava la NON implementazione del NAT simmetrico.

Quando quindi non ci sono meccanismi automatici che risolvono il problema del NAT, si aprono le porte tramite ip pubblico ed il gioco è fatto nell'ipotesi di NAT simmetrico non più "latente" a rompere le scatole.

Alcune persone poi vorrebbero in ambito Playstation NAT di tipo 1... beh a quanto pare questo desiderio è proprio sbagliato in quanto ho letto qui (ultimo post in basso) che una persona apparentemente piuttosto esperta spiega che applicazioni come Remote Play, LBP2 Cross Controller etc necessitano invece di ip privato.


Insomma... il discorso è bello vasto... ma spero di aver fatto un po' chiarezza.

Se ho scritto qualche cavolata o se qualcuno del mestiere volesse aggiungere qualcosa, sarebbe più che ben accetto!

Specialmente per quanto riguarda l'eventuale STUN sui server per la Play etc...

Sono mi sembra argomenti interessanti :D

Ciao!

edit:

nemmeno avevo visto che il tipo menzionato ha proprio un 788 ed ha chiesto al provider di accedervi via telnet per dare quei comandi dei quali parlavo prima =))
Guida OpenVPN-DD-WRT-R7000etc Guida Hamachi Tomato. Minimo garantito Fatture Sbagliate
Fastweb di Scaglia era un'altra cosa. Non mandate PM.
Avatar utente
mago43
Maestro
Maestro
 
Messaggi: 4401
Iscritto il: gio apr 03, 2014 3:19 pm

Re: Tipi di NAT e problemi col NAT simmetrico #2
lun feb 02, 2015 1:26 pm
grande mago ! più che una risposta... hai scritto una tesi degna di una laurea in ingegneria delle telecomunicazioni !
grazie per aver condiviso il tuo sapere :ymhug:

solo non capisco come la mia console possa passare da un nat limitato e symmetric, ad un nat aperto e cone, semplicemente partecipando ad una chat vocale di gruppo :-\

la mia teoria è;
che il servizio incriminato sia proprio la chat vocale di gruppo, e che la console abbia qualche problemino ad inviare le informazioni corrette per l'instradamento di questo servizio, non appena si entra in una chat vocale di gruppo... è come se in qualche modo ci si appoggiasse al corretto instradamento dei partecipanti presenti nella chat di gruppo, e la console acquisisse tali informazioni riconfigurando l'instradamento, passando così ad un nat aperto.
Non so sia una teoria valida o meno, non ho molte conoscenze tecniche a riguardo, però magari nell'ignoranza mi avvicino al problema...
Technicolor TG788vn 10.5.3.B + Netgear R7000 V1.0.4.28_1.1.64
Avatar utente
Barbutus
Interessato
Interessato
 
Messaggi: 94
Iscritto il: gio dic 25, 2014 4:55 pm

Re: Tipi di NAT e problemi col NAT simmetrico #3
lun feb 02, 2015 1:44 pm
Nemmeno io ho quelle conoscenze perché al massimo ho guidato un po' on line ma non ho mai usato le chat...e non ho nemmeno mai "studiato" come funzioni una console LOL
Probabilmente però, a grandi linee il discorso è lo stesso:

- accedi ma non puoi ascoltare

- Xbox live impara e manda indietro le info alla console che aggiusta la situazione mappando le giuste porte.

Questo però non accade in regime di NAT simmetrico... tu hai letto da qualche parte che la tua situazione fosse proprio quella di NAT simmetrico?

Perché probabilmente sei fortunato e ciò che succede è solo il passaggio da

- informazioni non trasmesse e mappatura non implementata

a


- informazioni trasmesse e mappatura implementata

Probabilmente un iniziale momento di buio è necessario anche in presenza di ip pubblico e porte aperte proprio perché la console deve imparare porta e ip pubblico per mandarle indietro.

Basandoci comunque sulla "teoria" abbozzata nel mio post, dovrebbe essere più semplice reperire altre info se si cerca...


Se magari vi volete applicare... l'argomento è interessante... io però in questo periodo non ho troppo tempo libero...:\

Ecco magari sai cosa?

Il NAT di tipo 3, quello peggiore insomma, forse si ha quando o non funziona lo STUN o ci sono altri NAT in mezzo che cambiano le porte.
Bisognerebbe capire in dettaglio cosa significa NAT peggiore nel mondo console e cosa questo CAUSA nel senso di non permettere/abilitare un qualcosa che non può proprio "partire".
Guida OpenVPN-DD-WRT-R7000etc Guida Hamachi Tomato. Minimo garantito Fatture Sbagliate
Fastweb di Scaglia era un'altra cosa. Non mandate PM.
Avatar utente
mago43
Maestro
Maestro
 
Messaggi: 4401
Iscritto il: gio apr 03, 2014 3:19 pm

Re: Tipi di NAT e problemi col NAT simmetrico #4
lun feb 02, 2015 2:24 pm
si, su xbox one c'è una schermata "nascosta" che si può visualizzare dopo aver fatto un test chiamato test multiplayer, basta premere i quattro grilletti del pad.

nats.jpg
nats.jpg (142.75 KiB) Osservato 7175 volte


comunque leggevo anche di problemi con l'upnp, quì un esempio http://www.tech-recipes.com/rx/46572/xb ... d-servers/

insomma... sembra che la colpa non sia al 100% di fastweb, anche la microsoft ci sta mettendo del suo.
Technicolor TG788vn 10.5.3.B + Netgear R7000 V1.0.4.28_1.1.64
Avatar utente
Barbutus
Interessato
Interessato
 
Messaggi: 94
Iscritto il: gio dic 25, 2014 4:55 pm

Re: Tipi di NAT e problemi col NAT simmetrico #5
lun feb 02, 2015 3:27 pm
potrebbe anche essere che dal punto di vista di ciò che ti fa visualizzare la console: "problema" = NAT simmetrico
tutto il resto... no

e tutto il resto potrebbe essere risolto dalla storia dello STUN di prima...

insomma bisognerebbe cercare meglio ma almeno ne sappiamo un po' di più : )
Guida OpenVPN-DD-WRT-R7000etc Guida Hamachi Tomato. Minimo garantito Fatture Sbagliate
Fastweb di Scaglia era un'altra cosa. Non mandate PM.
Avatar utente
mago43
Maestro
Maestro
 
Messaggi: 4401
Iscritto il: gio apr 03, 2014 3:19 pm

Re: Tipi di NAT e problemi col NAT simmetrico #6
lun feb 06, 2017 5:03 pm
Ciao ho letto il discorso....molto interessante, ma quasi tutti i router usano il nat simmetrico, quindi quelli che programmano la ps4 o xbox dovrebbero impostarla che funzioni con i router comuni....
Voglio vedere chi collega la playstation direttamente alla linea senza passare da un router......

Vincenzob
Cultore
Cultore
 
Messaggi: 288
Iscritto il: ven ott 09, 2015 12:17 pm
Località: Genova


Chi c’è in linea

In totale ci sono 57 utenti connessi : 2 iscritti, 55 ospiti (basato sugli utenti attivi negli ultimi 5 minuti)


Visitano il forum: Bing [Bot], Google [Bot] e 55 ospiti

ChiudiChiudi Questo sito usa cookies di profilazione, propri e di terzi, per adeguare la pubblicità alle tue preferenze.
Clicca qui per maggiori informazioni o per conoscere come negare il consenso. Se chiudi questo banner o accedi ad altri elementi della pagina acconsenti all'uso dei cookies.