Multimediaexpo.cz je již 18 let na českém internetu !!
STUN
Z Multimediaexpo.cz
m (Stránka Simple traversal of UDP over NATs přemístěna na stránku STUN: Pro šablonu) |
(+ Výrazné vylepšení) |
||
Řádka 1: | Řádka 1: | ||
{{Internetové protokoly}} | {{Internetové protokoly}} | ||
- | '' | + | '''Session Traversal Utilities for NAT''' ('''STUN''') je sada pomocných [[internet]]ových standardů a [[protokol (informatika)|protokolů]], které slouží k umožnění komunikace skrz [[network address translation|NAT]], typicky používaný u interaktivních síťových služeb ([[Voice over Internet Protocol|VOIP]], [[instant messaging]] apod.). STUN umožňuje zjištění typu NAT, veřejné [[IP adresa|IP adresy]] a [[síťový port|portu]]. Protokol byl původně definován dokumentem RFC 3489, kde zkratka znamenala – ''Simple Traversal of User Datagram Protocol (UDP) Through Network Address Translators (NATs)''. |
+ | == Základní princip funkce == | ||
STUN klient odešle požadavek na STUN server, který klientovi vrátí odpověď s IP adresou NAT [[router|routeru]] a s číslem portu, který NAT otevřel pro příchozí spojení. Z odpovědi zjistí STUN klient také typ použitého [[Network address translation|NAT]] – různé typy NAT nakládají s příchozími UDP [[Paket|pakety]] různými způsoby. | STUN klient odešle požadavek na STUN server, který klientovi vrátí odpověď s IP adresou NAT [[router|routeru]] a s číslem portu, který NAT otevřel pro příchozí spojení. Z odpovědi zjistí STUN klient také typ použitého [[Network address translation|NAT]] – různé typy NAT nakládají s příchozími UDP [[Paket|pakety]] různými způsoby. | ||
Řádka 8: | Řádka 9: | ||
=== Full Cone NAT === | === Full Cone NAT === | ||
- | [[Soubor:Full_Cone_NAT.png| | + | [[Soubor:Full_Cone_NAT.png|thumb|center|600px]] |
Známý také jako NAT jedna ku jedné. Všechny požadavky ze stejné vnitřní IP adresy a portu jsou mapovány na stejnou externí IP adresu a port. Externí počítač pak pošle paket lokálnímu počítači, který je za NATem, zasláním paketu na mapovanou externí adresu. STUN server tento paket dále přepošle příslušnému počítači za NATem. | Známý také jako NAT jedna ku jedné. Všechny požadavky ze stejné vnitřní IP adresy a portu jsou mapovány na stejnou externí IP adresu a port. Externí počítač pak pošle paket lokálnímu počítači, který je za NATem, zasláním paketu na mapovanou externí adresu. STUN server tento paket dále přepošle příslušnému počítači za NATem. | ||
=== Restricted Cone NAT === | === Restricted Cone NAT === | ||
- | [[Soubor:Restricted_Cone_NAT.png| | + | [[Soubor:Restricted_Cone_NAT.png|thumb|center|600px]] |
Všechny požadavky ze stejné lokální IP adresy a portu jsou mapovány na stejnou externí IP adresu a port. Na rozdíl od NAT jedna ku jedné může externí zařízení zaslat paket lokálnímu pouze pokud mu lokální počítač zaslal předtím paket. | Všechny požadavky ze stejné lokální IP adresy a portu jsou mapovány na stejnou externí IP adresu a port. Na rozdíl od NAT jedna ku jedné může externí zařízení zaslat paket lokálnímu pouze pokud mu lokální počítač zaslal předtím paket. | ||
=== Port Restricted NAT === | === Port Restricted NAT === | ||
- | [[Soubor:Port_Restricted_Cone_NAT.png| | + | [[Soubor:Port_Restricted_Cone_NAT.png|thumb|center|600px]] |
Je podobný Restricted cone NAT, ale omezení zahrnuje čísla portů. Externí zařízení může poslat paket na konkrétní port lokálnímu jen pokud lokální počítač předtím zaslal z tohoto portu paket vnějšímu zařízení. | Je podobný Restricted cone NAT, ale omezení zahrnuje čísla portů. Externí zařízení může poslat paket na konkrétní port lokálnímu jen pokud lokální počítač předtím zaslal z tohoto portu paket vnějšímu zařízení. | ||
- | + | {{RIGHTTOC}} | |
=== Symetrický NAT === | === Symetrický NAT === | ||
- | [[Soubor:Symmetric_NAT.png| | + | [[Soubor:Symmetric_NAT.png|thumb|center|600px]] |
Všechny požadavky ze stejné lokální IP adresy a portu na specifickou IP adresu a port jsou mapovány na unikátní externí zdrojovou IP adresu a port. Jestliže to samé lokální zařízení pošle paket se stejnou zdrojovou adresou a portem na jiné místo určení, je použito odlišné mapování. Pouze externí zařízení, které obdrží paket může poslat UDP paket zpět lokálnímu zařízení. V případě symetrického NAT vidí STUN server odlišné mapování, než to odpovídající cíli, ke kterému se mají skrze klienta zasílat pakety. | Všechny požadavky ze stejné lokální IP adresy a portu na specifickou IP adresu a port jsou mapovány na unikátní externí zdrojovou IP adresu a port. Jestliže to samé lokální zařízení pošle paket se stejnou zdrojovou adresou a portem na jiné místo určení, je použito odlišné mapování. Pouze externí zařízení, které obdrží paket může poslat UDP paket zpět lokálnímu zařízení. V případě symetrického NAT vidí STUN server odlišné mapování, než to odpovídající cíli, ke kterému se mají skrze klienta zasílat pakety. |
Aktuální verze z 25. 7. 2017, 15:55
Internetové protokoly |
Aplikační vrstva |
---|
Transportní vrstva |
Síťová vrstva |
Linková vrstva |
Fyzická vrstva |
Session Traversal Utilities for NAT (STUN) je sada pomocných internetových standardů a protokolů, které slouží k umožnění komunikace skrz NAT, typicky používaný u interaktivních síťových služeb (VOIP, instant messaging apod.). STUN umožňuje zjištění typu NAT, veřejné IP adresy a portu. Protokol byl původně definován dokumentem RFC 3489, kde zkratka znamenala – Simple Traversal of User Datagram Protocol (UDP) Through Network Address Translators (NATs).
Základní princip funkce
STUN klient odešle požadavek na STUN server, který klientovi vrátí odpověď s IP adresou NAT routeru a s číslem portu, který NAT otevřel pro příchozí spojení. Z odpovědi zjistí STUN klient také typ použitého NAT – různé typy NAT nakládají s příchozími UDP pakety různými způsoby.
Rozdílné typy NAT podle STUN
Některé aplikace pracující s NATem potřebují charakterizovat NAT dle typu. STUN protokol charakterizuje NAT jako Full cone NAT, Restricted cone NAT, Port restricted cone NAT a Symetrický NAT.
Full Cone NAT
Známý také jako NAT jedna ku jedné. Všechny požadavky ze stejné vnitřní IP adresy a portu jsou mapovány na stejnou externí IP adresu a port. Externí počítač pak pošle paket lokálnímu počítači, který je za NATem, zasláním paketu na mapovanou externí adresu. STUN server tento paket dále přepošle příslušnému počítači za NATem.
Restricted Cone NAT
Všechny požadavky ze stejné lokální IP adresy a portu jsou mapovány na stejnou externí IP adresu a port. Na rozdíl od NAT jedna ku jedné může externí zařízení zaslat paket lokálnímu pouze pokud mu lokální počítač zaslal předtím paket.
Port Restricted NAT
Je podobný Restricted cone NAT, ale omezení zahrnuje čísla portů. Externí zařízení může poslat paket na konkrétní port lokálnímu jen pokud lokální počítač předtím zaslal z tohoto portu paket vnějšímu zařízení.
Obsah |
Symetrický NAT
Všechny požadavky ze stejné lokální IP adresy a portu na specifickou IP adresu a port jsou mapovány na unikátní externí zdrojovou IP adresu a port. Jestliže to samé lokální zařízení pošle paket se stejnou zdrojovou adresou a portem na jiné místo určení, je použito odlišné mapování. Pouze externí zařízení, které obdrží paket může poslat UDP paket zpět lokálnímu zařízení. V případě symetrického NAT vidí STUN server odlišné mapování, než to odpovídající cíli, ke kterému se mají skrze klienta zasílat pakety.
Terminologie zavedená STUN protokolem se ukázala jako nedostatečná k popisu NAT, mnoho implementací kombinuje výše popsané typy. Mnoho implementací NAT zachovává port, tedy ve většině situací zůstávají stejná lokální a externí čísla portů. Pokud se ovšem dvě lokální zařízení pokouší o komunikaci se stejným vnějším zařízením na stejném portu, je vnější port druhého lokálního zařízení přidělen náhodně. Pak tedy záleží na úhlu pohledu a NAT je typu restricted cone a zároveň symetrický.
Externí dokazy
- RFC 3489, STUN - Simple Traversal of User Datagram Protocol (UDP) Through Network Address Translators (NATs)
- NAT traversal White Paper – srovnání STUN s jinými metodami NAT traversal, jako například TURN, ICE, ALGs a Session Border Controllers. Zdroj: Newport Networks
- STUNT – „STUN and TCP too“ přidává ke STUN některé funkce TCP
- Yahoo! – Director of Engineering vysvětluje princip STUN a TURN (video)
- stunserver.org otevřený STUN server, volně k dispozici
Implementace
Náklady na energie a provoz naší encyklopedie prudce vzrostly. Potřebujeme vaši podporu... Kolik ?? To je na Vás. Náš FIO účet — 2500575897 / 2010 |
---|
Informace o článku.
Článek je převzat z Wikipedie, otevřené encyklopedie, do které přispívají dobrovolníci z celého světa. |