इसके दो कारण हैं।
(1) पहला सरल, एंड-टू-एंड कनेक्टिविटी है । यदि स्रोत और गंतव्य दोनों के पास सार्वजनिक IPv4 (या IPv6, निश्चित रूप से) पता है, तो वे किसी भी दिशा में कभी भी एक-दूसरे से जुड़ सकते हैं।
192.168.0.52
हालाँकि, निजी आईपी के साथ आपका IoT जब भी चाहे इंटरनेट पर किसी भी सार्वजनिक आईपी से कनेक्ट करने के लिए NAT का उपयोग कर सकता है, लेकिन बाकी इंटरनेट इससे कनेक्ट नहीं हो सकता है। वहाँ की तरह kludges थे DNAT और UPnP है कि आप है कि कुछ इनकमिंग कनेक्शन सक्षम किए गए हैं निर्दिष्ट करने के लिए अनुमति देने के लिए उपयोग किया जाता है, लेकिन वे अधिक से अधिक आजकल के कार्यान्वयन की वजह से तोड़ रहे हैं CGNAT क्योंकि आईपीवी 4 की कमी की।
इस समस्या के लिए एक आम (तथाकथित) "समाधान" यह है कि आपके सभी (नैट) डिवाइस सार्वजनिक आईपी के साथ कुछ केंद्रीय स्थान से जुड़ते हैं (आमतौर पर डिवाइस के निर्माता द्वारा होस्ट किया जाता है)। यह तकनीकी रूप से काम करता है, लेकिन इसमें एक गोपनीयता समस्या शामिल है (आप अपने IoTs से सभी डेटा दे रहे हैं), सुरक्षा समस्या (जैसा कि आप उनके लिए खुले हैं, भंग या असंतुष्ट कर्मचारी आपका IoT डिवाइस कुछ भी कर सकता है और एक्सेस कर सकता है) ), और विश्वसनीयता का मुद्दा (जब निर्माता व्यवसाय से बाहर जाता है या पुराने उपकरणों का समर्थन बंद करने का फैसला करता है या आउटेज से पीड़ित है) आपके सभी (और हर व्यक्ति) पूरी तरह से कार्यात्मक डिवाइस काम करना बंद कर देंगे।
(2) दूसरी समस्या यह है कि यह भविष्य में कुछ समय (यहां तक कि आउटगोइंग कनेक्शन के लिए) काम करना बंद कर देगा (एक या दो साल में नहीं, लेकिन फिर भी। अधिक IoT और सेवाएं पकड़ेंगी, जितनी जल्दी यह टूटने लगेंगी)।
ऐसा इसलिए है क्योंकि NAT निजी पते 192.168.0.52
को बड़े पैमाने पर इंटरनेट तक पहुंचने की अनुमति देता है । यह 192.168.0.52
अपने राउटर के सार्वजनिक आईपी में स्रोत पते को बदलकर करता है , लेकिन स्रोत पोर्ट को पूल से मुक्त करता है।
उदाहरण के लिए, आपका पहला कनेक्शन हो 192.168.0.52:1000
सकता है (CG) -NATed to (public IP) 198.51.100.1:1000
, और आपका पड़ोसी 192.168.0.77:1000
NATed हो सकता है 198.51.100.1:1001
। 192.168.0.52:1001
तब से आपका दूसरा कनेक्शन नेटेड होगा 198.51.100.1:1002
आदि।
समस्या यह है कि वेब पेज खोलने जैसी सरल सामग्री भी संभवत: दर्जनों कनेक्शन खोलती है और एक दर्जन बंदरगाहों का उपयोग करती है (DNS प्रश्नों के लिए, विभिन्न तत्वों के लिए HTTP (एस) कनेक्शन, विभिन्न साइटों पर जेएस एनालिटिक्स आदि)।
टॉरेंट क्लाइंट जैसे अधिक महंगे प्रोग्राम आसानी से हजारों पोर्ट का उपयोग करेंगे । और किसी भी IP के लिए केवल 65535 पोर्ट उपलब्ध हैं।
जिसका अर्थ है कि आपके कई पड़ोसी समान CGNAT IP साझा करने के लिए कनेक्शन का एक बड़ा हिस्सा उपयोग करते हैं (और अधिक IoTs का अर्थ होगा अधिक कनेक्शन), और अचानक उस सार्वजनिक IP 198.51.100.1 पर सभी 65535 पोर्ट का उपयोग किया जाता है। जिसका अर्थ है कि आपके और आपके पड़ोसियों के लिए कोई नया कनेक्शन स्थापित नहीं किया जा सकता है। बड़े पैमाने पर जिसका अर्थ है कि बहुत से लोग अपने IoTs से कट जाते हैं, और सभ्यता जैसा कि हम जानते हैं कि यह ढह जाता है :-)
चूंकि हम इस सभ्यता के ढहने में देरी करना चाहते हैं, इसलिए हम इसके बजाय IPv6 में बदलाव कर रहे हैं । यदि संभव हो तो IPv6 का उपयोग करके इस सभ्यता के निरंतर अस्तित्व का समर्थन करें । धन्यवाद!