国内 Google FCM 推送全挂了

2022-09-23 07:44:49 +08:00
 andywiny

以前 Google FCM 不挂梯子可以直连,推送还算稳定,但从 9/22 下午开始,FCM 全部节点全部连不上了,必须爬梯。坐标:江苏,上海

9561 次点击
所在节点    Google
58 条回复
me221
2022-09-23 10:41:43 +08:00
看了你这个帖子我才知道 GoogleFCM 原来可以直连
poorcai
2022-09-23 10:45:49 +08:00
@andywiny #20 跳出来一个 FCM Diagnostics 界面
``` bash
Server: Not connected
Host: mtalk.google.com
Port: XXXX
...
```
andywiny
2022-09-23 10:48:47 +08:00
@poorcai 有 FCM Diagnostics 就表示支持的,之前不挂梯子可以直连,但这几天开始就连不上了
AlphaTauriHonda
2022-09-23 10:50:28 +08:00
有一些地方把 IP 封了,或者把端口墙了。
这类屏蔽 IP 或者端口的墙数量很多,是分布式的。
poorcai
2022-09-23 10:56:45 +08:00
@andywiny #23 不用配置什么,默认就能使用吗?
andywiny
2022-09-23 11:02:33 +08:00
@poorcai 是的,默认就可以用,不用特别的配置。
chinalawme
2022-09-23 12:44:10 +08:00
@AlphaTauriHonda 不是屏蔽 IP 吧。我这测试是对`mtalk.google.com`检测,是就会有 TCP reset 攻击。
zhzy0077
2022-09-23 12:44:30 +08:00
上海电信和北京电信均复现失败 FCM 的几十个 IP 中绝大多数仍然是可以直接连到 5228 的
比如:
nc -vv 108.177.97.188 5228
Connection to 108.177.97.188 5228 port [tcp/hpvroom] succeeded!
chinalawme
2022-09-23 12:47:57 +08:00
@zhzy0077 是,没屏蔽 IP 。是检测特定域名的。可以用 curl 测试: `curl -v https://mtalk.google.com --connect-to ::un.org` ,就能看到 TCP reset 。
zhzy0077
2022-09-23 12:50:40 +08:00
@chinalawme 啥? FCM 的推送是 5228 端口上的 TCP 长连接 和 curl ssl 的 tcp reset 有啥关系 客户端 tcp 连接到某个 IP 墙还能看出来域名的?
chinalawme
2022-09-23 12:57:43 +08:00
@zhzy0077 反正我本地 Clash 日志里可以看到 mtalk 域名,这样来看任何中间人都能看到。

> FCM 的推送是 5228 端口上的 TCP 长连接

应该有一次 TLS 握手才对,否则你的通知是明文传送的吗?
zhzy0077
2022-09-23 13:12:05 +08:00
@chinalawme "反正我本地 Clash 日志里可以看到 mtalk 域名,这样来看任何中间人都能看到。"
这句话是错的, clash 能看到是因为设置为了系统 VPN, 系统把 tcp 连接原样丢给 clash 处理你才能看到域名的. 所以 clash 在路由器上使用的时候才需要诸如 fake-ip 之类的辅助来做域名匹配.

但你下面那句应该是对的 mtalk 似乎用的是很平凡的 tls 然后直接在 tls 握手的时候被拿下了

curl https://mtalk.google.com:5228 -vvv --resolve 'mtalk.google.com:5228:108.177.97.188'
* Added mtalk.google.com:5228:108.177.97.188 to DNS cache
* About to connect() to mtalk.google.com port 5228 (#0)
* Trying 108.177.97.188...
* Connected to mtalk.google.com (108.177.97.188) port 5228 (#0)
* Initializing NSS with certpath: sql:/etc/pki/nssdb
* CAfile: /etc/pki/tls/certs/ca-bundle.crt
CApath: none
* NSS error -5961 (PR_CONNECT_RESET_ERROR)
* TCP connection reset by peer
* Closing connection 0
curl: (35) TCP connection reset by peer
hicdn
2022-09-23 14:28:22 +08:00
@andywiny @DarlinW 多谢提醒,把这个列表走代理后,FCM Diagnostics 可以连接了。之前的规则是直连。
JensenQian
2022-09-23 15:30:37 +08:00
确实连不上了
之前 icmp 和 tcp ping 都是通的
chengr28
2022-09-23 16:44:35 +08:00
TLS SNI 的关键词是 google.com ,不是针对 mtalk
cb546
2022-09-23 17:21:49 +08:00
@JensenQian 到现在我这 ICMP 也是通的而且是正常解析= = ,但连接不上不知道是不是端口屏蔽
addidd
2022-09-23 17:58:37 +08:00
梯子没办法保持长链接更是绝望
还好有备胎
andywiny
2022-09-23 18:11:54 +08:00
@addidd 是啊,很多梯子是无法保持长链接的,几分钟断一次,手机非常耗电呀😓
linuxyz
2022-09-23 19:21:37 +08:00
@andywiny 可以看看 WireGuard 。
iloveios
2022-09-23 19:51:45 +08:00
这么好的推送 没办法啊

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/882280

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX