वापरकर्त्यांना निष्क्रिय मोडमध्ये जोडण्यासाठी NAT ट्रॅव्हर्सल वापरणे

हा लेख मधील एका नोंदीचा मोफत अनुवाद आहे डीसी++ डेव्हलपर्स ब्लॉग.

लेखकाच्या परवानगीने (आणि स्पष्टता आणि आवडीसाठी), मी काही दुवे आणि काही वैयक्तिक संशोधन जोडले आहे.

परिचय

सध्या, कनेक्टिंग पेअरमधील किमान एक वापरकर्ता सक्रिय मोडमध्ये असणे आवश्यक आहे. जेव्हा दोन्ही बाजूंनी सक्रिय मोड कॉन्फिगर केलेला नसतो तेव्हा NAT ट्रॅव्हर्सल उपयुक्त ठरते. हे सामान्यतः असे घडते कारण येणारे कनेक्शन फायरवॉल किंवा NAT डिव्हाइसद्वारे अवरोधित केले जातात.

जर दोन्ही क्लायंट सक्रिय मोडमध्ये असतील तर

इनिशिएटिंग क्लायंट स्वतःचा आयपी अॅड्रेस आणि पोर्ट असलेली कमांड पाठवतो. $ConnectToMe दुसऱ्या क्लायंटला. या डेटाचा वापर करून, कमांड प्राप्त करणारा क्लायंट इनिशिएटरशी कनेक्शन स्थापित करतो.

जर एखादा क्लायंट निष्क्रिय मोडमध्ये असेल तर

हबद्वारे, एक निष्क्रिय क्लायंट A आदेश पाठवतो. $RevConnectToMe सक्रिय क्लायंट B, जे नंतर $ConnectToMe कमांडसह प्रतिसाद देते.

वापरकर्त्यांना निष्क्रिय मोडमध्ये जोडण्यासाठी NAT ट्रॅव्हर्सल वापरणे
सर्व्हर म्हणून S वरील प्रकरणात, डीसी हब उपस्थित आहे

जर दोन्ही क्लायंट निष्क्रिय मोडमध्ये असतील तर एडीसी हब

वेगवेगळ्या NAT च्या मागे असलेले क्लायंट A и B हबमध्ये सामील झालो S.

वापरकर्त्यांना निष्क्रिय मोडमध्ये जोडण्यासाठी NAT ट्रॅव्हर्सल वापरणे
क्लायंटच्या बाजूने हबशी असलेले कनेक्शन असे दिसते. A

हब पोर्ट १५११ वर कनेक्शन स्वीकारतो. क्लायंट A त्याच्या खाजगी नेटवर्कवरून पोर्ट ५०७५८ द्वारे आउटगोइंग कनेक्शन बनवते. हब, त्या बदल्यात, 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 ट्रॅव्हर्सल वापरणे
बिंगो!

अर्थात, या प्रकरणात क्लायंटचा NAT B क्लायंटकडून पहिली कनेक्शन विनंती नाकारण्याचा पूर्ण अधिकार आहे. A, परंतु त्याची स्वतःची विनंती आधीच याच कनेक्शनमुळे निर्माण झालेल्या "छिद्रात" निर्देशित केली जाते आणि शेवटी कनेक्शन स्थापित होते.

वापरकर्त्यांना निष्क्रिय मोडमध्ये जोडण्यासाठी NAT ट्रॅव्हर्सल वापरणे
संपूर्ण प्रक्रियेला अनुरूप असलेले एक उदाहरण ज्यामध्ये या चेतावणीसह प्रोटोकॉल सत्राद्वारे उघडलेले सार्वजनिक पोर्ट वापरत नाही. नॅट-S, तसेच खाजगी पत्ते.

एपिलोग

लिहिण्याच्या वेळी, अंदाजे अर्धे डीसी क्लायंट निष्क्रिय मोडमध्ये काम करतात. याचा अर्थ असा की सर्व संभाव्य कनेक्शनपैकी एक चतुर्थांश कनेक्शन स्थापित केले जाऊ शकत नाहीत.

भविष्यात DC++ NAT बायपास करण्यास सक्षम असेल., विद्यमान कनेक्शन वापरून A-S и B-S थेट क्लायंट-क्लायंट कनेक्शन स्थापित करण्यासाठी, जरी A и B निष्क्रिय मोडमध्ये आहेत.

स्त्रोत: www.habr.com

DDoS संरक्षण, VPS VDS सर्व्हर असलेल्या साइटसाठी विश्वसनीय होस्टिंग खरेदी करा 🔥 डीडॉस संरक्षणासह विश्वसनीय वेबसाइट होस्टिंग, व्हीपीएस (VPS) व्हीडीएस (VDS) सर्व्हर्स खरेदी करा | ProHoster