Potisna obvestila Androida ne delujejo z VPN? Preverite to
FCM vzdržuje lastno odhodno povezavo na vratih 5228-5230. Preverite pravilo proxyja, časovno omejitev NAT in obhod VPN, preden se dotaknete nastavitev obvestil.
Obvestila prenehajo prihajati na telefonu, ki sicer dobro brska prek korporativnega VPN. Spletne strani se naložijo, aplikacija se odpre, sporočila pa se pokažejo le doma ali po izklopu tunela. V aplikaciji, zgrajeni na Firebase Cloud Messaging, je push kanal ločena dolgotrajna odhodna povezava, ne pot HTTPS, ki jo je brskalnik pravkar dokazal. Pojdite skozi ta preverjanja po vrsti in ustavite se pri prvem, ki spodleti.
Potrdite, da aplikacija res uporablja FCM
Ni vsako obvestilo push. Nekatera načrtuje aplikacija lokalno, nekatera se pridobivajo prek HTTPS, nekatera pa pridejo po kanalu ponudnika, ki nima nič skupnega s Firebase. Če manifest in odvisnosti aplikacije vključujejo Firebase Messaging, njena obvestila običajno potujejo po povezavi FCM, odjemalska knjižnica pa registracijo zabeleži pod predvidljivo oznako.
adb logcat -s FirebaseMessaging:V
adb shell dumpsys package <package> | grep -i firebase
Žeton za registracijo v dnevniku potrjuje prenos. Brez njega razhroščujete obvestilni cevovod na ravni aplikacije in spremembe požarnega zidu ne bodo pomagale. Ta razlika je pomembna, ker sta dostavljeno, a nikoli prikazano sporočilo in sporočilo, ki nikoli ne prispe, za uporabnika videti enako.
Preverite odhodna vrata, ne spletnega mesta
Povezave naprav s FCM so TCP, ki jih začne naprava, na vrata 5228, z 5229 in 5230 kot rezervnima in 443 kot zadnjo možnostjo. Požarni zid, ki dovoli 443 za brskanje, lahko push še vedno pokvari, pravilo, ki dovoli domeno API aplikacije, pa ne pokriva končnih točk za sporočanje, ki so ločene storitve.
To so odhodne povezave s telefona. Vhodnih vrat ne objavljate na napravi ali na prehodu VPN, zato je zasnova že napačna, če kdo predlaga posredovanje vrat. Enako velja za pravilo, ki odpre ena vrata vsem naslovom na internetu: omejite ga na dokumentirane cilje.
| Port | Role | What to verify |
|---|---|---|
| 5228 | Primary FCM connection | Outbound allowed and session state kept |
| 5229, 5230 | Fallback ports | Often missing from hand-written allowlists |
| 443 | Last-resort fallback | Works only if the client actually falls back |
| HTTP proxy | Not a supported FCM transport | Proxy exclusion or bypass, not a port rule |
Firebaseova omrežna navodila tudi navaja, da protokola za dostavo FCM ni mogoče prenašati čez običajni proxy HTTP. Zato delovanje brskalnika prek korporativnega spletnega proxyja ne dokazuje ničesar o push vtičnici: to sta dva različna odjemalca z različnima potema.
Preverite časovne omejitve mirovanja, ki ubijejo vtičnico
Povezava FCM ostane odprta med sporočili, zato je občutljiva na časovne omejitve NAT in preverjanja stanja. Navodila Firebase zahtevajo vsaj 30 minut tolerance do mirovanja tam, kjer veljajo take politike. Petminutna omejitev seje tiho odstrani preslikavo, telefon pa se znova poveže šele, ko ga nekaj prebudi, zato sporočila prihajajo v sunkih ali pa sploh ne.
Preberite tabelo sej na požarnem zidu ali prehodu VPN in poiščite povezavo telefona na 5228-5230. Primerjajte preostalo življenjsko dobo z dokumentirano vrednostjo. Če je krajša, povečajte časovno omejitev za ta vrata, namesto da bi spremenili vse politike na napravi, ker je globalno spremembo omejitve težko upravičiti in še težje razveljaviti.
Dostava push je odvisna tudi od tega, ali preslikava končne točke preživi gostovanje med Wi-Fi in mobilnim omrežjem. Preslikava, vezana na en vmesnik, je lahko ob prehodu zavržena, tudi ko obe omrežji dovolita vrata.
Odločite, ali je obhod VPN sprejemljiv
Odjemalci VPN v Androidu lahko dovolijo prometu, da obide tunel, in FCM lahko uporabi spodnje omrežje, ko je ta obhod dovoljen. Push kanal v tem primeru ostane šifriran, vendar ne nosi več naslova tunela, zato se maskiranje IP z VPN zanj ne uporablja. To je kompromis politike, ne okvara.
Če vaša politika obhod prepoveduje, mora pot tunela nositi povezavo: vrata odprta, omejitve dovolj dolge, proxy ne na poti. Upravljane storitve ne izključujte tiho in zaklepa ne popuščajte samo zato, ker obvestila delujejo v neupravljanem omrežju. Ikona VPN ne pove, katero pot je izbrala določena storitev
Ločite dostavo od prikaza in preizkusite enkrat
Dovoljenje, nastavitve kanala, Ne moti in stikala za posamezne aplikacije odločajo, ali se dostavljeno sporočilo prikaže. V Androidu 13 in novejših je dovoljenje za obvestila podeljeno med izvajanjem, zavrnjena podelitev pa ustvari tišino, ki je videti natanko kot blokirana vrata. Sporočilo, ki je prispelo, a se ni prikazalo, je težava prikaza; obravnavajte jo ločeno.
Izvedite en nadzorovan preskus, namesto da sporočila pošiljate naključno. Napravo, račun in aplikacijo imejte nespremenjene, pošljite eno sporočilo z znanim časovnim žigom in primerjajte stanje z VPN ter v odobrenem omrežju brez VPN. Zabeležite čas prejema v logcat in čas prikaza za vsak poskus. Če se dostava razlikuje, prikaz pa ne, je spremenljivka omrežna pot; če sta oba enaka, še naprej opazujte aplikacijo.
Skovodji omrežja predajte vrata, omejitev proxyja, izmerjeno omejitev in odločitev o obhodu v eni opombi. «Izklopi VPN» ni ugotovitev in dovoljenje vsega prometa Google ni ciljno popravilo.