Configurer votre réseau pour FCM

Ce document décrit les configurations réseau requises pour que FCM fonctionne correctement dans votre environnement réseau.

Configurer votre réseau pour envoyer des messages à FCM

Avant de commencer, vous devez vous assurer que votre système communique avec les serveurs FCM pour envoyer des messages et gérer les abonnements.

Pour envoyer des messages FCM ou gérer les abonnements, votre réseau devra communiquer avec les serveurs suivants via HTTPS :

  • fcm.googleapis.com (envoi de messages)
  • accounts.google.com (authentification pour l'envoi de messages)
  • iid.googleapis.com (gestion des abonnements aux thèmes et des groupes d'appareils)

Cette liste est susceptible d'être modifiée ultérieurement. Nous ne sommes pas en mesure de fournir de liste d'autorisation basée sur les adresses IP pour ces points de terminaison.

Configurez votre réseau pour les appareils Android à l'aide de FCM.

Cette section explique comment configurer votre réseau pour qu'il accepte le trafic FCM pour les appareils Android.

Ports FCM et votre pare-feu

La grande majorité des réseaux n'empêchent pas les appareils de se connecter au reste d'Internet. En général, c'est ce que nous recommandons. Toutefois, certaines organisations exigent des pare-feu dans leur plan de sécurité du périmètre.

Options de pare-feu

Option Notre rôle Règles spécifiques Remarques
Aucun (recommandé) - - -
Filtrage basé sur les ports (deuxième option) Limiter le trafic à des ports spécifiques

Ports TCP à ouvrir :

  • 5228
  • 5229
  • 5230
  • 443
Il s'agit de la règle la plus simple, qui permet d'éviter de dépendre d'éléments susceptibles de changer au fil du temps.
Filtrage basé sur le nom d'hôte Utiliser une configuration de pare-feu spéciale pour autoriser certaines entrées TLS SNI à traverser le pare-feu. Cela peut être combiné au filtrage basé sur les ports.

Noms d'hôte à ouvrir :

  • 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
Tous les logiciels pare-feu ne sont pas compatibles, mais beaucoup le sont. Cette liste est assez stable, mais nous ne vous préviendrons pas de manière proactive si elle change.
Filtrage basé sur les adresses IP (fortement déconseillé) Utilisez une très grande liste statique d'adresses IP. Ajoutez toutes les adresses IP listées dans goog.json à la liste d'autorisation. Cette liste est mise à jour régulièrement. Nous vous recommandons de mettre à jour vos règles tous les mois. Les problèmes causés par les restrictions d'adresse IP du pare-feu sont souvent intermittents et difficiles à diagnostiquer. Nous modifions très fréquemment notre liste d'adresses IP et sans préavis. Vous devrez donc saisir cette longue liste et la mettre à jour fréquemment.

De plus, nous constatons souvent des fautes de frappe lorsque les utilisateurs tentent de saisir des listes d'adresses IP autorisées dans les règles de leur pare-feu.

Nous ne recommandons pas cette méthode, car les informations deviennent inévitablement obsolètes et ne sont pas mises à jour.

De plus, la taille de la liste peut être difficile à gérer pour certains routeurs.

Pare-feu avec traduction d'adresse réseau ou inspection dynamique des paquets

Si votre réseau implémente la traduction d'adresse réseau (NAT) ou l'inspection des paquets avec état (SPI), implémentez un délai d'expiration de 30 minutes ou plus pour nos connexions sur les ports 5228 à 5230. Cela nous permet de fournir une connectivité fiable tout en réduisant la consommation de batterie des appareils mobiles de vos utilisateurs.

FCM et proxys

Le protocole de FCM pour la diffusion de messages push sur les appareils ne peut pas être proxyfié via des proxys réseau. Vous devez donc vous assurer que la connexion FCM des appareils de votre réseau peut se connecter directement à nos serveurs.

Interactions VPN et possibilité de contournement

Firebase Cloud Messaging prend diverses mesures pour s'assurer que la connexion de messagerie push du téléphone au serveur est fiable et disponible aussi souvent que possible. L'utilisation d'un VPN complique cette tâche.

Les VPN masquent les informations sous-jacentes dont FCM a besoin pour ajuster sa connexion afin de maximiser la fiabilité et l'autonomie de la batterie. Dans certains cas, les VPN interrompent activement les connexions de longue durée, ce qui nuit à l'expérience utilisateur en raison de messages manqués ou retardés, ou d'une consommation de batterie élevée. Lorsque le VPN est configuré pour nous le permettre, nous le contournons à l'aide d'une connexion chiffrée (sur le réseau de base Wi-Fi ou LTE) afin de garantir une expérience fiable et économe en batterie. L'utilisation de VPN contournables par FCM est spécifique au canal de notification push FCM. Les autres types de trafic FCM, comme le trafic d'enregistrement, utilisent le VPN s'il est actif. Lorsque la connexion FCM contourne le VPN, elle perd les avantages supplémentaires que le VPN peut offrir, comme le masquage de l'adresse IP.

Les méthodes de contrôle du contournement varient selon les VPN. Pour obtenir des instructions, consultez la documentation de votre VPN.

Si le VPN n'est pas configuré pour être contournable, Firebase Cloud Messaging utilisera le réseau VPN pour se connecter au serveur. Cela peut entraîner des périodes pendant lesquelles les messages sont retardés et une consommation de batterie plus importante, car Cloud Messaging s'efforce de maintenir la connexion VPN.