Aquest article és una traducció gratuïta d'una de les entrades a
Amb el permís de l'autor (així com per claredat i interès), el vaig pintar amb enllaços i el vaig complementar amb una investigació personal.
Introducció
Almenys un usuari de la parella de connexió ha d'estar en mode actiu en aquest moment. El mecanisme de travessa NAT serà útil quan el mode actiu no estigui configurat a cap dels costats. Això sol ser degut a un tallafoc o un dispositiu NAT que bloqueja les connexions entrants.
Si tots dos clients estan en mode actiu
El client iniciador envia una ordre que conté la seva pròpia adreça IP i port
Si un dels clients està en mode passiu
A través del hub, un client passiu A envia una ordre
Com a servidor S en el cas anterior hi ha un concentrador de corrent continu
Si els dos clients estan en mode passiu activat
Clients darrere de diferents NAT A и B es va unir al centre S.
Així és com es veu la connexió amb el concentrador des del costat del client A
El concentrador accepta connexions al port 1511. Client A fa connexions sortints des de la seva xarxa privada a través del port 50758. El concentrador, al seu torn, veu l'adreça del dispositiu NAT, treballa amb ell i l'emet als clients segons els seus identificadors.
Client A envia al servidor S missatge demanant ajuda per connectar amb un client B.
Hub: [Outgoing][178.79.159.147:1511] DRCM AAAA BBBB ADCS/0.10 1649612991
També en mode passiu, el client B, després d'haver rebut aquesta ordre, ha d'informar del seu port privat utilitzat per connectar-se al concentrador mitjançant NAT.
Hub: [Incoming][178.79.159.147:1511] DNAT BBBB AAAA ADCS/0.10 59566 1649612991
Després de rebre aquesta informació el client A immediatament intenta establir una connexió amb el client B i informa del seu propi port privat.
Hub: [Outgoing][178.79.159.147:1511] D<b>RNT</b> AAAA BBBB ADCS/0.10 <b>50758</b> 1649612991
Quin és l'interès? L'interès és canviar el punt final de la mateixa connexió creant una nova connexió a una adreça pública a través d'un port privat ja utilitzat.
Bingo!
Per descomptat, en aquest cas el client NAT B té tot el dret a rebutjar la primera sol·licitud de connexió d'un client A, però la seva pròpia petició es precipita al "forat" creat per aquesta mateixa connexió, i la connexió s'estableix.
Il·lustració adequada per a tot el procés amb l'advertència que
Epíleg
En el moment d'escriure l'article (original), aproximadament la meitat dels clients DC estan treballant en mode passiu. Això vol dir que no es poden fer una quarta part de totes les connexions possibles.
Més lluny
Font: www.habr.com