Å is raksts ir bezmaksas tulkojums vienam no ierakstiem .
Ar autora atļauju (kÄ arÄ« skaidrÄ«bas un intereses labad) to izkrÄsoju ar saitÄm un papildinÄju ar kÄdu personisku pÄtÄ«jumu.
Ievads
Vismaz vienam savienojoÅ”Ä pÄra lietotÄjam Å”obrÄ«d ir jÄbÅ«t aktÄ«vajÄ režīmÄ. NAT ŔķÄrsoÅ”anas mehÄnisms bÅ«s noderÄ«gs, ja aktÄ«vais režīms nav konfigurÄts nevienÄ pusÄ. Parasti tas notiek tÄpÄc, ka ugunsmÅ«ris vai NAT ierÄ«ce bloÄ·Ä ienÄkoÅ”os savienojumus.
Ja abi klienti ir aktÄ«vajÄ režīmÄ
IniciÄjoÅ”ais klients nosÅ«ta komandu, kas satur savu IP adresi un portu citam klientam. Izmantojot Å”os datus, klients, kurÅ” saÅÄma komandu, izveido savienojumu ar iniciatoru.
Ja kÄds no klientiem ir pasÄ«vÄ režīmÄ
Caur centrmezglu, pasÄ«vs klients A nosÅ«ta komandu aktÄ«vs klients Bkas pÄc tam atbild ar komandu $ConnectToMe.

KÄ serveris S iepriekÅ” minÄtajÄ gadÄ«jumÄ ir lÄ«dzstrÄvas centrmezgls
Ja abi klienti ir ieslÄgti pasÄ«vajÄ režīmÄ
Klienti aiz dažÄdiem NAT A Šø B pievienojÄs centrmezglam S.

Å Ädi izskatÄs savienojums ar centrmezglu no klienta puses A
Centrmezgls pieÅem savienojumus ar portu 1511. Klients A veic izejoÅ”os savienojumus no sava privÄtÄ tÄ«kla caur portu 50758. Hubs savukÄrt redz NAT ierÄ«ces adresi, strÄdÄ ar to un pÄrraida to klientiem atbilstoÅ”i to identifikatoriem.
Klients A nosÅ«ta uz serveri S ziÅojums, kurÄ tiek lÅ«gta palÄ«dzÄ«ba, lai izveidotu savienojumu ar klientu B.
Hub: [Outgoing][178.79.159.147:1511] DRCM AAAA BBBB ADCS/0.10 1649612991
ArÄ« pasÄ«vajÄ režīmÄ klients B, saÅemot Å”o komandu, ir jÄziÅo par savu privÄto portu, ko izmanto, lai izveidotu savienojumu ar centrmezglu, izmantojot NAT.
Hub: [Incoming][178.79.159.147:1511] DNAT BBBB AAAA ADCS/0.10 59566 1649612991
PÄc Ŕīs informÄcijas saÅemÅ”anas klients A nekavÄjoties mÄÄ£ina izveidot saikni ar klientu B un ziÅo par savu privÄto ostu.
Hub: [Outgoing][178.79.159.147:1511] D<b>RNT</b> AAAA BBBB ADCS/0.10 <b>50758</b> 1649612991KÄda ir interese? Interese ir novirzÄ«t viena un tÄ paÅ”a savienojuma gala punktu, izveidojot jaunu savienojumu uz publisko adresi, izmantojot jau izmantotu privÄto portu.

Bingo!
Protams, Å”ajÄ gadÄ«jumÄ klienta NAT B ir visas tiesÄ«bas noraidÄ«t pirmo savienojuma pieprasÄ«jumu no klienta A, bet viÅa paÅ”a lÅ«gums steidzas tieÅ”i Ŕī savienojuma radÄ«tajÄ ābedrÄā, un savienojums tiek izveidots.

IlustrÄcija ir piemÄrota visam procesam ar brÄ«dinÄjumu neizmanto sesijas atvÄrtos publiskos portus NAT-S, kÄ arÄ« privÄtÄs adreses.
Epilogs
Raksta (sÄkotnÄjÄ) rakstīŔanas laikÄ aptuveni puse DC klientu strÄdÄ pasÄ«vÄ režīmÄ. Tas nozÄ«mÄ, ka ceturto daļu no visiem iespÄjamiem savienojumiem nevar izveidot.
NÄkotnÄ izmantojot esoÅ”os savienojumus A-S Šø B-S lai izveidotu tieÅ”u klienta-klienta savienojumu, pat ja A Šø B ir pasÄ«vÄ režīmÄ.
Avots: www.habr.com
