Questo documento descrive le configurazioni di rete necessarie per il corretto funzionamento di FCM all'interno del tuo ambiente di rete.
Configura la rete per l'invio di messaggi a FCM
Prima di iniziare, devi assicurarti che il tuo sistema comunichi con i server FCM per l'invio di messaggi e la gestione degli abbonamenti.
Per inviare messaggi FCM o gestire gli abbonamenti, la tua rete dovrà comunicare con i seguenti server tramite https:
- fcm.googleapis.com (invio di messaggi)
- accounts.google.com (autenticazione per l'invio di messaggi)
- iid.googleapis.com (iscrizione agli argomenti e gestione dei gruppi di dispositivi)
Questo elenco è soggetto a modifiche nel tempo. Non siamo in grado di fornire una lista consentita basata su IP per questi endpoint.
Configura la rete per i dispositivi Android utilizzando FCM
Questa sezione descrive come configurare la rete per supportare il traffico FCM per i dispositivi Android.
Porte FCM e firewall
La stragrande maggioranza delle reti non impedisce ai dispositivi di connettersi al resto di internet. In generale, questo è il nostro consiglio. Tuttavia, alcune organizzazioni richiedono i firewall come parte del loro piano di sicurezza perimetrale.
Opzioni del firewall
| Opzione | Di cosa ci occupiamo | Regole specifiche | Note |
|---|---|---|---|
| Nessuno (preferito) | - | - | - |
| Filtro basato sulle porte (seconda scelta) | Limita il traffico a porte specifiche | Porte TCP da aprire:
|
Questa è la regola più semplice e impedisce la dipendenza da elementi che hanno maggiori probabilità di cambiare nel tempo. |
| Filtro basato sul nome host | Utilizzando una configurazione speciale del firewall per consentire il passaggio di determinate voci TLS SNI attraverso il firewall. Questo può essere combinato con il filtro basato sulle porte. | Nomi host da aprire:
|
Non tutti i software firewall supportano questa funzionalità, ma molti sì. Questo elenco è piuttosto stabile, ma non ti invieremo notifiche proattive in caso di modifiche. |
| Filtro basato su IP (vivamente sconsigliato) | Utilizzare un elenco statico molto ampio di indirizzi IP. | Inserisci nella lista consentita tutti gli indirizzi IP elencati in goog.json. Questo elenco viene aggiornato regolarmente e ti consigliamo di aggiornare le tue regole su base mensile. I problemi causati dalle limitazioni degli IP del firewall sono spesso intermittenti e difficili da diagnosticare. | Modifichiamo l'elenco degli indirizzi IP molto di frequente e senza preavviso, quindi dovrai inserire questo lungo elenco e aggiornarlo spesso. Inoltre, vediamo spesso errori di battitura quando le persone provano a inserire le liste consentite di IP nelle regole del firewall. Non consigliamo questa operazione perché le informazioni diventano inevitabilmente obsolete e non vengono gestite. Inoltre, le dimensioni dell'elenco possono essere difficili da gestire per alcuni router. |
Firewall Network Address Translation o Stateful Packet Inspection
Se la tua rete implementa Network Address Translation (NAT) o Stateful Packet Inspection (SPI), implementa un timeout di almeno 30 minuti per le nostre connessioni sulle porte 5228-5230. In questo modo possiamo fornire una connettività affidabile riducendo al contempo il consumo della batteria dei dispositivi mobili degli utenti.
FCM e proxy
Il protocollo di FCM per l'invio di messaggi push ai dispositivi non può essere utilizzato tramite proxy di rete. Pertanto, dovrai assicurarti che la connessione FCM dai dispositivi della tua rete possa connettersi direttamente ai nostri server.
Interazioni con la VPN e possibilità di bypass
Firebase Cloud Messaging adotta varie misure per garantire che la connessione per la messaggistica push dallo smartphone al server sia affidabile e disponibile il più spesso possibile. L'utilizzo di una VPN complica questa operazione.
Le VPN mascherano le informazioni di base di cui FCM ha bisogno per ottimizzare la connessione e massimizzare l'affidabilità e la durata della batteria. In alcuni casi, le VPN interrompono attivamente le connessioni di lunga durata, il che comporta un'esperienza utente negativa a causa di messaggi mancati o ritardati o di un elevato consumo della batteria. Quando la VPN è configurata per consentirci di farlo, la bypassiamo utilizzando una connessione criptata (tramite la rete Wi-Fi o LTE di base) per garantire un'esperienza affidabile e che non consumi troppa batteria. L'utilizzo di VPN bypassabili da parte di FCM è specifico per il canale di notifiche push di FCM. L'altro traffico FCM, ad esempio il traffico di registrazione, utilizza la VPN se è attiva. Quando la connessione FCM bypassa la VPN, perde i vantaggi aggiuntivi che la VPN potrebbe fornire, come il mascheramento dell'IP.
Le diverse VPN avranno metodi diversi per controllare se possono essere bypassate o meno. Per istruzioni, consulta la documentazione della tua VPN specifica.
Se la VPN non è configurata per essere ignorabile, Firebase Cloud Messaging utilizzerà la rete VPN per connettersi al server. Ciò potrebbe comportare periodi di tempo in cui i messaggi vengono ritardati e un maggiore utilizzo della batteria, poiché Cloud Messaging cerca di mantenere la connessione tramite la connessione VPN.