FCM के लिए अपना नेटवर्क कॉन्फ़िगर करना

इस दस्तावेज़ में, FCM को आपके नेटवर्क एनवायरमेंट में सही तरीके से काम करने के लिए ज़रूरी नेटवर्क कॉन्फ़िगरेशन के बारे में बताया गया है.

FCM को मैसेज भेजने के लिए, अपना नेटवर्क कॉन्फ़िगर करना

शुरू करने से पहले, आपको यह पक्का करना होगा कि आपका सिस्टम, मैसेज भेजने और सदस्यताओं को मैनेज करने के लिए, FCM सर्वर से कम्यूनिकेट कर रहा हो.

FCM मैसेज भेजने या सदस्यताओं को मैनेज करने के लिए, आपके नेटवर्क को https के ज़रिए इन सर्वर से कम्यूनिकेट करना होगा:

  • fcm.googleapis.com (मैसेज भेजना)
  • accounts.google.com (मैसेज भेजने के लिए पुष्टि करना)
  • iid.googleapis.com (विषय की सदस्यता और डिवाइस ग्रुप को मैनेज करना)

इस सूची में समय के साथ बदलाव हो सकता है. हम इन एंडपॉइंट के लिए, आईपी पते के आधार पर अनुमति वाली सूची उपलब्ध नहीं करा सकते.

FCM का इस्तेमाल करने वाले Android डिवाइसों के लिए, अपना नेटवर्क कॉन्फ़िगर करना

इस सेक्शन में, Android डिवाइसों के लिए FCM ट्रैफ़िक को सपोर्ट करने के लिए, अपने नेटवर्क को कॉन्फ़िगर करने का तरीका बताया गया है.

FCM पोर्ट और आपका फ़ायरवॉल

ज़्यादातर नेटवर्क, डिवाइसों को इंटरनेट से कनेक्ट करने पर कोई पाबंदी नहीं लगाते. आम तौर पर, हमारा सुझाव यही होता है. हालांकि, कुछ संगठन अपनी पेरिमीटर सुरक्षा योजना के तहत, फ़ायरवॉल का इस्तेमाल करते हैं.

फ़ायरवॉल के विकल्प

विकल्प हम क्या करते हैं खास नियम नोट
कोई नहीं (हमारी सलाह) - - -
पोर्ट के आधार पर फ़िल्टर करना (दूसरा विकल्प) ट्रैफ़िक को कुछ पोर्ट तक सीमित करना

ये टीसीपी पोर्ट खोलें:

  • 5228
  • 5229
  • 5230
  • 443
यह सबसे आसान नियम है. इससे, उन चीज़ों पर निर्भरता कम होती है जिनमें समय के साथ बदलाव होने की संभावना ज़्यादा होती है.
होस्टनेम के आधार पर फ़िल्टर करना खास फ़ायरवॉल कॉन्फ़िगरेशन का इस्तेमाल करके, कुछ टीएलएस एसएनआई एंट्री को अनुमति वाली सूची में शामिल करना, ताकि वे फ़ायरवॉल से पास हो सकें. इसे पोर्ट के आधार पर फ़िल्टर करने के साथ जोड़ा जा सकता है.

ये होस्टनेम खोलें:

  • mtalk.google.com
  • mtalk4.google.com
  • mtalk-staging.google.com
  • mtalk-dev.google.com
  • alt1-mtalk.google.com
  • alt2-mtalk.google.com
  • alt3-mtalk.google.com
  • alt4-mtalk.google.com
  • alt5-mtalk.google.com
  • alt6-mtalk.google.com
  • alt7-mtalk.google.com
  • alt8-mtalk.google.com
  • android.apis.google.com
  • device-provisioning.googleapis.com
  • firebaseinstallations.googleapis.com
सभी फ़ायरवॉल सॉफ़्टवेयर इस सुविधा को सपोर्ट नहीं करते, लेकिन कई करते हैं. यह सूची काफ़ी स्थिर है. हालांकि, इसमें बदलाव होने पर हम आपको इसकी सूचना नहीं देंगे.
आईपी पते के आधार पर फ़िल्टर करना. हम आपको यह विकल्प इस्तेमाल न करने का सुझाव देते हैं आईपी पतों की एक बड़ी और स्थिर सूची का इस्तेमाल करना. goog.json में दिए गए सभी आईपी पतों को अनुमति वाली सूची में शामिल करना. इस सूची को नियमित तौर पर अपडेट किया जाता है. हमारा सुझाव है कि हर महीने अपने नियमों को अपडेट करें. फ़ायरवॉल की आईपी पाबंदियों की वजह से होने वाली समस्याएं अक्सर रुक-रुक कर होती हैं और इनका पता लगाना मुश्किल होता है. हम अपनी आईपी पतों की सूची को बहुत बार और बिना किसी सूचना के बदलते हैं. इसलिए, आपको इस बड़ी सूची को डालना होगा और इसे बार-बार अपडेट करना होगा.

इसके अलावा, हमने देखा है कि लोग अपने फ़ायरवॉल के नियमों में, आईपी पतों की अनुमति वाली सूची डालते समय अक्सर टाइपिंग की गड़बड़ियां करते हैं.

हम आपको यह विकल्प इस्तेमाल न करने का सुझाव देते हैं, क्योंकि इससे जानकारी पुरानी हो जाती है और इसे अपडेट नहीं किया जाता.

इसके अलावा, कुछ राऊटर के लिए सूची का साइज़ बहुत बड़ा हो सकता है.

नेटवर्क ऐड्रेस ट्रांसलेशन या स्टेटफ़ुल पैकेट इंस्पेक्शन फ़ायरवॉल

अगर आपका नेटवर्क, नेटवर्क ऐड्रेस ट्रांसलेशन (एनएटी) या स्टेटफ़ुल पैकेट इंस्पेक्शन (एसपीआई) का इस्तेमाल करता है, तो पोर्ट 5228-5230 पर हमारे कनेक्शन के लिए, 30 मिनट या उससे ज़्यादा का टाइम आउट सेट करें. इससे हमें भरोसेमंद कनेक्टिविटी देने में मदद मिलती है. साथ ही, आपके उपयोगकर्ताओं के मोबाइल डिवाइसों की बैटरी की खपत कम होती है.

FCM और प्रॉक्सी

डिवाइसों को पुश मैसेज डिलीवर करने के लिए, FCM के प्रोटोकॉल को नेटवर्क प्रॉक्सी के ज़रिए प्रॉक्सी नहीं किया जा सकता. इसलिए, आपको यह पक्का करना होगा कि आपके नेटवर्क पर मौजूद डिवाइसों से FCM का कनेक्शन, सीधे हमारे सर्वर से कनेक्ट हो सके.

वीपीएन के साथ इंटरैक्शन और इसे बायपास करने की सुविधा

Firebase Cloud Messaging यह पक्का करने के लिए कई कदम उठाता है कि पुश मैसेजिंग कनेक्शन फ़ोन से सर्वर तक भरोसेमंद हो और ज़्यादा से ज़्यादा समय तक उपलब्ध रहे. वीपीएन का इस्तेमाल करने से, इस कोशिश में मुश्किल आती है.

वीपीएन, उस जानकारी को मास्क कर देते हैं जिसकी ज़रूरत FCM को अपने कनेक्शन को ट्यून करने के लिए होती है, ताकि भरोसेमंद तरीके से काम किया जा सके और बैटरी लाइफ़ को बढ़ाया जा सके. कुछ मामलों में, वीपीएन लंबे समय तक चलने वाले कनेक्शन को तोड़ देते हैं. इससे, मैसेज न मिलने या देर से मिलने या बैटरी की ज़्यादा खपत होने की वजह से, लोगों का अनुभव खराब होता है. जब वीपीएन को इस तरह कॉन्फ़िगर किया जाता है कि हम ऐसा कर सकें, तो हम एन्क्रिप्ट (सुरक्षित) किए गए कनेक्शन (बेसिक नेटवर्क वाई-फ़ाई या एलटीई के ज़रिए) का इस्तेमाल करके, वीपीएन को बायपास करते हैं. इससे, भरोसेमंद और बैटरी के लिए बेहतर अनुभव मिलता है. FCM बायपास किए जा सकने वाले वीपीएन का इस्तेमाल, सिर्फ़ FCM पुश नोटिफ़िकेशन चैनल के लिए किया जाता है. अन्य FCM ट्रैफ़िक, जैसे कि रजिस्ट्रेशन ट्रैफ़िक, चालू होने पर वीपीएन का इस्तेमाल करता है. जब FCM कनेक्शन वीपीएन को बायपास करता है, तो उसे वीपीएन से मिलने वाले अन्य फ़ायदे नहीं मिलते, जैसे, आईपी पते को मास्क करना.

अलग-अलग वीपीएन में, यह कंट्रोल करने के अलग-अलग तरीके होते हैं कि उन्हें बायपास किया जा सकता है या नहीं. निर्देशों के लिए, अपने वीपीएन का दस्तावेज़ देखें.

अगर वीपीएन को बायपास करने के लिए कॉन्फ़िगर नहीं किया गया है, तो Firebase Cloud Messaging सर्वर से कनेक्ट करने के लिए वीपीएन नेटवर्क का इस्तेमाल करेगा. इससे, मैसेज मिलने में देरी हो सकती है. साथ ही, बैटरी की ज़्यादा खपत हो सकती है, क्योंकि Cloud Messaging, वीपीएन कनेक्शन पर कनेक्शन बनाए रखने के लिए काम करता है.