Sèvi ak NAT Traversal pou konekte itilizatè yo nan mòd pasif

Atik sa a se yon tradiksyon gratis nan youn nan antre yo nan DC++ blog pwomotè.

Avèk pèmisyon otè a (menm jan tou pou klè ak enterè), mwen kolorye li ak lyen epi konplete li ak kèk rechèch pèsonèl.

Entwodiksyon

Omwen yon itilizatè nan pè koneksyon an dwe nan mòd aktif nan moman sa a. Mekanis travèse NAT la pral itil lè mòd aktif la pa configuré sou chak bò. Sa a se anjeneral akòz yon pare-feu oswa aparèy NAT bloke koneksyon fèk ap rantre.

Si tou de kliyan yo nan mòd aktif

Kliyan inisye a voye yon lòd ki gen pwòp adrès IP li yo ak pò $KonekteMe bay yon lòt kliyan. Sèvi ak done sa yo, kliyan an ki te resevwa lòd la etabli yon koneksyon ak inisyatè a.

Si youn nan kliyan yo nan mòd pasif

Atravè mwaye a, yon kliyan pasif A voye yon kòmand $RevConnectToMe kliyan aktif Bki Lè sa a, reponn ak lòd la $ ConnectToMe.

Sèvi ak NAT Traversal pou konekte itilizatè yo nan mòd pasif
Kòm yon sèvè S nan ka ki anwo a gen yon mwaye DC

Si tou de kliyan yo nan mòd pasif sou ADC mwaye

Kliyan dèyè diferan NAT A и B rantre nan mwaye a S.

Sèvi ak NAT Traversal pou konekte itilizatè yo nan mòd pasif
Sa a se ki jan koneksyon an nan mwaye a sanble nan bò kliyan an A

Mwaye a aksepte koneksyon sou pò 1511. Kliyan A fè koneksyon sortan soti nan rezo prive li yo atravè pò 50758. Mwaye a, nan vire, wè adrès la nan aparèy NAT la, travay ak li ak emisyon li bay kliyan dapre idantifyan yo.

Kliyan A voye sou sèvè S mesaj ki mande èd pou konekte ak yon kliyan B.

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

Epitou nan mòd pasif, kliyan an B, li te resevwa kòmandman sa a, dwe rapòte pò prive li yo itilize pou konekte ak sant la atravè NAT.

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

Apre li fin resevwa enfòmasyon sa a kliyan an A imedyatman eseye etabli yon koneksyon ak kliyan an B ak rapò pwòp pò prive li yo.

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

Ki enterè a? Enterè a se nan chanje pwen final la nan menm koneksyon an pa kreye yon nouvo koneksyon nan yon adrès piblik atravè yon pò prive deja itilize.

Sèvi ak NAT Traversal pou konekte itilizatè yo nan mòd pasif
Bingo!

Natirèlman, nan ka sa a kliyan an NAT B gen tout dwa pou li rejte premye demann koneksyon an nan men yon kliyan A, men pwòp demann li kouri nan "twou" ki te kreye pa koneksyon sa a, epi koneksyon an etabli.

Sèvi ak NAT Traversal pou konekte itilizatè yo nan mòd pasif
Ilistrasyon apwopriye pou pwosesis la tout antye ak opozisyon an ki pwotokòl pa sèvi ak pò piblik ki louvri pa sesyon an NatS, osi byen ke adrès prive.

Épilogue

Nan moman ekri atik la (orijinal), apeprè mwatye nan kliyan DC yo ap travay nan mòd pasif. Sa vle di ke yon ka nan tout koneksyon posib pa ka fèt.

Pli lwen DC++ yo pral kapab kontoune NATlè l sèvi avèk koneksyon ki deja egziste AS и BS pou etabli yon koneksyon dirèk kliyan-kliyan, menm si A и B yo nan mòd pasif.

Sous: www.habr.com

Add nouvo kòmantè