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.

Configurez 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 doit 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 (abonnement à un sujet et gestion des groupes d'appareils)

Cette liste est susceptible d'être modifiée au fil du temps. Nous ne sommes pas en mesure de fournir une liste d'autorisation basée sur l'adresse 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 ne limitent pas la connexion des appareils au reste d'Internet. En général, c'est ce que nous recommandons. Cependant, certaines organisations ont besoin de pare-feu dans le cadre de leur plan de sécurité du périmètre.

Options de pare-feu

Option Notre rôle Règles spécifiques Remarques
Aucune (recommandé) - - -
Filtrage basé sur les ports (deuxième choix) 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 évite 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 ajouter à la liste d'autorisation certaines entrées SNI TLS à passer à travers le pare-feu. Cela peut être combiné avec un 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 de pare-feu ne sont pas compatibles avec cette fonctionnalité, mais beaucoup le sont. Cette liste est assez stable, mais nous ne vous informerons pas de manière proactive si elle change.
Filtrage basé sur l'adresse IP (fortement déconseillé) Utiliser 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'adresses IP du pare-feu sont souvent intermittents et difficiles à diagnostiquer. Nous modifions notre liste d'adresses IP très fréquemment et sans préavis. Vous devrez donc saisir cette longue liste et la mettre à jour régulièrement.

De plus, nous constatons souvent des fautes de frappe lorsque les utilisateurs essaient de saisir des listes d'autorisation d'adresses IP dans leurs règles de pare-feu.

Nous ne recommandons pas cette méthode, car les informations deviennent invariablement obsolètes et ne sont pas gérées.

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

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

Si votre réseau utilise la traduction d'adresse réseau (NAT) ou l'inspection dynamique des paquets (SPI), définissez un délai avant 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 la batterie des appareils mobiles de vos utilisateurs.

FCM et proxys

Le protocole de FCM pour l'envoi de messages push aux appareils ne peut pas être transmis 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 avec les VPN et contournement

Firebase Cloud Messaging prend différentes mesures pour s'assurer que la connexion de messagerie push entre le téléphone et le 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 d'optimiser la fiabilité et l'autonomie de la batterie. Dans certains cas, les VPN interrompent activement les connexions de longue durée, ce qui entraîne une mauvaise expérience utilisateur en raison de messages manqués ou retardés, ou d'une consommation élevée de la batterie. Lorsque le VPN est configuré pour nous permettre de le faire, nous le contournons en utilisant 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 trafics FCM, tels que 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 fournir, tels que le masquage d'adresse IP.

Les différents VPN disposent de différentes méthodes pour contrôler s'ils peuvent être contournés ou non. 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 retards dans la réception des messages et une utilisation accrue de la batterie, car Cloud Messaging s'efforce de maintenir la connexion via la connexion VPN.