Gigamit ang NAT Traversal aron makonektar ang mga tiggamit sa passive mode

Kini nga artikulo usa ka libre nga paghubad sa usa sa mga entri sa DC++ developer blog.

Uban sa pagtugot sa tagsulat (ingon man alang sa katin-awan ug interes), gikoloran nako kini sa mga link ug gidugangan kini sa pipila ka personal nga panukiduki.

Pasiuna

Labing menos usa ka user sa nagdugtong nga pares kinahanglang anaa sa active mode karong panahona. Ang mekanismo sa NAT traversal mahimong mapuslanon kung ang aktibo nga mode wala ma-configure sa bisan asa nga kilid. Kini kasagaran tungod sa usa ka firewall o NAT device nga nagbabag sa umaabot nga mga koneksyon.

Kung ang duha ka kliyente anaa sa aktibo nga mode

Ang nagpasiugda nga kliyente nagpadala usa ka mando nga adunay kaugalingon nga IP address ug pantalan $ConnectToMe sa laing kliyente. Gamit kini nga datos, ang kliyente nga nakadawat sa mando nagtukod usa ka koneksyon sa initiator.

Kung ang usa sa mga kliyente anaa sa passive mode

Pinaagi sa hub, usa ka passive nga kliyente A nagpadala ug sugo $RevConnectToMe aktibo nga kliyente Bnga dayon motubag sa sugo $ConnectToMe.

Gigamit ang NAT Traversal aron makonektar ang mga tiggamit sa passive mode
Ingon sa usa ka server S sa kaso sa ibabaw adunay usa ka DC hub

Kung ang duha ka kliyente anaa sa passive mode on ADC hub

Mga kliyente luyo sa lainlaing NAT A ΠΈ B miapil sa hub S.

Gigamit ang NAT Traversal aron makonektar ang mga tiggamit sa passive mode
Ingon niini ang hitsura sa koneksyon sa hub gikan sa kilid sa kliyente A

Gidawat sa hub ang mga koneksyon sa port 1511. Kliyente A naghimo sa mga outgoing nga koneksyon gikan sa iyang pribadong network pinaagi sa port 50758. Ang hub, sa baylo, nakakita sa adres sa NAT device, nagtrabaho uban niini ug nagsibya niini ngadto sa mga kliyente sumala sa ilang mga identifier.

Kustomer A ipadala sa server S mensahe nga nangayo og tabang sa pagkonektar sa usa ka kliyente B.

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

Usab sa passive mode, ang kliyente B, nga nakadawat niini nga sugo, kinahanglan nga magreport sa iyang pribadong pantalan nga gigamit sa pagkonektar sa hub pinaagi sa NAT.

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

Human makadawat niini nga impormasyon ang kliyente A diha-diha dayon misulay sa pagtukod sa usa ka koneksyon uban sa kliyente B ug nagtaho sa kaugalingon nga pribadong pantalan.

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

Unsa ang interes? Ang interes mao ang pagbalhin sa endpoint sa parehas nga koneksyon pinaagi sa paghimo og bag-ong koneksyon sa usa ka pampublikong adres pinaagi sa usa ka gigamit na nga pribadong pantalan.

Gigamit ang NAT Traversal aron makonektar ang mga tiggamit sa passive mode
Bingo!

Siyempre, sa kini nga kaso ang kliyente NAT B adunay tanang katungod sa pagsalikway sa unang hangyo sa koneksyon gikan sa usa ka kliyente A, apan ang iyang kaugalingong hangyo nagdali ngadto sa "lungag" nga gihimo niini nga koneksyon, ug ang koneksyon natukod.

Gigamit ang NAT Traversal aron makonektar ang mga tiggamit sa passive mode
Ilustrasyon nga angay alang sa tibuok proseso uban sa caveat nga protokol wala mogamit sa mga pampublikong pantalan nga giablihan sa sesyon NATβ€’S, ingon man ang mga pribadong adres.

Epilogo

Sa panahon sa pagsulat sa (orihinal) nga artikulo, gibana-bana nga katunga sa mga kliyente sa DC nagtrabaho sa passive mode. Kini nagpasabot nga ang usa ka quarter sa tanan nga posible nga mga koneksyon dili mahimo.

Dugang pa Ang DC++ makahimo sa pag-bypass sa NATgamit ang kasamtangan nga mga koneksyon Aβ€’S ΠΈ Bβ€’S sa pag-establisar og direkta nga koneksyon sa kliyente-kliyente, bisan kung A ΠΈ B naa sa passive mode.

Source: www.habr.com

Idugang sa usa ka comment