桌面端迁移完成后,下一步往往是「全家设备怎么接入」。本文用树莓派 4B 搭建透明网关:mihomo TUN 截获全部 IP 流量,局域网设备仅需将网关 IP 设为树莓派地址,无需逐台装客户端。🌐
网关拓扑 — 流量走向
- 设备(手机/电视/游戏机)→ 网关(树莓派 eth0)
- mihomo TUN 接口截获 IP 包 → 规则匹配
- 国内流量 DIRECT → 光猫 → 运营商
- 国外流量走 Reality/Hysteria2 出站 → 目标服务器
- DNS 被 fake-ip 劫持 → 远程 DoH 解析
mihomo 安装与目录规划
# 下载 mihomo arm64 构建
wget -O mihomo.gz https://github.com/MetaCubeX/mihomo/releases/download/v1.18.0/mihomo-linux-arm64-v1.18.0.gz
gunzip mihomo.gz
chmod +x mihomo
sudo mv mihomo /usr/local/bin/
sudo mkdir -p /etc/clash/{rules,profiles}
sudo mkdir -p /var/log/clash
核心 config.yaml(TUN 网关模式)
# /etc/clash/config.yaml
mixed-port: 7890
allow-lan: true
bind-address: '*'
mode: rule
log-level: info
tun:
enable: true
stack: mixed
auto-route: true
auto-detect-interface: true
dns-hijack:
- 'any:53'
dns:
enable: true
enhanced-mode: fake-ip
fake-ip-range: 198.18.0.1/16
nameserver:
- https://dns.cloudflare.com/dns-query
fallback:
- https://dns.google/dns-query
fallback-filter:
geoip: true
geoip-code: CN
# proxies / proxy-groups / rules 从 subconverter 导入
systemd 服务单元
# /etc/systemd/system/clash.service [Unit] Description=Clash Meta (mihomo) Transparent Gateway After=network-online.target Wants=network-online.target [Service] Type=simple ExecStart=/usr/local/bin/mihomo -d /etc/clash Restart=on-failure RestartSec=5 LimitNOFILE=65535 AmbientCapabilities=CAP_NET_ADMIN CAP_NET_BIND_SERVICE CapabilityBoundingSet=CAP_NET_ADMIN CAP_NET_BIND_SERVICE [Install] WantedBy=multi-user.target
sudo systemctl daemon-reload sudo systemctl enable --now clash sudo systemctl status clash
旁路网关 IP 转发
树莓派作旁路网关时,将局域网设备网关 DNS 指向树莓派 IP(如 192.168.1.2):
echo 'net.ipv4.ip_forward = 1' | sudo tee -a /etc/sysctl.conf sudo sysctl -p sudo iptables -t nat -A PREROUTING -i eth0 -p udp --dport 53 -j REDIRECT --to-port 1053 sudo iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 53 -j REDIRECT --to-port 1053
TUN 模式下 auto-route: true 自动管理路由表,多数场景无需手动 iptables。⚙️
排障清单
| 症状 | 诊断命令 | 解决方案 |
|---|---|---|
| 服务启动失败 | journalctl -u clash -e | mihomo -t -f /etc/clash/config.yaml 预检 |
| 设备无法上网 | ip route show | 确认 auto-route 生效,检查默认网关冲突 |
| DNS 污染 | dig @198.18.0.2 google.com | 确认 fake-ip 与 DoH nameserver 启用 |
| 国内站变慢 | curl -o /dev/null -w '%{time_total}' baidu.com | 检查 GEOIP CN 规则是否 DIRECT |
与 subconverter 协同部署
docker run -d --name subconverter --restart unless-stopped \ -p 127.0.0.1:25500:25500 \ tindy2013/subconverter:latest
mihomo 订阅 URL 指向 http://127.0.0.1:25500/sub?target=clashmeta&url=...。详见 订阅转换流水线。
性能预期
树莓派 4B(4GB)实测:Hysteria2 吞吐约 280–350 Mbps,Reality 约 200–280 Mbps,内存占用 60–90MB。足以覆盖千兆家宽以下的全家设备。📊
编辑点评
透明网关是迁移的「终极落地」——终端零配置,规则在一处维护。树莓派 4B 功耗约 5W,24/7 运行月电费不足 3 元。🎯
延伸阅读
→ 订阅转换流水线 · → 下载 mihomo arm64 · → CFW 迁移对照表