Gebruik IPv6 met Advanced Direct Connect

Dit is interessant om die ontwikkeling van die lêerdelingnetwerk dop te hou, maar dit is selfs meer interessant om daaraan deel te neem.

Vandag, die installering en bekendstelling van 'n moderne NMDC hub, kry die pasgemaakte administrateur toegang tot byna al die ontwikkelings en ervaring wat in hierdie area van sy voorgangers opgehoop is. Dit het 'n stelsel wat gereed is vir uitbreiding en aanpassing, insluitend met die hulp van talle skrifte.

С ADC hubs andersins. Die ontwerp van hierdie protokol is bedoel om uitbreidbaar te wees. Wil jy 'n nuwe kenmerk hê? Wel, bied dit aan, bevorder dit, implementeer dit, implementeer dit, gebruik dit.

Vertaal na Engels

As gevolg hiervan kan jy natuurlik 'n klaargemaakte hub uit die boks kry, maar om dit bloot te begin en daarvan te vergeet, sal nie goed wees nie. Uitbreidbaarheid in 'n historiese konteks impliseer ook die teenwoordigheid van 'n verskillende aantal verskillende funksies van kliënt- en bedienersagteware, afhangende van die weergawe. En wat sonder probleme vir een gebruiker sal werk, kan dalk onversoenbaar wees met die kliënt van 'n ander, en dit moet in ag geneem word.

Dit het gebeur met IPv6. Die ou NMDC weet in beginsel nie hoe om dit te doen nie, maar ADC is self gereed daarvoor. Maar nie alles so eenvoudig nie.

Net 'n bietjie teorie

Die "aktiewe" gebruiker kan inkomende verbindings aanvaar. Eintlik is die verbindingsversoek wat daaruit kom, eintlik uitnodiging.

'n "passiewe" gebruiker kan oor die algemeen slegs uitgaande versoeke gebruik. Deur die spil het hy vra die aktiewe gebruiker stuur 'n uitnodiging - en die verbinding is tot stand gebring.

Gebruik IPv6 met Advanced Direct Connect

En ja, hierdie meganisme hang nie af van die weergawe van die IP-protokol wat gebruik word nie.

Swaan, kreef en snoek

Kom ons praat oor kliëntsagteware.

IPv6 ondersteuning DC++ is eksperimenteel van aard. Daar is geen aparte instellings daarvoor nie, en dit was vir my des te meer verbasend om verskillende bedryfsmodusse vir verskillende weergawes van IP te sien, met passief net vir die sesde, maar dit is nie akkuraat nie.

Dit was nie moontlik om die aktiewe modus tydens handmatige konfigurasie te kry nie, selfs wanneer 'n IP-domein met 'n AAAA-rekord as 'n WAN uitdruklik gebruik is, maar in outomatiese modus met UPnP het alles gewerk soos verwag.

AirDC++ het ook ondersteuning vir IPv6-verbindings, en dit word heeltemal apart van IPv4 geïmplementeer. Boonop wysig hierdie kliënt gebruikersetikette op so 'n manier om bedryfsmodusse vir beide IP-protokolle gelyktydig te vertoon. Die spilpunte self weet (nog) nie hoe om dit te doen nie, wat jammer is.

Ek moet dadelik 'n bespreking maak: AirDC++ doen dit alleen en vir homself. In die toekoms sal ek gerieflikheidshalwe kombinasies soos AP of AA as 'n aanduiding van aktiewe of passiewe werkingsmodusse vir onderskeidelik IPv4 en IPv6, eerder as hul vertoon in die werklike kliëntmerker op die regte spilpunt. Dit is belangrik.

In ons eksperiment sal ons gebruik FlylinkDC++ as 'n kliënt wat glad nie met IPv6 vertroud is nie. Daar moet ook op gelet word dat ondersteuning NATT vir hom ten tyde van die skryf van hierdie artikel is nêrens geïmplementeer nie.

Begin

Eerstens sal ons kyk na natuurlik onmoontlike verbindings tussen gebruikers van verskillende weergawes van die IP-protokol. Sal vir die toets gebruik word IPv6 gereed hub met hulpbron A- en AAAA-rekords vir die domeinnaam wat as sy adres optree.

Gebruik IPv6 met Advanced Direct Connect

Neem asseblief kennis dat wanneer jy (eintlik) probeer om 'n gebruiker met 'n weergawe XNUMX IP-adres te kontak, 'n fout vertoon word.

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

In menslike vertaling klink dit soos

P4: – Kan ek aan jou vasklou?
A6: – Hou vas!
P4: – Die lewe is pyn 0_0

'n Kort woordeboek, indien nodig, hier.

En as dit andersom is, en die verbinding begin A4, dan word geen fout vertoon nie en die verbinding hang eenvoudig.

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

Wees, blyk nie te wees nie

Wat belangrik is, is die verbindingsmodus wat op die spilpunt vertoon word.

Kliënte sonder IPv6-ondersteuning sal gebruikers wat daardeur gekoppel is, as duidelik passief moet sien, bloot omdat die spilpunt nie vir hulle gevul word nie I4 of I6 veld dienooreenkomstig.

Gebruik IPv6 met Advanced Direct Connect
FlylinkDC++ vs. IPv6

In werklikheid is die situasie terselfdertyd eenvoudiger en meer kompleks.

Gebruik IPv6 met Advanced Direct Connect
AirDC++ vs. IPv6

Makliker omdat IPv6 voorkeur geniet bo IPv4, en dit is verstaanbaar. Dit is daardeur (alhoewel vervanging beskikbaar is met die ooreenstemmende opsie) dat die verbinding met die spilpunt tot stand gebring sal word, en die aktiewe kliënt sal dit aan die passiewe kliënt bied vir verbinding.

Dit is moeiliker, want as daar gebruikers met IPv6-ondersteuning op die spilpunt is, maar hulle is streng verbind via 'n IPv4-adres, dan...

Gebruik IPv6 met Advanced Direct Connect

... dan kan jy (na willekeur) aan hulle koppel sonder om hoegenaamd IPv4 te hê.

Neem asseblief kennis dat die afgeleë kliënt homself as 'n bate aangewys het, maar as 'n las behandel word. Hoekom?

Gooi hom in 'n swaai

Kom ons probeer nou om kliënte met verskillende, maar algemene in terme van IPv4, stelle IP-protokolondersteuning aan mekaar te koppel.

Gebruik IPv6 met Advanced Direct Connect

Ja, dit is jammer dat passiewe gebruikers op die kantlyn moet rook. Maar dit kan nie gehelp word nie, aangesien hul sigbare IP-adres nie besonder belangrik is nie - dit is hoekom dit aanspreeklikhede is.

Gebruik IPv6 met Advanced Direct Connect

Bah! Die aktiewe kliënt stuur passiewe opdrag?.. Dit sal logies wees om 'n "vas" verbinding te verwag, maar nee, dit blyk onder die voorwaardes A4.

Hoekom is dit? Ons kontak die ontwikkelaar en kry die antwoord:

CTM is nie goed as die ander gebruiker nie IPv6 ondersteun nie

En jy kan nie stry nie! Maar dit vereis interne logika, onafhanklik van die spilpunt (sien kode hier и hier). Dit is nog steeds onmoontlik om passiewe te help, want

Aktiewe modus = TCPx+IPx

Pogings om tussen kliënte met algemene IPv6 IP-ondersteuningsstelle te koppel, lyk soos volg. Laat ek jou herinner, bereik PA Ek het nie geslaag vir DC++ nie.

Gebruik IPv6 met Advanced Direct Connect

En weer 'n verrassing. Dit blyk dat die passiewe modus vir IPv6, wat DC++ demonstreer, óf 'n doelbewuste nep óf 'n fout is.

Wat is volgende?

Tans is daar presies twee maniere om alle moontlike probleme op te los wat gebruikers in verskillende modusse en met verskillende stelle IP-protokolondersteuning verbind.

Die eerste is om IPv6 heeltemal te demp of, omgekeerd, 'n spilpunt te skep om net daardeur te werk.

Die tweede een is hierdie uitbreiding, wat net die toetsstadium nader.

Wel, as jy te lui is om die aktiewe modus op te stel om in DC te werk, onthou:

Wie het, wat sal aan hom gegee word, en wie nie het nie, selfs wat hy dink hy het, sal van hom weggeneem word. OK. 8:18

Bron: will.com

Voeg 'n opmerking