STUN è l'acronimo diSession Traversal Utilities forNetwork Address Translators (NATs): si tratta di un protocollo e di un insieme di funzioni che permettono alle applicazioni in esecuzione su un computer di scoprire la presenza ed i tipi di NAT efirewall che si interpongono tra il computer e la rete pubblica. STUN permette a queste applicazioni di conoscere gli indirizzi IP e le porte con cui il dispositivo NAT li sta rendendo visibili sulla rete pubblica.STUN opera con molti NAT preesistenti e non richiede particolari comportamenti da essi. Come risultato, STUN assicura ad una grande varietà di applicazioni IP (ad esempio, i telefoni VoIP) di lavorare attraverso le varie strutture NAT preesistenti.
Nella specifica originaria inRFC 3489,[1], STUN era l'acronimo diSimple Traversal ofUser Datagram Protocol (UDP) ThroughNetwork Address Translators (NATs), ma nella specifica aggiornata pubblicata comeRFC 5389 il titolo è mutato inSession Traversal Utilities for NAT, mantenendo lo stessoacronimo.[2]
STUN è un protocollo client-server. Un telefono o un softwareVoIP può includere un client STUN, che invierà una richiesta ad un server STUN. Il server riporterà al client STUN l'indirizzo IP pubblico e la porta UDP che il dispositivo NAT (es.router) sta associando al client per il traffico entrante nella rete. Le risposte permettono anche al client STUN di determinare che tipo di NAT è in uso. Ci sono tre tipi di NAT che è possibile attraversare tramite STUN: Full Cone, Restricted Cone e Port Restricted Cone. STUN non lavora con il quarto tipo di NAT, detto simmetrico o bidirezionale, questo a causa del fatto che i dati trovati dal server STUN non saranno validi per terze parti, in quanto il NAT bidirezionale non permette a terzi di riusare IP e porte abilitate, differenziando le associazioni a seconda dell'host contattato.
Client e server STUN sono utilizzati con protocolli comeSIP tramite UDP per il trasferimento di traffico voce/video/testo su Internet.
Per una trattazione completa di STUN, fare riferimento a:https://tools.ietf.org/html/rfc5389