iOS 在中国内地疑现信息推送异常,部分境外 App 无法收到通知

来源: https://x.com/yeahwu404/status/2050113788465361093

部分用户反馈称 iOS 在中国内地疑现信息推送异常,部分境外 App 无法收到通知

有用户近日反馈,部分海外 App(包括但不限于 Telegram )在 Apple 设备上使用中国内地网络时,可能无法正常收到海外 App 的 APNs Push 通知。开启代理(代理 *.push.apple.com )后则可正常接收推送。

不过现阶段这一情况仍缺乏更大范围的样本支持,尚无法确认是否为系统性现象,也不能据此断定苹果已经建立了面向中国内地地区的海外 App 通知推送“黑名单”或“白名单”。

来源2: https://www.nodeseek.com/post-709310-1

最终测试,把下面这些规则走代理后,即可在WiFi下不用开代理工具的包含APNS功能也能收到推送了,设置完之后要开关飞行模式,断掉所有连接才会生效。

另外如果是移动数据网络下使用,就必须打开代理工具的包含APNS功能,不然会间歇性失效。

DOMAIN-SUFFIX,push.apple.com
DOMAIN-SUFFIX,akadns.net
DOMAIN-KEYWORD,apple.com.edgekey.net

IP-CIDR,17.249.0.0/16,no-resolve
IP-CIDR,17.252.0.0/16,no-resolve
IP-CIDR,17.57.144.0/22,no-resolve
IP-CIDR,17.188.128.0/18,no-resolve
IP-CIDR,17.188.20.0/23,no-resolve

IP-CIDR6,2620:149:a44::/48,no-resolve
IP-CIDR6,2403:300:a42::/48,no-resolve
IP-CIDR6,2403:300:a51::/48,no-resolve
IP-CIDR6,2a01:b740:a42::/48,no-resolve

个人测试:

一开始看到 apple 推送域名走代理就能恢复推送 ,不能确定是GFW 阻断的问题,还是apple主动对中国IP 停止推送,于是想用 push.apple.com 测试一下

0 锁定域名
www.diggui.com 进行dns查询

https://www.diggui.com/#type=A&hostname=push.apple.com&nameserver=public&public=8.8.8.8
发现 没有解析出IP,问了下AI

1-courier.push.apple.com
2-courier.push.apple.com
3-courier.push.apple.com
...

这些域名设备维持 APNs 长连接的核心域名,断了就收不到推送

1 dns污染检查

继续dns查询 1-courier.push.apple.com
https://www.diggui.com/#type=A&hostname=1-courier.push.apple.com&nameserver=public&public=8.8.8.8

得到 17.57.144.54

在本地也查询了一下,得到 17.188.185.133 ,dns没有污染

2 端口检查

在线检测
https://tcp.ping.pe/17.188.185.135:443

本地也 tcp 17.188.185.135 443 这个IP 的端口没有被封

3 sni阻断检查

手动指定 1-courier.push.apple.com 域名到 IP 17.188.185.135 和端口443

curl -v --resolve 1-courier.push.apple.com:443:17.188.185.135 https://1-courier.push.apple.com

返回

* schannel: SNI or certificate check failed: SEC_E_WRONG_PRINCIPAL (0x80090322)

服务器返回了证书,但证书名称不匹配
TLS 握手已完成到证书验证阶段

说明没有被sni阻断,如果被sni阻断返回的应该是

* Recv failure: Connection was reset ← 直接 RST,中间没有服务器的回应

目前结论:

1-courier.push.apple.com 域名的检查,发现GFW 没有进行阻断,是apple 对中国内地地区没有推送通知

当然也许推送的域名并不止这一个 x-courier.push.apple.com,请自行检查别的涉及推送相关域名

中国人很快得出结论,苹果公司通过其推送服务器阻止中国接收西方应用程序的通知。

https://www.reddit.com/r/Telegram/comments/1t0e394/i_cant_received_notifications_despite_them_being/

我看到的报告是香港澳门泰国菲律宾都有问题。

搜索 Google Search 可看到

  1. 苹果最近在修 Signal 消息内容从通知泄露的问题。
  2. 不少人报告应用程序可以显示红色角标,但是没有横幅和消息内容。

其中 2 可以在本人的 iOS Telegram 应用上确认。

几周前的新闻:

规则写的挺烂。

DOMAIN-SUFFIX,akadns.net
DOMAIN-KEYWORD,apple.com.edgekey.net

*.apple.com 大部分域名(itunes.apple.com, apps.apple.com 来自 Use Apple products on enterprise networks - Apple Support )都有 akadns.netapple.com.edgekey.net 后缀的 CNAME,怎么所有 Apple 服务都走代理吗?

有道理

为了省流量让 apple服务走直连,不想写规则直接兜底规则走代理,都没问题,自己喜欢就好