इस दस्तावेज़ में, आपके नेटवर्क एनवायरमेंट में FCM के सही तरीके से काम करने के लिए ज़रूरी नेटवर्क कॉन्फ़िगरेशन के बारे में बताया गया है.
FCM को मैसेज भेजने के लिए, अपना नेटवर्क कॉन्फ़िगर करना
शुरू करने से पहले, आपको यह पक्का करना होगा कि आपका सिस्टम, मैसेज भेजने और सदस्यताओं को मैनेज करने के लिए, FCM सर्वर से कम्यूनिकेट कर रहा हो.
FCM मैसेज भेजने या सदस्यताओं को मैनेज करने के लिए, आपके नेटवर्क को https के ज़रिए इन सर्वर से कम्यूनिकेट करना होगा:
- fcm.googleapis.com (मैसेज भेजना)
- accounts.google.com (मैसेज भेजने के लिए पुष्टि करना)
- iid.googleapis.com (विषय की सदस्यता और डिवाइस ग्रुप को मैनेज करना)
इस सूची में समय के साथ बदलाव हो सकता है. हम इन एंडपॉइंट के लिए, आईपी पते के आधार पर अनुमति वाली सूची उपलब्ध नहीं करा सकते.
FCM का इस्तेमाल करने वाले Android डिवाइसों के लिए, अपना नेटवर्क कॉन्फ़िगर करना
इस सेक्शन में, Android डिवाइसों के लिए FCM ट्रैफ़िक को सपोर्ट करने के लिए, अपने नेटवर्क को कॉन्फ़िगर करने का तरीका बताया गया है.
FCM पोर्ट और आपका फ़ायरवॉल
ज़्यादातर नेटवर्क, डिवाइसों को इंटरनेट से कनेक्ट करने पर कोई पाबंदी नहीं लगाते. आम तौर पर, हमारा सुझाव यही होता है. हालांकि, कुछ संगठन अपनी पेरिमीटर सुरक्षा योजना के तहत, फ़ायरवॉल का इस्तेमाल करते हैं.
फ़ायरवॉल के विकल्प
| विकल्प | हम क्या करते हैं | खास नियम | नोट |
|---|---|---|---|
| कोई नहीं (हमारी पहली पसंद) | - | - | - |
| पोर्ट के आधार पर फ़िल्टर करना (दूसरी पसंद) | ट्रैफ़िक को चुनिंदा पोर्ट तक सीमित करना | ये टीसीपी पोर्ट खोलें:
|
यह सबसे आसान नियम है. इससे, उन चीज़ों पर निर्भरता कम होती है जिनमें समय के साथ बदलाव होने की संभावना ज़्यादा होती है. |
| होस्टनेम के आधार पर फ़िल्टर करना | फ़ायरवॉल के खास कॉन्फ़िगरेशन का इस्तेमाल करके, चुनिंदा टीएलएस एसएनआई एंट्री को फ़ायरवॉल से पास होने की अनुमति देना. इसे पोर्ट के आधार पर फ़िल्टर करने के साथ जोड़ा जा सकता है. | ये होस्टनेम खोलें:
|
यह सुविधा, फ़ायरवॉल के सभी सॉफ़्टवेयर में उपलब्ध नहीं होती. हालांकि, यह कई सॉफ़्टवेयर में उपलब्ध है. यह सूची काफ़ी स्थिर है. हालांकि, इसमें बदलाव होने पर हम आपको इसकी सूचना नहीं देंगे. |
| आईपी पते के आधार पर फ़िल्टर करना. हम आपको यह विकल्प इस्तेमाल न करने का सुझाव देते हैं | आईपी पतों की एक बड़ी और स्थिर सूची का इस्तेमाल करना. | goog.json में दिए गए सभी आईपी पतों को, अनुमति वाली सूची में शामिल करना. यह सूची नियमित तौर पर अपडेट की जाती है. हमारा सुझाव है कि हर महीने अपने नियमों को अपडेट करें. फ़ायरवॉल के आईपी पते से जुड़ी पाबंदियों की वजह से होने वाली समस्याएं अक्सर रुक-रुक कर होती हैं. साथ ही, इनका पता लगाना मुश्किल होता है. | हम अपनी आईपी पतों की सूची में बहुत बार और बिना किसी सूचना के बदलाव करते हैं. इसलिए, आपको इस बड़ी सूची को डालना होगा और इसे बार-बार अपडेट करना होगा. इसके अलावा, हमने देखा है कि लोग अपने फ़ायरवॉल के नियमों में, अनुमति वाली सूची में शामिल किए जाने वाले आईपी पते डालते समय अक्सर टाइपिंग की गड़बड़ियां करते हैं. हम आपको यह विकल्प इस्तेमाल करने का सुझाव नहीं देते, क्योंकि इससे जानकारी पुरानी हो जाती है और इसे अपडेट नहीं किया जाता. इसके अलावा, कुछ राऊटर के लिए सूची का साइज़ बहुत बड़ा हो सकता है. |
नेटवर्क ऐड्रेस ट्रांसलेशन या स्टेटफ़ुल पैकेट इंस्पेक्शन फ़ायरवॉल
अगर आपका नेटवर्क, नेटवर्क ऐड्रेस ट्रांसलेशन (एनएटी) या स्टेटफ़ुल पैकेट इंस्पेक्शन (एसपीआई) का इस्तेमाल करता है, तो पोर्ट 5228-5230 पर हमारे कनेक्शन के लिए, 30 मिनट या उससे ज़्यादा का टाइम आउट सेट करें. इससे, हम भरोसेमंद कनेक्टिविटी उपलब्ध करा पाते हैं. साथ ही, आपके उपयोगकर्ताओं के मोबाइल डिवाइसों की बैटरी की खपत कम होती है.
FCM और प्रॉक्सी
डिवाइसों को पुश मैसेज डिलीवर करने के लिए, FCM के प्रोटोकॉल को नेटवर्क प्रॉक्सी के ज़रिए प्रॉक्सी नहीं किया जा सकता. इसलिए, आपको यह पक्का करना होगा कि आपके नेटवर्क पर मौजूद डिवाइसों से FCM का कनेक्शन, सीधे हमारे सर्वर से कनेक्ट हो सके.
वीपीएन के साथ इंटरैक्शन और इसे बायपास करने की सुविधा
Firebase Cloud Messaging यह पक्का करने के लिए कई कदम उठाता है कि फ़ोन से सर्वर तक पुश मैसेजिंग का कनेक्शन भरोसेमंद हो और ज़्यादा से ज़्यादा समय तक उपलब्ध रहे. वीपीएन का इस्तेमाल करने से, इस कोशिश में मुश्किल आती है.
वीपीएन, उस जानकारी को मास्क कर देते हैं जिसकी ज़रूरत FCM को अपने कनेक्शन को ट्यून करने के लिए होती है. इससे, भरोसेमंद कनेक्टिविटी और बैटरी लाइफ़ को बेहतर बनाया जा सकता है. कुछ मामलों में, वीपीएन लंबे समय तक चलने वाले कनेक्शन को तोड़ देते हैं. इससे, लोगों को खराब अनुभव मिलता है, क्योंकि उन्हें मैसेज नहीं मिलते या देर से मिलते हैं. साथ ही, बैटरी की खपत ज़्यादा होती है. जब वीपीएन को इस तरह कॉन्फ़िगर किया जाता है कि हम ऐसा कर सकें, तो हम एन्क्रिप्टेड कनेक्शन (बेसिक नेटवर्क वाई-फ़ाई या एलटीई के ज़रिए) का इस्तेमाल करके, वीपीएन को बायपास करते हैं. इससे, भरोसेमंद और बैटरी के लिए बेहतर अनुभव मिलता है. FCM बायपास किए जा सकने वाले वीपीएन का इस्तेमाल, सिर्फ़ FCM पुश सूचना चैनल के लिए किया जाता है. अन्य FCM ट्रैफ़िक, जैसे कि रजिस्ट्रेशन ट्रैफ़िक के लिए, वीपीएन का इस्तेमाल किया जाता है. हालांकि, यह तब किया जाता है, जब वीपीएन चालू हो. जब FCM कनेक्शन, वीपीएन को बायपास करता है, तो उसे वीपीएन से मिलने वाले अन्य फ़ायदे नहीं मिलते, जैसे, आईपी पते को मास्क करने की सुविधा.
अलग-अलग वीपीएन में, यह कंट्रोल करने के अलग-अलग तरीके होते हैं कि उन्हें बायपास किया जा सकता है या नहीं. निर्देशों के लिए, अपने वीपीएन के दस्तावेज़ देखें.
अगर वीपीएन को बायपास करने के लिए कॉन्फ़िगर नहीं किया गया है, तो Firebase Cloud Messaging सर्वर से कनेक्ट करने के लिए वीपीएन नेटवर्क का इस्तेमाल करेगा. इससे, मैसेज मिलने में देरी हो सकती है. साथ ही, बैटरी की खपत ज़्यादा हो सकती है, क्योंकि Cloud Messaging वीपीएन कनेक्शन के ज़रिए कनेक्शन बनाए रखने के लिए काम करता है.