Paggamit ng IPv6 na may Advanced Direct Connect

Nakatutuwang panoorin ang pagbuo ng network ng pagbabahagi ng file, ngunit mas kawili-wiling lumahok dito.

Ngayon, ang pag-install at paglulunsad ng isang moderno NMDC hub, ang bagong minted administrator ay nakakakuha ng access sa halos lahat ng mga development at karanasan na naipon sa lugar na ito ng kanyang mga nauna. Mayroon itong system na handa para sa pagpapalawak at pagpapasadya, kasama ang tulong ng maraming mga script.

Π‘ ADC hubs kung hindi man. Ang disenyo ng protocol na ito ay inilaan upang mapalawak. Gusto mo ba ng bagong feature? Well, ialok ito, isulong ito, ipatupad ito, ipatupad ito, gamitin ito.

Isalin sa Ingles

Bilang isang resulta, maaari kang, siyempre, makakuha ng isang handa na hub sa labas ng kahon, ngunit ang simpleng paglulunsad nito at paglimot tungkol dito ay hindi magiging mabuti. Ang pagpapalawak sa isang makasaysayang konteksto ay nagpapahiwatig din ng pagkakaroon ng ibang bilang ng iba't ibang function ng client at server software, depende sa bersyon. At kung ano ang gagana nang walang mga problema para sa isang gumagamit ay maaaring hindi tugma sa kliyente ng isa pa, at dapat itong isaalang-alang.

Nangyari ito sa IPv6. Ang matandang lalaki na NMDC ay hindi alam kung paano ito gagawin sa prinsipyo, ngunit ang ADC mismo ay handa na para dito. Gayunpaman, hindi lahat ay napakasimple.

Konting theory lang

Ang "aktibo" na gumagamit ay maaaring tumanggap ng mga papasok na koneksyon. Sa totoo lang, ang kahilingan ng koneksyon na nagmumula dito ay talagang imbitasyon.

Ang isang "passive" na user ay maaari lamang gumamit ng mga papalabas na kahilingan. Sa pamamagitan ng hub niya nagtatanong ang aktibong user ay nagpapadala ng isang imbitasyon - at ang koneksyon ay naitatag.

Paggamit ng IPv6 na may Advanced Direct Connect

At oo, ang mekanismong ito ay hindi nakadepende sa bersyon ng IP protocol na ginamit.

Swan, crayfish at pike

Pag-usapan natin ang software ng kliyente.

suporta sa IPv6 DC++ ay likas na eksperimental. Walang hiwalay na mga setting para dito, at mas nakakagulat para sa akin na makakita ng iba't ibang mga operating mode para sa iba't ibang bersyon ng IP, na may passive para lamang sa ikaanim, ngunit hindi ito tumpak.

Hindi posibleng makuha ang aktibong mode sa panahon ng manu-manong configuration kahit na tahasang gumagamit ng IP domain na may AAAA record bilang isang WAN, ngunit sa awtomatikong mode gamit ang UPnP lahat ay gumana gaya ng inaasahan.

AirDC++ ay mayroon ding suporta para sa mga koneksyon sa IPv6, at ganap itong ipinatupad nang hiwalay sa IPv4. Bukod dito, binabago ng kliyenteng ito ang mga tag ng user sa paraang maipakita ang mga operating mode para sa parehong mga IP protocol nang sabay-sabay. Ang mga hub mismo ay hindi alam kung paano gawin ito (pa), na nakakalungkot.

Kailangan kong magpareserba kaagad: Ginagawa ito ng AirDC++ nang mag-isa at para sa sarili nito. Sa hinaharap, para sa kaginhawahan, gagamit ako ng mga kumbinasyon tulad ng AP o AA bilang indikasyon ng aktibo o passive na mga mode ng pagpapatakbo para sa IPv4 at IPv6, ayon sa pagkakabanggit, sa halip na ang kanilang pagpapakita sa tunay na tag ng kliyente sa tunay na hub. Ito ay mahalaga.

Sa aming eksperimento gagamitin namin FlylinkDC++ bilang isang kliyente na hindi pamilyar sa IPv6. Dapat ding tandaan na ang suporta NATT para sa kanya sa oras ng pagsulat ng artikulong ito ay hindi ipinatupad kahit saan.

simula

Una sa lahat, titingnan natin ang malinaw na imposibleng mga koneksyon sa pagitan ng mga user ng iba't ibang bersyon ng IP protocol. Gagamitin para sa pagsusulit IPv6 ready hub na may resource A- at AAAA-record para sa domain name na gumaganap bilang address nito.

Paggamit ng IPv6 na may Advanced Direct Connect

Pakitandaan na kapag sinubukan mong (talaga) na makipag-ugnayan sa isang user na may bersyon XNUMX na IP address, may ipapakitang error.

Hub:	[Outgoing][IPv4:412]	 	DRCM AACX AACU ADCS/0.10 337151563
Hub:	[Incoming][IPv4:412]	 	DCTM AACU AACX ADCS/0.10 1988 337151563
Hub:	[Outgoing][IPv4:412]	 	DSTA AACX AACU 240 IPsunknown

Sa pagsasalin ng tao parang

P4: – Maaari ba akong kumapit sa iyo?
A6: – Kumapit ka!
P4: – Ang buhay ay sakit 0_0

Isang maikling diksyunaryo, kung kinakailangan, dito.

At kung ito ay kabaligtaran, at ang koneksyon ay magsisimula A4, pagkatapos ay walang error na ipinapakita at ang koneksyon ay nag-hang lang.

Hub:	[Outgoing][IPv4:412]	 	DCTM AACX AACU ADCS/0.10 1993 3871342713

Maging, mukhang hindi

Ang mahalaga ay ang connection mode na ipinapakita sa hub.

Kailangang makita ng mga kliyenteng walang suporta sa IPv6 ang mga user na konektado sa pamamagitan nito bilang malinaw na pasibo, dahil lang sa hindi napupuno ang hub para sa kanila I4 o I6 patlang nang naaayon.

Paggamit ng IPv6 na may Advanced Direct Connect
FlylinkDC++ vs. IPv6

Sa katotohanan, ang sitwasyon ay mas simple at mas kumplikado sa parehong oras.

Paggamit ng IPv6 na may Advanced Direct Connect
AirDC++ vs. IPv6

Mas madali dahil inuuna ang IPv6 kaysa sa IPv4, at naiintindihan iyon. Sa pamamagitan nito (bagama't magagamit ang pag-override gamit ang kaukulang opsyon) maitatag ang koneksyon sa hub, at iaalok ito ng aktibong kliyente sa passive na kliyente para sa koneksyon.

Mas mahirap, dahil kung may mga user na may suporta sa IPv6 sa hub, ngunit mahigpit silang konektado sa pamamagitan ng IPv4 address, kung gayon...

Paggamit ng IPv6 na may Advanced Direct Connect

... pagkatapos ay maaari kang kumonekta sa kanila (nang random) nang hindi nagkakaroon ng IPv4.

Pakitandaan na ang remote na kliyente ay itinalaga ang sarili bilang isang asset, ngunit itinuturing bilang isang pananagutan. Bakit?

Ihagis siya sa isang swing

Ngayon subukan nating ikonekta ang mga kliyente na may iba't ibang, ngunit karaniwan sa mga tuntunin ng IPv4, mga hanay ng suporta sa IP protocol sa bawat isa.

Paggamit ng IPv6 na may Advanced Direct Connect

Oo, nakakalungkot na ang mga passive user ay kailangang manigarilyo sa gilid. Ngunit hindi ito matutulungan, dahil ang kanilang nakikitang IP address ay hindi partikular na mahalaga - kaya't sila ay mga pananagutan.

Paggamit ng IPv6 na may Advanced Direct Connect

Bah! Nagpapadala ang aktibong kliyente pasibong utos?.. Makatuwirang asahan ang isang "natigil" na koneksyon, ngunit hindi, lumalabas ito sa ilalim ng mga kundisyon A4.

Bakit ganon? Nakipag-ugnayan kami sa developer at makuha ang sagot:

CTM ay hindi maganda kung ang ibang user ay hindi sumusuporta sa IPv6

At hindi ka maaaring makipagtalo! Ngunit nangangailangan ito ng panloob na lohika, na independiyente sa hub (tingnan ang code dito ΠΈ dito). Imposible pa ring tumulong sa mga passive, dahil

Active mode = TCPx+IPx

Ang mga pagtatangkang kumonekta sa pagitan ng mga kliyente na may karaniwang IPv6 IP support set ay ganito ang hitsura. Paalalahanan kita, makamit PA Hindi ako nagtagumpay para sa DC++.

Paggamit ng IPv6 na may Advanced Direct Connect

At muli ay isang sorpresa. Lumalabas na ang passive mode para sa IPv6, na ipinapakita ng DC++, ay alinman sa sinasadyang peke o isang bug.

Ano ang susunod?

Sa kasalukuyan, may eksaktong dalawang paraan upang malutas ang lahat ng posibleng problema sa pagkonekta sa mga user sa iba't ibang mga mode at sa iba't ibang hanay ng suporta sa IP protocol.

Ang una ay i-mute ang IPv6 nang buo o, sa kabaligtaran, lumikha ng hub upang gumana lamang sa pamamagitan nito.

Ang pangalawa ay ito Pagpapalawak, na papalapit na sa yugto ng pagsubok.

Well, kung ikaw ay masyadong tamad na i-set up ang aktibong mode para sa pagtatrabaho sa DC, tandaan:

Ang sinumang mayroon, kung ano ang ibibigay sa kanya, at sinumang wala, kahit na ang inaakala niyang mayroon siya ay kukunin sa kanya. OK. 8:18

Pinagmulan: www.habr.com

Magdagdag ng komento