توضّح هذه الوثيقة إعدادات الشبكة المطلوبة لكي تعمل FCM بشكل صحيح ضمن بيئة شبكتك.
إعداد شبكتك لإرسال الرسائل إلى FCM
قبل البدء، عليك التأكّد من أنّ نظامك يتواصل مع FCM خوادم لإرسال الرسائل وإدارة الاشتراكات.
لإرسال رسائل FCM أو إدارة الاشتراكات، يجب أن تتواصل شبكتك مع الخوادم التالية عبر بروتوكول HTTPS:
- fcm.googleapis.com (إرسال الرسائل)
- accounts.google.com (المصادقة لإرسال الرسائل)
- iid.googleapis.com (الاشتراك في المواضيع وإدارة مجموعات الأجهزة)
هذه القائمة قابلة للتغيير بمرور الوقت. لا يمكننا توفير قائمة عناوين IP المسموح بها لنقاط النهاية هذه.
إعداد شبكتك لأجهزة Android التي تستخدم FCM
يوضّح هذا القسم كيفية إعداد شبكتك لدعم FCM حركة بيانات لأجهزة Android.
FCM والمنافذ وجدار الحماية
لا تمنع الغالبية العظمى من الشبكات الأجهزة من الاتصال ببقية الإنترنت. وبشكل عام، ننصحك بذلك. ومع ذلك، تطلب بعض المؤسسات استخدام جدران الحماية كجزء من خطة أمان محيطها.
خيارات جدار الحماية
| Option | أنشطتنا | القواعد الخاصة | ملاحظات |
|---|---|---|---|
| بدون جدار حماية (التنسيق المفضّل) | - | - | - |
| الفلترة المستندة إلى المنفذ (الخيار الثاني) | حصر حركة البيانات بمنافذ معيّنة | منافذ TCP المراد فتحها:
|
هذه هي أبسط قاعدة وتمنع الاعتماد على العناصر التي من المرجّح أن تتغيّر بمرور الوقت. |
| الفلترة المستندة إلى اسم المضيف | استخدام إعداد خاص لجدار الحماية من أجل السماح بمرور إدخالات معيّنة من مؤشر اسم الخادم (SNI) في بروتوكول أمان طبقة النقل (TLS) عبر جدار الحماية يمكن دمج ذلك مع الفلترة المستندة إلى المنفذ. | أسماء المضيفين المراد فتحها:
|
لا تتيح بعض برامج جدار الحماية هذه الميزة، ولكن تتيحها العديد من البرامج الأخرى. هذه القائمة ثابتة إلى حد كبير، ولكن لن نرسل إليك إشعارًا بشكل استباقي إذا تغيّرت. |
| الفلترة المستندة إلى عنوان IP (لا يُنصح بها بشدة) | استخدام قائمة ثابتة كبيرة جدًا من عناوين IP | السماح بجميع عناوين IP المُدرَجة في goog.json. يتم تعديل هذه القائمة بانتظام، وننصحك بتعديل قواعدك شهريًا. غالبًا ما تكون المشاكل الناتجة عن قيود عنوان IP في جدار الحماية متقطّعة ويصعب تشخيصها. | نغيّر قائمة عناوين IP بشكل متكرر جدًا وبدون سابق إنذار، لذا عليك إدخال هذه القائمة الكبيرة وتعديلها بشكل متكرر. بالإضافة إلى ذلك، نلاحظ أخطاء إملائية متكررة عندما يحاول المستخدمون إدخال قوائم عناوين IP المسموح بها في قواعد جدار الحماية. لا ننصح بذلك لأنّ المعلومات تصبح قديمة دائمًا ولا يتم تحديثها. بالإضافة إلى ذلك، قد يكون حجم القائمة كبيرًا جدًا بالنسبة إلى بعض أجهزة الراوتر. |
جدران الحماية التي تستخدم ترجمة عنوان الشبكة أو فحص الحزم المستند إلى الحالة
إذا كانت شبكتك تستخدم ترجمة عنوان الشبكة (NAT) أو فحص الحزم المستند إلى الحالة (SPI)، عليك ضبط مهلة مدتها 30 دقيقة أو أكثر لاتصالاتنا عبر المنافذ 5228-5230. يسمح لنا ذلك بتوفير اتصال موثوق به مع تقليل استهلاك بطارية الأجهزة الجوّالة لمستخدميك.
FCM والخوادم الوكيلة
بروتوكول FCM لتسليم الرسائل الفورية إلى الأجهزة لا يمكن توجيهه من خلال الخوادم الوكيلة للشبكة. لذلك، عليك التأكّد من أنّ اتصال FCMمن الأجهزة على شبكتك يمكنه الاتصال مباشرةً بـ خوادمنا.
التفاعلات مع شبكة VPN وإمكانية تجاوزها
Firebase Cloud Messaging تتّخذ خطوات مختلفة لضمان أنّ اتصال المراسلة الفورية من الهاتف إلى الخادم موثوق به ومتاح قدر الإمكان. ويؤدي استخدام شبكة VPN إلى تعقيد هذه الجهود.
تحجب شبكات VPN المعلومات الأساسية التي تحتاجها FCM لضبط اتصالها من أجل زيادة الموثوقية وعمر البطارية إلى أقصى حد. في بعض الحالات، تقطع شبكات VPN بشكل نشط الاتصالات الطويلة الأمد، ما يؤدي إلى تجربة سيئة للمستخدم بسبب الرسائل التي لم يتم استلامها أو تأخّرت أو بسبب استهلاك البطارية بشكل كبير. عندما يتم إعداد شبكة VPN للسماح لنا بذلك، نتجاوز شبكة VPN باستخدام اتصال مشفّر (عبر شبكة Wi-Fi الأساسية أو شبكة LTE) لضمان تجربة موثوقة ومناسبة للبطارية. يقتصر استخدام FCM لشبكات VPN التي يمكن تجاوزها على قناة الإشعارات الفورية في FCM. تستخدم حركة البيانات الأخرى FCM، مثل حركة بيانات التسجيل، شبكة VPN إذا كانت مفعّلة. عندما يتجاوز اتصال FCM شبكة VPN، يفقد مزايا إضافية قد توفّرها شبكة VPN، مثل حجب عنوان IP.
تتّبع شبكات VPN المختلفة طرقًا مختلفة للتحكّم في إمكانية تجاوزها من عدمه. يُرجى الرجوع إلى مستندات شبكة VPN المحدّدة للحصول على التعليمات.
إذا لم يتم إعداد شبكة VPN بحيث يمكن تجاوزها، ستستخدم Firebase Cloud Messaging شبكة VPN للاتصال بالخادم. قد يؤدي ذلك إلى تأخير الرسائل لفترات زمنية معيّنة، وقد يؤدي إلى زيادة استهلاك البطارية لأنّ Cloud Messaging تعمل على الحفاظ على الاتصال عبر شبكة VPN.