Korištenje IPv6 s Advanced Direct Connect

Zanimljivo je promatrati razvoj mreže za dijeljenje datoteka, ali je još zanimljivije sudjelovati u njoj.

Danas se instalira i pušta u rad moderna NMDC čvorište, novopečeni administrator dobiva pristup gotovo svim dostignućima i iskustvima prikupljenim u ovom području svojih prethodnika. Ima sustav spreman za proširenje i prilagodbu, uključujući i uz pomoć brojnih skripti.

С ADC čvorišta inače. Namjera je da dizajn ovog protokola bude proširiv. Želite li novu značajku? Pa, ponudite, promovirajte, implementirajte, implementirajte, koristite.

Prevedi na engleski

Kao rezultat toga, možete, naravno, dobiti gotov hub iz kutije, ali jednostavno ga pokrenuti i zaboraviti na njega neće biti dobro. Proširljivost u povijesnom kontekstu također podrazumijeva prisutnost različitog broja različitih funkcija klijentskog i poslužiteljskog softvera, ovisno o verziji. A ono što će raditi bez problema za jednog korisnika može biti nekompatibilno s klijentom drugog i to se mora uzeti u obzir.

To se dogodilo s IPv6. Starac NMDC ne zna kako to učiniti u principu, ali sam ADC je spreman za to. Međutim, nije sve tako jednostavno.

Samo malo teorije

"Aktivni" korisnik može prihvatiti dolazne veze. Zapravo, zahtjev za povezivanje koji dolazi od njega je zapravo poziv.

"Pasivni" korisnik općenito može koristiti samo odlazne zahtjeve. Kroz čvorište on pita aktivni korisnik šalje pozivnicu - i veza je uspostavljena.

Korištenje IPv6 s Advanced Direct Connect

I da, ovaj mehanizam ne ovisi o verziji korištenog IP protokola.

Labud, rak i štuka

Razgovarajmo o klijentskom softveru.

IPv6 podrška DC + + je eksperimentalne prirode. Nema posebnih postavki za njega, a tim više me iznenadilo vidjeti različite načine rada za različite verzije IP-a, s pasivnim samo za šestu, ali to nije točno.

Nije bilo moguće dobiti aktivni način rada tijekom ručne konfiguracije čak ni kada se eksplicitno koristi IP domena s AAAA zapisom kao WAN, ali u automatskom načinu rada koristeći UPnP sve je radilo kako se očekivalo.

AirDC++ također ima podršku za IPv6 veze, a implementiran je potpuno odvojeno od IPv4. Štoviše, ovaj klijent modificira korisničke oznake na takav način da prikazuje načine rada za oba IP protokola istovremeno. Sami hubovi to (još) ne znaju učiniti, što je šteta.

Moram odmah napraviti rezervu: AirDC++ to radi sam i za sebe. Ubuduće, radi praktičnosti, koristit ću kombinacije poput AP ili AA kao pokazatelj aktivnih ili pasivnih načina rada za IPv4 odnosno IPv6, umjesto njihovog prikaza u stvarnoj oznaci klijenta na stvarnom čvorištu. To je važno.

U našem eksperimentu koristit ćemo se FlylinkDC++ kao klijent koji uopće nije upoznat s IPv6. Također treba napomenuti da podrška NATT za njega u vrijeme pisanja ovog članka nije bilo nigdje implementirano.

početak

Prije svega, osvrnut ćemo se na očito nemoguće veze između korisnika različitih verzija IP protokola. Koristit će se za test Čvorište spremno za IPv6 s izvornim A- i AAAA-zapisima za naziv domene koji djeluje kao njegova adresa.

Korištenje IPv6 s Advanced Direct Connect

Imajte na umu da kada (zapravo) pokušate kontaktirati korisnika s IP adresom verzije XNUMX, prikazuje se pogreška.

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

U ljudskom prijevodu to zvuči kao

P4: – Mogu li se priviti uz tebe?
A6: – Drži se!
P4: – Život je bol 0_0

Kratki rječnik, ako je potrebno, здесь.

A ako je obrnuto, i veza se pokreće A4, tada se ne prikazuje pogreška i veza jednostavno visi.

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

Biti, ne činiti se

Ono što je važno je način povezivanja prikazan na hubu.

Klijenti bez IPv6 podrške morat će vidjeti korisnike povezane preko njega kao jasno pasivne, jednostavno zato što se čvorište ne popunjava umjesto njih I4 ili I6 polje prema tome.

Korištenje IPv6 s Advanced Direct Connect
FlylinkDC++ vs. IPv6

U stvarnosti je situacija jednostavnija i složenija u isto vrijeme.

Korištenje IPv6 s Advanced Direct Connect
AirDC++ vs. IPv6

Lakše jer IPv6 ima prednost nad IPv4, i to je razumljivo. Kroz njega (iako je override dostupan uz odgovarajuću opciju) će se uspostaviti veza s hubom, a aktivni klijent će je ponuditi pasivnom klijentu na povezivanje.

Teže je, jer ako postoje korisnici s podrškom za IPv6 na čvorištu, ali su povezani isključivo preko IPv4 adrese, onda...

Korištenje IPv6 s Advanced Direct Connect

... tada se možete spojiti na njih (nasumično) bez da uopće imate IPv4.

Imajte na umu da se udaljeni klijent označio kao sredstvo, ali se tretira kao obveza. Zašto?

Baci ga u zamah

Pokušajmo sada međusobno povezati klijente s različitim, ali zajedničkim u smislu IPv4 skupovima podrške IP protokola.

Korištenje IPv6 s Advanced Direct Connect

Da, šteta je što pasivni korisnici moraju pušiti sa strane. Ali tu se ne može pomoći, budući da njihova vidljiva IP adresa nije osobito važna - zato su oni obveze.

Korištenje IPv6 s Advanced Direct Connect

Bah! Aktivni klijent šalje pasivna naredba?.. Bilo bi logično očekivati ​​"zaglavljenu" vezu, ali ne, ispada pod uvjetima A4.

Zašto je to? Kontaktiramo programera i dobivamo odgovor:

CTM nije dobro ako drugi korisnik ne podržava IPv6

I ne možete se svađati! Ali to zahtijeva unutarnju logiku, neovisnu o čvorištu (pogledajte kod здесь и здесь). Još uvijek je nemoguće pomoći pasivcima, jer

Aktivni način = TCPx+IPx

Pokušaji povezivanja između klijenata s uobičajenim skupovima IPv6 IP podrške izgledaju ovako. Da vas podsjetim, postići PA Za DC++ nisam uspio.

Korištenje IPv6 s Advanced Direct Connect

I opet iznenađenje. Ispostavilo se da je pasivni način rada za IPv6, koji DC++ demonstrira, ili namjerno lažiranje ili greška.

Što je sljedeće?

Trenutno postoje točno dva načina za rješavanje svih mogućih problema povezivanja korisnika u različitim načinima rada i s različitim skupovima podrške za IP protokol.

Prvi je potpuno isključiti IPv6 ili, obrnuto, stvoriti čvorište koje će raditi samo kroz njega.

Drugi je ovaj nastavak, koji se upravo približava fazi testiranja.

Pa, ako ste previše lijeni za postavljanje aktivnog načina rada za rad u DC-u, zapamtite:

Ko ima, dat će mu se, a ko nema, oduzet će mu se i ono što misli da ima. U REDU. 8:18

Izvor: www.habr.com

Dodajte komentar