See artikkel on vabalt tõlgitud ühest postitusest .
Autori loal (ja ka silmade avardamiseks ja huvi pärast) olen selle täiendavatele linkidele värvinud ja mõned isiklikud tähelepanekud lisanud.
Sissejuhatus
Praegu peab vähemalt üks paarist ühenduvast kasutajast olema aktiivses režiimis. NAT'i „ümbersõidumehhanism” on kasulik siis, kui kumbki osapool ei ole aktiivse režiimiga seadistatud. See juhtub tavaliselt siis, kui tulekahju või NAT seade blokeerib sissetulevad ühendused.
Kui mõlemad kliendid on aktiivses režiimis
Alustaja klient saadab käsu, mis sisaldab tema enda IP-aadressi ja porti teisele kliendile. Saades selle teabe, loob vastuvõttev klient ühenduse algataja kohta.
Kui üks klient on passiivses režiimis
Keskuse kaudu saadab passiivne klient A käsu aktiivsele kliendile B, kes seejärel vastab käsuga $ConnectToMe.

Serverina S mängib üleval DC hub
Kui mõlemad kliendid on passiivses režiimis
Erinevates NAT-se asuvad kliendid A ja B ühendatud hubiga S.

Nii näeb kliendi poolt hubiga ühendus välja A
Hub võtab ühendusi vastu porti 1511. Klient A teeb väljaminevaid ühendusi oma eravõrgust porti 50758 kaudu. Hub näeb omakorda NAT-seadme aadressi, töötab sellega ja edastab klientidele vastavalt nende identifikaatoritele.
Klient A saadab serverile S sõnumi abipalvega ühendada klientidega B.
Hub: [Outgoing][178.79.159.147:1511] DRCM AAAA BBBB ADCS/0.10 1649612991
Olles samuti passiivses režiimis, klient B, saades selle käsu, peab teatama oma eraportaali, mida kasutatakse hubiga ühenduse loomiseks NAT-i kaudu.
Hub: [Incoming][178.79.159.147:1511] DNAT BBBB AAAA ADCS/0.10 59566 1649612991
Pärast selle teabe saamist klient A ütleb kohe üritab luua ühendust kliendiga B ja teatab oma eraportaali.
Hub: [Outgoing][178.79.159.147:1511] D<b>RNT</b> AAAA BBBB ADCS/0.10 <b>50758</b> 1649612991Mis on huvi? Huvi seisneb sama ühenduse lõpp-punkti nihutamises, luues uue ühenduse avalikku aadressi kaudu juba kasutatava eraportaali.

Bingo!
Kindlasti, samas kliendi NAT B on täielik õigus esimest ühenduspäringut kliendilt tagasi lükata A, kuid tema enda päring suundub selle ühenduse tekitatud "auku" ja ühendus siiski luuakse.

Illustratsioon, mis sobib kogu protsessi juurde, tingimusel et ei kasuta avalikke porte, mida sessioon avab NAT‒S, samuti privaatseid aadresse.
Epilog
Artikli (originaali) kirjutamise ajal töötas umbes poole DC klientidest passiivses režiimis. See tähendab, et neljandik kõigist võimalikest ühendustest ei tohi teostuda.
Edasi , kasutades olemasolevaid ühendusi A‒S ja B‒S otsepöördumise loomiseks klient-client, isegi kui A ja B need on passiivses režiimis.
Allikas: habr.com
