在中国使用 Google Home Mini

OK, Google.

上周从ビックカメラ带回来一台 Google Home Mini,在中国正常使用还需要额外的设置,在此记录之。


先介绍当前网络环境,所有系统均为虚拟机运行在一台物理机上:

  • 路由器系统为 OpenWrt(1C128M),使用 Dnsmasq 负责 DHCP
  • 旁路由系统为 Ubuntu(2C4G),运行 clash,使用 enhanced mode 作为代理。

需要代理的设备可以通过 DHCP 指定 Ubuntu 作为网关

clash 部分配置如下:

redir-port: 7892
allow-lan: true
dns:
  enable: true
  enhanced-mode: fake-ip
  ipv6: false
  listen: 0.0.0.0:53
  nameserver:
  - 114.114.115.115
  - 119.28.28.28
  - 223.6.6.6

由于 Google Home Mini 系统 hard code 了 Google DNS 作为 DNS server,这里需要把 Google DNS 路由黑洞,Google Home Mini 会回落到 DHCP 分配的 DNS server。

iptables-save 的输出如下:

# Generated by iptables-save v1.8.4 on Sat May 23 08:41:28 2020
*filter
:INPUT ACCEPT [47793:31331168]
:FORWARD ACCEPT [9:648]
:OUTPUT ACCEPT [44805:33229205]
COMMIT
# Completed on Sat May 23 08:41:28 2020
# Generated by iptables-save v1.8.4 on Sat May 23 08:41:28 2020
*nat
:PREROUTING ACCEPT [1090:214165]
:INPUT ACCEPT [1266:80006]
:OUTPUT ACCEPT [1985:120818]
:POSTROUTING ACCEPT [1993:121426]
:clash - [0:0]
-A PREROUTING -d 8.8.8.8/32 -j DNAT --to-destination 10.0.0.100
-A PREROUTING -d 8.8.4.4/32 -j DNAT --to-destination 10.0.0.100
-A PREROUTING -p tcp -j clash
-A clash -d 10.0.0.0/16 -j RETURN
-A clash -p tcp -j REDIRECT --to-ports 7892
COMMIT
# Completed on Sat May 23 08:41:28 2020
  • 8.8.8.8 为 Google DNS 地址
  • 10.0.0.100:7892 为 clash 监听地址
  • 10.0.0.0/16 为内网地址
Some rights reserved
Except where otherwise noted, content on this page is licensed under a Creative Commons Attribution-ShareAlike 4.0 International license