غیر فعال موڈ میں صارفین کو جوڑنے کے لیے NAT Traversal کا استعمال

یہ مضمون اندراجات میں سے ایک کا مفت ترجمہ ہے۔ DC++ ڈویلپر بلاگ.

مصنف کی اجازت سے (نیز وضاحت اور دلچسپی کے لیے)، میں نے اسے لنکس کے ساتھ رنگ دیا اور کچھ ذاتی تحقیق کے ساتھ اس کی تکمیل کی۔

تعارف

اس وقت کنیکٹنگ پیئر کا کم از کم ایک صارف فعال موڈ میں ہونا چاہیے۔ NAT ٹراورسل میکانزم مفید ہو گا جب ایکٹو موڈ دونوں طرف کنفیگر نہ ہو۔ یہ عام طور پر فائر وال یا NAT ڈیوائس آنے والے کنکشن کو روکنے کی وجہ سے ہوتا ہے۔

اگر دونوں کلائنٹ ایکٹو موڈ میں ہیں۔

شروع کرنے والا کلائنٹ ایک کمانڈ بھیجتا ہے جس میں اس کا اپنا IP ایڈریس اور پورٹ ہوتا ہے۔ $ConnectToMe دوسرے کلائنٹ کو۔ اس ڈیٹا کا استعمال کرتے ہوئے، کلائنٹ جس نے کمانڈ حاصل کی ہے، شروع کرنے والے کے ساتھ کنکشن قائم کرتا ہے۔

اگر کلائنٹس میں سے کوئی ایک غیر فعال موڈ میں ہے۔

حب کے ذریعے، ایک غیر فعال کلائنٹ A ایک حکم بھیجتا ہے $RevConnectToMe فعال کلائنٹ Bجو پھر کمانڈ کے ساتھ جواب دیتا ہے $ConnectToMe۔

غیر فعال موڈ میں صارفین کو جوڑنے کے لیے NAT Traversal کا استعمال
بطور سرور S اوپر کی صورت میں ایک DC حب ہے۔

اگر دونوں کلائنٹس غیر فعال موڈ پر ہیں۔ ADC مرکز

مختلف NATs کے پیچھے کلائنٹ A и B مرکز میں شمولیت اختیار کی S.

غیر فعال موڈ میں صارفین کو جوڑنے کے لیے NAT Traversal کا استعمال
ہب سے کنکشن کلائنٹ کی طرف سے اس طرح نظر آتا ہے۔ A

حب پورٹ 1511 پر کنکشن قبول کرتا ہے۔ کلائنٹ A پورٹ 50758 کے ذریعے اپنے نجی نیٹ ورک سے آؤٹ گوئنگ کنکشن بناتا ہے۔ حب، بدلے میں، NAT ڈیوائس کا پتہ دیکھتا ہے، اس کے ساتھ کام کرتا ہے اور اسے کلائنٹس کے لیے ان کے شناخت کنندگان کے مطابق نشر کرتا ہے۔

گاہک A سرور کو بھیجتا ہے۔ S ایک کلائنٹ کے ساتھ رابطہ قائم کرنے میں مدد مانگنے والا پیغام B.

Hub: [Outgoing][178.79.159.147:1511] DRCM AAAA BBBB ADCS/0.10 1649612991

غیر فعال موڈ میں بھی، کلائنٹ B, یہ کمانڈ موصول ہونے کے بعد، NAT کے ذریعے حب سے منسلک ہونے کے لیے استعمال ہونے والی اپنی نجی پورٹ کی اطلاع دینی چاہیے۔

Hub: [Incoming][178.79.159.147:1511] DNAT BBBB AAAA ADCS/0.10 59566 1649612991

یہ معلومات حاصل کرنے کے بعد کلائنٹ A فوری طور پر کلائنٹ کے ساتھ رابطہ قائم کرنے کی کوشش کرتا ہے۔ B اور اپنی ذاتی پورٹ کی رپورٹ کرتا ہے۔

Hub:		[Outgoing][178.79.159.147:1511]	 	D<b>RNT</b> AAAA BBBB ADCS/0.10 <b>50758</b> 1649612991

دلچسپی کیا ہے؟ دلچسپی پہلے سے استعمال شدہ پرائیویٹ پورٹ کے ذریعے ایک پبلک ایڈریس پر نیا کنکشن بنا کر اسی کنکشن کے اینڈ پوائنٹ کو منتقل کرنے میں ہے۔

غیر فعال موڈ میں صارفین کو جوڑنے کے لیے NAT Traversal کا استعمال
بنگو!

بالکل، اس معاملے میں کلائنٹ NAT B کو کلائنٹ کی طرف سے پہلی کنکشن کی درخواست کو مسترد کرنے کا پورا حق ہے۔ A، لیکن اس کی اپنی درخواست اسی کنکشن سے پیدا ہونے والے "سوراخ" میں پہنچ جاتی ہے، اور کنکشن قائم ہو جاتا ہے۔

غیر فعال موڈ میں صارفین کو جوڑنے کے لیے NAT Traversal کا استعمال
انتباہ کے ساتھ پورے عمل کے لیے موزوں مثال پروٹوکول سیشن کے ذریعہ کھولی گئی عوامی بندرگاہوں کا استعمال نہیں کرتا ہے۔ NATSنیز نجی پتے۔

اپسنہار

(اصل) مضمون لکھنے کے وقت، تقریباً نصف ڈی سی کلائنٹس غیر فعال موڈ میں کام کر رہے ہیں۔ اس کا مطلب ہے کہ تمام ممکنہ رابطوں کا ایک چوتھائی حصہ نہیں بنایا جا سکتا۔

مزید DC++ NAT کو بائی پاس کر سکے گا۔موجودہ کنکشن کا استعمال کرتے ہوئے AS и BS ایک براہ راست کلائنٹ کلائنٹ کنکشن قائم کرنے کے لیے، چاہے A и B غیر فعال موڈ میں ہیں۔

ماخذ: www.habr.com

نیا تبصرہ شامل کریں