手机也能搭网络隧道?别以为只有电脑才行
很多人觉得网络隧道是电脑专属,手机只能连Wi-Fi、刷视频。其实不然,手机完全可以当“隧道入口”,把家里的设备暴露到公网,比如远程查看家里摄像头、访问NAS,甚至跑个个人网站。
先搞明白:什么是网络隧道
简单说,网络隧道就是把内网的服务“映射”到外网可访问的地址上。比如你手机连着家里Wi-Fi,运行一个服务在5000端口,但外面的人根本找不到它。通过隧道,可以把这个端口转发到一个公网地址,别人用特定链接就能访问。
用 Termux 搭 SSH 隧道(安卓为例)
安卓虽然不开放底层权限,但装个 Termux 就能玩出花。Termux 是个终端模拟器,能运行 Linux 命令。先从 F-Droid 装好 Termux,然后执行:
pkg install openssh
ssh -R 8080:localhost:5000 user@your-server.com
这行命令的意思是:让公网服务器 your-server.com 的 8080 端口,反向代理到你手机本地的 5000 端口。只要手机不断开连接,别人访问服务器的 8080 端口,实际上就在访问你手机上的服务。
用 frp 实现更稳定的穿透
SSH 隧道简单,但不稳定,断了就得重连。frp 是专做内网穿透的工具,支持断线重连、多端口映射。在 Termux 里下载 frp 客户端:
wget https://github.com/fatedier/frp/releases/download/v0.51.3/frp_0.51.3_linux_arm64.tar.gz
tar -xzf frp_0.51.3_linux_arm64.tar.gz
cd frp_0.51.3_linux_arm64
编辑配置文件 frpc.ini:
[common]
server_addr = your-frp-server.com
server_port = 7000
[web]
type = tcp
local_ip = 127.0.0.1
local_port = 5000
remote_port = 6000
保存后启动:
./frpc -c frpc.ini
现在公网 6000 端口就指向你手机的 5000 端口了。路由器没公网IP也不怕,frp 服务器帮你中转。
iOS 怎么办?用 ngrok 快速上手
iOS 权限更严,不能随便跑后台进程。但可以用 ngrok 提供的官方客户端。注册账号后,下载 ngrok app,登录,点“Start Tunnel”,它会生成一个类似 https://abc123.ngrok.io 的地址,自动把流量转到你手机当前开启的服务上。适合临时调试网页、API 接口。
注意省电和流量
手机做隧道最大的问题是耗电和流量。长时间运行建议连着充电器,走Wi-Fi。如果用蜂窝数据,一不小心就跑掉几个G。可以在 frp 配置里加心跳检测,空闲时自动断开,需要时再唤醒。
实际场景:出门也能看家里监控
假设你家树莓派接了个摄像头,推流到5000端口。手机插在树莓旁边,开机自动跑 frp 客户端。你在公司打开浏览器,输入公网IP:6000,就能实时看到家里画面。不用折腾路由器,也不用公网IP。