Uża NAT Traversal biex tgħaqqad l-utenti f'modalità passiva

Dan l-artikolu huwa traduzzjoni b'xejn ta' waħda mill-entrati fi DC++ blog tal-iżviluppatur.

Bil-permess tal-awtur (kif ukoll għaċ-ċarezza u l-interess), kkulurijtha b’links u supplimentajtha b’xi riċerka personali.

Introduzzjoni

Mill-inqas utent wieħed tal-par ta 'konnessjoni għandu jkun fil-modalità attiva f'dan il-ħin. Il-mekkaniżmu ta' traversal NAT ikun utli meta l-modalità attiva ma tkunx ikkonfigurata fuq l-ebda naħa. Dan ġeneralment ikun dovut għal firewall jew apparat NAT li jimblokka l-konnessjonijiet deħlin.

Jekk iż-żewġ klijenti huma fil-modalità attiva

Il-klijent li jibda jibgħat kmand li jkun fih l-indirizz IP u l-port tiegħu stess $ConnectToMe lil klijent ieħor. Billi juża din id-dejta, il-klijent li rċieva l-kmand jistabbilixxi konnessjoni mal-inizjatur.

Jekk wieħed mill-klijenti jkun fil-modalità passiva

Permezz tal-hub, klijent passiv A jibgħat kmand $RevConnectToMe klijent attiv Bli mbagħad jirrispondi bil-kmand $ ConnectToMe.

Uża NAT Traversal biex tgħaqqad l-utenti f'modalità passiva
Bħala server S fil-każ ta 'hawn fuq hemm hub DC

Jekk iż-żewġ klijenti huma fil-modalità passiva mixgħula ADC hub

Klijenti wara NATs differenti A и B ingħaqad mal-hub S.

Uża NAT Traversal biex tgħaqqad l-utenti f'modalità passiva
Dan huwa kif il-konnessjoni mal-hub tidher min-naħa tal-klijent A

Il-hub jaċċetta konnessjonijiet fuq il-port 1511. Klijent A jagħmel konnessjonijiet ħerġin min-netwerk privat tiegħu permezz tal-port 50758. Iċ-ċentru, min-naħa tiegħu, jara l-indirizz tal-apparat NAT, jaħdem miegħu u jxandarh lill-klijenti skont l-identifikaturi tagħhom.

Klijent A jibgħat lil server S messaġġ li jitlob għajnuna biex tikkonnettja ma’ klijent B.

Hub: [Outgoing][178.79.159.147:1511] DRCM AAAA BBBB ADCS/0.10 1649612991

Ukoll fil-modalità passiva, il-klijent B, wara li rċieva dan il-kmand, għandu jirrapporta l-port privat tiegħu użat biex jikkonnettja mal-hub permezz tan-NAT.

Hub: [Incoming][178.79.159.147:1511] DNAT BBBB AAAA ADCS/0.10 59566 1649612991

Wara li jirċievi din l-informazzjoni l-klijent A immedjatament jipprova jistabbilixxi konnessjoni mal-klijent B u tirrapporta l-port privat tagħha stess.

Hub:		[Outgoing][178.79.159.147:1511]	 	D<b>RNT</b> AAAA BBBB ADCS/0.10 <b>50758</b> 1649612991

X'inhu l-interess? L-interess huwa li l-endpoint tal-istess konnessjoni jinbidel billi tinħoloq konnessjoni ġdida għal indirizz pubbliku permezz ta’ port privat diġà użat.

Uża NAT Traversal biex tgħaqqad l-utenti f'modalità passiva
Bingo!

Naturalment, f'dan il-każ il-klijent NAT B għandu kull dritt li jirrifjuta l-ewwel talba ta’ konnessjoni minn klijent A, iżda t-talba tiegħu stess tgħaġġel fit-"toqba" maħluqa minn din il-konnessjoni stess, u l-konnessjoni hija stabbilita.

Uża NAT Traversal biex tgħaqqad l-utenti f'modalità passiva
Illustrazzjoni adattata għall-proċess kollu bil-twiddiba li protokoll ma jużax portijiet pubbliċi miftuħa mis-sessjoni NATS, kif ukoll indirizzi privati.

Epilogue

Fil-ħin tal-kitba tal-artikolu (oriġinali), madwar nofs il-klijenti DC qed jaħdmu fil-modalità passiva. Dan ifisser li kwart tal-konnessjonijiet kollha possibbli ma jistgħux isiru.

Barra minn hekk DC++ se jkun jista' jevita n-NATbl-użu ta' konnessjonijiet eżistenti AS и BS biex tiġi stabbilita konnessjoni diretta klijent-klijent, anke jekk A и B huma fil-modalità passiva.

Sors: www.habr.com

Żid kumment