解决软路由 OpenClash Google TV 盒子无法连接网络的问题
使用软路由 OpenClash 代理全局网络后,发现 Google TV 盒子无法连接 WIFI,具体表现为输入 WIFI 密码后一直连接中,一段时间之后报错无网络。不只限于 Google TV 盒子,Google 其他安卓设备首次激活也会这样。
研究后发现是因为 Google TV 盒子此类设备连接 WIFI 后会请求 NTP 服务器同步设备时间,Google 安卓设备默认请求 time.android.com,走 UDP 流量,当 OpenClash 节点不支持 UDP 转发时,就会导致 WIFI 无法连接。
可以通过 ADB 命令修改安卓设备的 NTP 服务器设置,但是比较复杂,建议直接在 OpenClash 设置 DNS 劫持 time.android.com 到国内的 NTP 服务器。
操作步骤
- 进入 OpenWRT 后台的 OpenClash 界面,进入 【覆写设置】-> 【DNS设置】
在 Hosts 添加以下内容
'time.android.com': 203.107.6.88
203.107.6.88 是阿里云的 NTP 服务器。
- 点击【应用配置】即可
ping time.android.com
PING time.android.com (203.107.6.88) 56(84) bytes of data.
64 bytes from 203.107.6.88: icmp_seq=1 ttl=51 time=48.7 ms
64 bytes from 203.107.6.88: icmp_seq=2 ttl=51 time=49.2 ms
64 bytes from 203.107.6.88: icmp_seq=3 ttl=51 time=49.3 ms
64 bytes from 203.107.6.88: icmp_seq=4 ttl=51 time=49.4 ms
64 bytes from 203.107.6.88: icmp_seq=5 ttl=51 time=47.7 ms
^C
--- time.android.com ping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 4004ms
rtt min/avg/max/mdev = 47.671/48.840/49.366/0.624 ms
PING 一下验证,Google TV 盒子就可以成功连接 WIFI 了。