Traversering ved hjælp af relæ NAT

Den aktuelle version af siden er endnu ikke blevet gennemgået af erfarne bidragydere og kan afvige væsentligt fra den version , der blev gennemgået den 13. juni 2016; checks kræver 2 redigeringer .

Traversal Using Relay NAT (TURN)  er en protokol, der gør det muligt for en vært bag en NAT eller firewall at modtage indgående data via TCP- eller UDP - forbindelser. Denne funktion er især relevant for værter bag symmetriske NAT'er eller firewalls, der er ved at være vært for en forbindelse til en specifik peer.

TURN er ikke designet til at videresende serverporte gennem NAT , den understøtter punkt-til-punkt-forbindelser mellem noder placeret bag NAT (som i IP-telefoni ).

I denne forbindelse bevarer den sikkerhedsfunktionerne fra symmetrisk NAT og firewalls , men ændrer oversættelsestabellerne, så en vært på indersiden kan blive den modtagende ende af forbindelsen.

TURN-protokollen er beskrevet i RFC 5766 , og en opdatering til TURN for at understøtte IPv6 er beskrevet i RFC 6156 . URI-skemaet for TURN er dokumenteret i RFC 7065 .

Introduktion

NAT har mange fordele, men har også mange ulemper. Den vigtigste af dem er afbrydelsen af ​​mange eksisterende netværksapplikationer og vanskeligheden ved at udvikle nye. Der er udviklet retningslinjer, der beskriver, hvordan man designer NAT-venlige protokoller, men mange protokoller kan simpelthen ikke bygges efter disse retningslinjer. Eksempler på sådanne protokoller er multimedieapplikationer og fildeling.

Session Traversal Utilities for NAT ( STUN ) giver én måde at krydse NAT på. STUN giver klienten mulighed for at få en transportadresse (IP-adresse og port), som kan være nyttig til at modtage pakker fra peers. Adresser opnået via STUN kan dog ikke tilgås af alle peers. Disse adresser fungerer afhængigt af netværkstopologien. Derfor kan STUN i sig selv ikke levere en omfattende NAT-traversal-løsning.

Den komplette løsning kræver et middel, hvormed klienten kan opnå en transportadresse, hvortil den kan modtage datastrøm fra enhver peer, der kan sende datapakker til det offentlige internet. Dette kan kun opnås ved at videresende data gennem en server placeret på det offentlige internet. Denne specifikation beskriver Traversal Using Relay NAT (TURN), en protokol, der tillader en klient at få IP-adresser og porte fra sådanne peers.

Mens TURN næsten altid vil give en forbindelse til klienten, belaster det TURN-serverudbyderen meget. Derfor anbefales det kun at bruge TURN som en sidste udvej, og foretrækker andre mekanismer (såsom STUN eller direkte forbindelse), når det er muligt. For at opnå dette kan metoden Interactive Connectivity Establishment (ICE) bruges til at finde de optimale kommunikationsmidler.