استفاده از IPv6 با Advanced Direct Connect

تماشای توسعه شبکه اشتراک فایل جالب است، اما شرکت در آن جالب تر است.

امروزه نصب و راه اندازی مدرن NMDC هاب، مدیر تازه تاسیس تقریباً به تمام پیشرفت ها و تجربیات انباشته شده در این زمینه از پیشینیان خود دسترسی پیدا می کند. دارای یک سیستم آماده برای گسترش و سفارشی سازی، از جمله با کمک اسکریپت های متعدد.

С ADC در غیر این صورت هاب ها طراحی این پروتکل در نظر گرفته شده است که قابل توسعه باشد. آیا شما یک ویژگی جدید می خواهید؟ خوب، آن را ارائه دهید، آن را تبلیغ کنید، اجرا کنید، اجرا کنید، از آن استفاده کنید.

به انگلیسی ترجمه کنید

در نتیجه، مطمئناً می توانید یک هاب آماده را از جعبه خارج کنید، اما به سادگی راه اندازی آن و فراموش کردن آن خوب نخواهد بود. توسعه پذیری در یک زمینه تاریخی همچنین مستلزم وجود تعداد متفاوتی از عملکردهای مختلف نرم افزار مشتری و سرور، بسته به نسخه است. و آنچه برای یک کاربر بدون مشکل کار می کند ممکن است با مشتری کاربر دیگر ناسازگار باشد و این باید در نظر گرفته شود.

این اتفاق با IPv6 افتاد. پیرمرد NMDC اصولاً نمی داند چگونه این کار را انجام دهد، اما خود ADC برای آن آماده است. با این حال، همه چیز به این سادگی نیست.

فقط یه تئوری کوچولو

کاربر "فعال" می تواند اتصالات ورودی را بپذیرد. در واقع، درخواست اتصال از آن در واقع است دعوت.

یک کاربر "منفعل" معمولاً فقط می تواند از درخواست های خروجی استفاده کند. از طریق هاب او می پرسد کاربر فعال یک دعوت نامه ارسال می کند - و اتصال برقرار می شود.

استفاده از IPv6 با Advanced Direct Connect

و بله، این مکانیسم به نسخه پروتکل IP مورد استفاده بستگی ندارد.

قو، خرچنگ و پیک

بیایید در مورد نرم افزار مشتری صحبت کنیم.

پشتیبانی از IPv6 DC ++ ماهیت تجربی است هیچ تنظیمات جداگانه ای برای آن وجود ندارد و دیدن حالت های عملیاتی مختلف برای نسخه های مختلف IP برای من تعجب آورتر بود، با غیرفعال فقط برای نسخه ششم، اما این دقیق نیست.

دریافت حالت فعال در حین پیکربندی دستی حتی در صورت استفاده صریح از یک دامنه IP با رکورد AAAA به عنوان WAN ممکن نبود، اما در حالت خودکار با استفاده از UPnP همه چیز همانطور که انتظار می رفت کار می کرد.

AirDC++ همچنین از اتصالات IPv6 پشتیبانی می کند و کاملاً جدا از IPv4 پیاده سازی می شود. علاوه بر این، این سرویس گیرنده تگ های کاربر را به گونه ای تغییر می دهد که حالت های عملیاتی را برای هر دو پروتکل IP به طور همزمان نمایش دهد. خود هاب ها (هنوز) نمی دانند چگونه این کار را انجام دهند، که حیف است.

من باید فوراً رزرو کنم: AirDC++ این کار را به تنهایی و برای خودش انجام می دهد. در آینده، برای راحتی، از ترکیباتی مانند AP یا AA به عنوان نشانه ای از حالت های فعال یا غیرفعال عملکرد برای IPv4 و IPv6، به جای نمایش آنها در تگ مشتری واقعی در هاب واقعی. مهم است.

در آزمایش خود استفاده خواهیم کرد FlylinkDC ++ به عنوان مشتری که اصلاً با IPv6 آشنا نیست. همچنین لازم به ذکر است که پشتیبانی NATT برای او در زمان نوشتن این مقاله در هیچ کجا اجرا نشد.

شروع

اول از همه، ما اتصالات غیرممکن بین کاربران نسخه های مختلف پروتکل IP را بررسی خواهیم کرد. برای آزمون استفاده خواهد شد هاب آماده IPv6 با منبع A- و سوابق AAAA برای نام دامنه که به عنوان آدرس آن عمل می کند.

استفاده از IPv6 با Advanced Direct Connect

لطفاً توجه داشته باشید که وقتی (در واقع) سعی می کنید با یک کاربر با آدرس IP نسخه XNUMX تماس بگیرید، یک خطا نمایش داده می شود.

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

در ترجمه انسانی به نظر می رسد

P4: - آیا می توانم به شما بچسبم؟
A6: - چسبید!
P4: – زندگی درد است 0_0

یک فرهنگ لغت کوتاه، در صورت لزوم، اینجا.

و اگر برعکس باشد و اتصال آغاز شود A4، هیچ خطایی نمایش داده نمی شود و اتصال به سادگی قطع می شود.

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

باش، به نظر نمی رسد

آنچه مهم است حالت اتصال نمایش داده شده در هاب است.

مشتریان بدون پشتیبانی IPv6 باید کاربرانی را که از طریق آن متصل می‌شوند کاملاً غیرفعال ببینند، فقط به این دلیل که هاب برای آنها پر نشده است. I4 یا I6 بر این اساس.

استفاده از IPv6 با Advanced Direct Connect
FlylinkDC++ در مقابل. IPv6

در واقعیت، وضعیت در عین حال ساده تر و پیچیده تر است.

استفاده از IPv6 با Advanced Direct Connect
AirDC++ در مقابل IPv6

آسانتر است زیرا IPv6 بر IPv4 ارجحیت دارد و این قابل درک است. از طریق آن است (اگرچه override با استفاده از گزینه مربوطه در دسترس است) که اتصال به هاب برقرار می شود و مشتری فعال آن را برای اتصال به مشتری غیرفعال ارائه می دهد.

مشکل تر است، زیرا اگر کاربرانی با پشتیبانی IPv6 در هاب وجود داشته باشند، اما آنها به طور دقیق از طریق یک آدرس IPv4 متصل شوند، پس ...

استفاده از IPv6 با Advanced Direct Connect

... سپس می توانید (به صورت تصادفی) بدون داشتن IPv4 به آنها متصل شوید.

لطفاً توجه داشته باشید که مشتری راه دور خود را به عنوان دارایی معرفی کرده است، اما به عنوان یک بدهی تلقی می شود. چرا؟

او را در یک تاب پرتاب کنید

اکنون بیایید سعی کنیم کلاینت هایی را با مجموعه هایی از پروتکل های IP متفاوت، اما مشترک از نظر IPv4 به یکدیگر متصل کنیم.

استفاده از IPv6 با Advanced Direct Connect

بله، حیف است که کاربران منفعل مجبورند در حاشیه سیگار بکشند. اما این نمی تواند کمک کند، زیرا آدرس IP قابل مشاهده آنها اهمیت خاصی ندارد - به همین دلیل است که آنها بدهی هستند.

استفاده از IPv6 با Advanced Direct Connect

باه! مشتری فعال ارسال می کند فرمان غیرفعالمنطقی است که انتظار یک اتصال "گیر" داشته باشیم، اما نه، تحت شرایط مشخص می شود A4.

چرا اینطور است؟ ما با توسعه دهنده تماس می گیریم و پاسخ را دریافت می کنیم:

CTM اگر کاربر دیگر از IPv6 پشتیبانی نکند خوب نیست

و شما نمی توانید بحث کنید! اما این به منطق داخلی، مستقل از هاب نیاز دارد (به کد مراجعه کنید اینجا и اینجا). هنوز نمی توان به افراد منفعل کمک کرد، زیرا

حالت فعال = TCPx+IPx

تلاش‌ها برای اتصال بین کلاینت‌ها با مجموعه‌های پشتیبانی IPv6 معمولی به این شکل است. اجازه دهید به شما یادآوری کنم، به دست آورید PA من برای DC++ موفق نشدم.

استفاده از IPv6 با Advanced Direct Connect

و باز هم سورپرایز به نظر می رسد که حالت غیرفعال برای IPv6، که DC++ نشان می دهد، یا جعلی عمدی است یا یک اشکال.

گام بعدی چیست؟

در حال حاضر دقیقاً دو راه برای حل تمام مشکلات احتمالی اتصال کاربران در حالت های مختلف و با مجموعه های مختلف پشتیبانی از پروتکل IP وجود دارد.

اولین مورد این است که IPv6 را به طور کامل قطع کنید یا برعکس، یک هاب ایجاد کنید تا فقط از طریق آن کار کند.

دومی اینه بزرگ شدن، که تازه به مرحله تست نزدیک می شود.

خوب، اگر برای تنظیم حالت فعال برای کار در DC خیلی تنبل هستید، به یاد داشته باشید:

هر که دارد، آنچه به او داده می شود و هر که ندارد، حتی آنچه را که فکر می کند دارد، از او گرفته می شود. خوب. 8:18

منبع: www.habr.com

اضافه کردن نظر