家里装了摄像头、NAS或者智能家居设备,想在外面随时查看,但又不知道怎么连回家?其实用一台安卓手机就能搞定。不需要复杂的路由器设置,也不用公网IP,通过开启网络隧道,就能把家里的服务安全地暴露到外网。
什么是网络隧道?
简单说,网络隧道就像在家和外面之间搭了一条加密的专用通道。你在外边发请求,数据通过这条通道安全地送到家里的设备,响应再原路返回。安卓手机在这里充当“中转站”,一直连着家庭Wi-Fi,持续维持这条通道。
常用工具推荐:frp + Termux
frp 是一个开源的内网穿透工具,配合安卓上的 Termux(一个类 Linux 环境),可以实现在手机上运行隧道客户端。先在手机安装 Termux,从 F-Droid 或官网下载安装即可,避免 Play 商店版本更新问题。
打开 Termux,输入以下命令更新源并安装 frp:
pkg update && pkg install wget unzip
wget https://github.com/fatedier/frp/releases/latest/download/frp_0.51.3_linux_arm64.tar.gz
tar -zxpf frp_*.tar.gz
mv frp_* frp
配置 frp 客户端
你需要一台有公网IP的服务器作为“中转机”,可以是云服务商的 VPS。在服务器上运行 frps(服务端),手机上运行 frpc(客户端)。
编辑手机上的配置文件:
cd frp
nano frpc.toml
写入以下内容:
serverAddr = x.x.x.x
serverPort = 7000
[[proxies]]
name = ssh-home
type = tcp
localIP = 192.168.1.100
localPort = 22
remotePort = 6000
[[proxies]]
name = nas-web
type = tcp
localIP = 192.168.1.100
localPort = 5000
remotePort = 6001
其中 x.x.x.x 是你的 VPS 公网IP,localIP 是家中 NAS 或树莓派的局域网地址。保存后,在 Termux 执行:
./frp/frpc -c ./frp/frpc.toml
让隧道后台运行
Termux 关闭后进程会中断,可以用 Termux:Boot 插件实现开机自启。安装后创建 ~/.termux/boot/ 目录,并放入启动脚本:
#!/data/data/com.termux/files/usr/bin/sh
cd /data/data/com.termux/files/home/frp
./frpc -c ./frpc.toml >/data/data/com.termux/files/home/frp/frpc.log 2>&1 &
赋予执行权限:
chmod +x ~/.termux/boot/frp-start
实际应用场景
比如你家里的 NAS 跑着 PhotoPrism 相册服务,默认只能在局域网访问。通过上面的隧道配置,把 5000 端口映射出去,你在公司或出差时,打开浏览器输入 http://x.x.x.x:6001,就能直接看到家里的照片库,和在家一样。
再比如用手机挂 BT 下载,可以把 Transmission 的 Web 界面通过隧道暴露出来,随时用手机浏览器控制下载任务,不用一直开着电脑。
注意事项
长期运行注意手机别休眠。建议连接电源使用,并在电池设置里关闭“省电模式”对 Termux 的限制。同时确保家庭 Wi-Fi 稳定,避免频繁断连导致隧道中断。
安全方面,不要随意开放敏感端口,建议给隧道服务加 token 验证,frp 支持在配置中设置:
auth.method = token
auth.token = your-secret-token
这样即使别人扫到你的端口,没有 token 也无法连接。