IPv6 kasutamine Advanced Direct Connectis

Failovahetusvõrgustiku arengut jälgida on huvitav, kuid veelgi huvitavam on selles osaleda.

Tänapäeval, paigaldades ja käivitades kaasaegse NMDC habi, saab uus administraator juurdepääsu praktiliselt kõigile eelkäijate kogemustele ja teadmistele selles valdkonnas. Tal on süsteem, mis on valmis laienemiseks ja kohandamiseks, sealhulgas paljude skriptide abil.

A ADC habidega erinevalt. Selle protokolli struktuur eeldab laiendatavust. Kas soovid uut funktsiooni? Noh, siis paku välja, edenda, rakenda, kasuta.

Translate to English

Tulemuseks on see, et "karbist välja" saab loomulikult valmis habi, kuid selle lihtsalt käivitamine ja unustamine ei ole õige. Laiendatavus ajaloos eeldab ka erinevate kliendi- ja serveritarkvara funktsioonide arvu variatsioone sõltuvalt versioonist. Ja see, mis töötab probleemideta ühel kasutajal, võib olla teise kliendi jaoks ühilduvuse probleem ja seda tuleb arvesse võtta.

Nii juhtus ka IPv6-ga. Vanamees NMDC ei oska seda üldse, kuid ADC on iseenesest selle jaoks valmis. Kuid mitte kõik pole nii lihtne.

Natukene teooriat

"Aktiivne" kasutaja võib vastu võtta sissetulevaid ühendusi. Tegelikult on tema poolt algatatud ühenduse taotlus tegelikult kutse.

"Passiivne" kasutaja saab üldiselt kasutada ainult väljuvaid taotlusi. Habi kaudu palub aktiivsel kasutajal saata kutse – ja ühendus luuakse.

IPv6 kasutamine Advanced Direct Connectis

Ja jah, see mehhanism ei sõltu kasutatavast IP-protokollist.

Jaged, vähk ja mõõkhani

Räägime klienditarkvarast.

IPv6 tugi DC++ on katsetamisetapis. Eraldi seadeid selle jaoks ei ole ja seetõttu oli minu jaoks üllatav näha erinevaid töörežiime erinevate IP-versioonide jaoks, kusjuures passiivne on just kuue jaoks, kuid see ei ole täpne.

Käsitsi seadistamisega aktiivset režiimi saavutada ei õnnestunud isegi siis, kui kasutasin WAN IP-d, millel on AAAA-kirje, kuid automaatse režiimiga UPnP kasutamisega töötas kõik nagu peab.

AirDC++ samuti sisaldab IPv6-ühenduste tuge, ja see on rakendatud täiesti eraldi IPv4-st. Veelgi enam, see klient muudab kasutaja sildid viisil, et kuvada töörežiimid mõlema IP-protokolli jaoks samal ajal. Hubs ise ei oska seda (praegu) teha, kahju.

Tuleb kohe mainida: AirDC++ teeb seda iseendale. Edasi liikudes kasutan mugavuse huvides selliseid variante nagu AP või AA nagu näidatakse aktiivsete või passiivsete töörežiimide jaoks IPv4 ja IPv6 vastavalt, mitte nende kuvamine reaalse kliendi sildil reaalses hubs. See on oluline.

Meie eksperimendis kasutame FlylinkDC++ kliendina, kes ei tunne IPv6-st üldse. Tuleb samuti märkida, et tugi NATT ei olnud kirjutamise ajal kuskil rakendatud.

Algus

Esiteks vaatame väärituks peetud ühendusi erinevate IP-protokolli versioonide vahel. Testiks kasutatakse IPv6-ready hubi A- ja AAAA-resursside rekorditega domeeninime jaoks, mis toimib selle aadressina.

IPv6 kasutamine Advanced Direct Connectis

Pange tähele, et siin (reaalses) katse tegemisel kasutaja poole pöörduda, kellel on kuuenda versiooni IP-aadress, kuvatakse viga.

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

Inimkeelde tõlgituna kõlab see nii

P4: – Kas ma tohin sinuga ühineda?
A6: – Ühine, jah!
P4: – Elu on valu 0_0

Lühike sõnastik, juhul kui see on vajalik, siin.

Ja kui vastupidi, kui ühenduse initsieerib A4, siis viga ei kuvata ja ühendus lihtsalt "hangub".

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

Ole olema, mitte tundma

Oluline on, et hubis kuvatakse ühenduse režiim.

IPv6 tuge mitte toetavad kliendid peavad nägema, et selle kaudu ühendatud kasutajad on üheselt passiivsed, kuna hub ei täida neile vastavalt I4 või I6 välja.

IPv6 kasutamine Advanced Direct Connectis
FlylinkDC++ vs. IPv6

Tegelikult on olukord lihtsam ja keerulisem samaaegselt.

IPv6 kasutamine Advanced Direct Connectis
AirDC++ vs. IPv6

Lihtsam, kuna IPv6-l on eelis IPv4 ees, ja see on arusaadav. Just selle kaudu (kuigi vastava valiku abil on saadaval ülekirjutamine) luuakse ühendus hubiga ja aktiivne klient pakub passivele ühendamiseks.

Keerulisem, kuna kui hubis on IPv6 tugevaid kasutajaid, kuid nad on ühendatud rangelt IPv4-aadressi kaudu, siis...

IPv6 kasutamine Advanced Direct Connectis

… võib neid ühendusele saada (juhuslikult) ilma IPv4-ta.

Pange tähele, et kaugklient on end defineerinud aktiivsena, kuid töödeldakse passiivsena. Miks?

Kas sinna see läheb.

Proovime nüüd ühendada kliente, kellel on erinevad, kuid osaliselt IPv4-protokolli toetused.

IPv6 kasutamine Advanced Direct Connectis

Jah, kahju, et passiivsetel kasutajatel tuleb nurka jääda. Kuid neid ei saa aidata, kuna nende nähtav IP-aadress ei tähenda palju – sellised nad ongi passiivsed.

IPv6 kasutamine Advanced Direct Connectis

Oi! Aktiivne klient saadab passiivse käsu.?.. Логично было бы ожидать «зависшего» соединения, но нет, оно получается на условиях A4.

Miks nii? Küsime arendajalt ja saame vastuse:

CTM pole hea, kui teine ​​kasutaja ei toeta IPv6.

Ja selle üle ei saa vaielda! Kuid see nõuab juba sisemist, hubist sõltumatut loogikat (vt koodi siin ja siin). Passiivsetele ei saa siiski endiselt abi anda, kuna

Aktiivne režiim = TCPx + IPx.

Katsed ühendada kliente, kellel on osaliselt IPv6-protokolli toetused, näevad välja järgmised. Tuletan meelde, et saavutada PA DC++ jaoks ei saanud ma.

IPv6 kasutamine Advanced Direct Connectis

Ja jälle üllatus. Selgub, et passiivne režiim IPv6 jaoks, mida DC++ demonstreerib, on kas tahtlik vale või viga.

Mis edasi?

Praegu on täpselt kaks viisi, kuidas lahendada kõiki võimalikkeühendusprobleeme erinevates režiimides ja erinevate protokolli toetustega.

Esimene on IPv6 täielik tõkestamine või vastupidi, luua hub, mis töötab ainult selle kaudu.

Teine on see laiendamine, mis on just nüüd testimise faasi lähedal.

Ja kui aktivrežiimi seadistamine DC-sse tundub vaevana, pidage meeles:

Kellel on, sellele antakse, ja kellel ei ole, sealt võetakse ära ka see, mis tal tundub olevat. Lk. 8:18

Allikas: habr.com

Osta usaldusväärne hostimine veebilehtede jaoks DDoS-i kaitsega, VPS VDS serverid 🔥 Osta usaldusväärne hostimine veebilehtede jaoks DDoS-i kaitsega, VPS VDS serverid | ProHoster