我将从最简单到最安全的顺序为你介绍几种主流方法,并说明它们的优缺点和适用场景。
1、我的手机和服务器在同一个局域网(比如同一个Wi-Fi)吗?
2、我需要从外部网络(比如4G/5G流量或别人家的Wi-Fi)访问吗?
根据你的答案,选择合适的方法。
如果你的手机和服务器连接的是同一个路由器(同一个Wi-Fi),这是最直接的方法。
1、找到服务器的内网IP地址:
* 在服务器上打开命令提示符(Windows)或终端(Linux/macOS)。
* 输入ipconfig
(Windows) 或ifconfig
(Linux/macOS) 或ip addr
(Linux)。
* 查找类似于192.168.x.x
、10.x.x.x
或172.16.x.x
的地址,这就是服务器的内网IP。
2、确保服务器上的服务正在运行:
* 如果你的服务器是Web服务器(如Apache, Nginx),确保80端口是开放的。
* 如果是文件服务器(如Samba),确保相应的端口开放。
3、在手机上直接访问:
Web服务器打开手机浏览器,输入http://服务器的内网IP
(例如http://192.168.1.100
)。
SSH服务器 (Linux/macOS)使用Termux (Android) 或 Prompt (iOS) 等SSH客户端应用,输入服务器的IP、用户名和密码。
远程桌面 (Windows)使用微软的 Remote Desktop (Android/iOS) 应用,输入服务器的IP、用户名和密码。
文件服务 (Samba)使用支持SMB的文件管理器(如Android的CX文件管理器或iOS的Files),输入smb地址smb://192.168.1.100
。
优点:配置简单,速度快,延迟低。
缺点:只能在同一个局域网下使用,离开这个Wi-Fi环境就无法访问。
这是最常见的远程访问需求,需要通过端口转发(Port Forwarding) 将内网服务映射到公网。
核心原理:告诉路由器:“把所有发到路由器某个端口(如8080)的请求,都转发给内网里的服务器(192.168.1.100)的某个端口(如80)”。
步骤:
1、为服务器设置静态IP(或DHCP保留):
* 在服务器的网络设置中,手动指定一个固定的内网IP(如192.168.1.100
),或者在路由器的DHCP设置中,将服务器的MAC地址与这个IP绑定。这一步至关重要,防止服务器IP变化导致转发失效。
2、登录路由器管理后台:
* 通常在浏览器输入192.168.1.1
或192.168.0.1
,账号密码通常在路由器底部。
3、找到端口转发/虚拟服务器设置:
* 不同路由器界面不同,但功能名称类似。
4、添加转发规则:
内部端口服务器软件实际使用的端口(如Web是80,SSH是22)。
外部端口路由器对外监听的端口(可以相同,也可以不同。为避免冲突,建议使用10000以上的端口,例如将外部的8080转发到内部的80)。
内部IP地址你服务器的固定内网IP(如192.168.1.100
)。
协议通常选择TCP
或BOTH
(TCP/UDP)。
5、获取路由器的公网IP地址:
* 你可以直接在电脑上访问ip.cn
或whatismyip.com
查看到你路由器的公网IP,注意,家庭宽带的光猫获取到的才是公网IP。
6、在手机上访问:
* 确保手机使用的是4G/5G流量(或其他Wi-Fi),不能是同一个内网的Wi-Fi。
在浏览器或应用中输入http://你的公网IP:外部端口
(例如http://123.123.123.123:8080
)。
进阶:使用DDNS(动态域名服务)
问题家庭宽带的公网IP通常是动态的,会经常变化。
解决方案使用DDNS服务(如花生壳、No-IP),它会给你一个域名(如myhome.ddns.net
),并有一个客户端运行在你的路由器或服务器上,IP变化时会自动更新域名指向。
访问方式这样就无需记住IP,直接访问http://myhome.ddns.net:8080
即可。
优点:通用性强,适合任何服务。
缺点:
1、安全性风险:将服务器直接暴露在公网,可能遭受攻击,务必保持服务器系统和软件更新,使用强密码。
2、配置稍复杂:需要懂一点网络知识。
3、需要公网IP:目前很多运营商不给家庭宽带分配公网IPv4地址,此方法可能失效。
方法三:使用组网工具(最推荐、最安全方便)
这是现代最流行的方式,它们能创建一个加密的虚拟局域网(VPN),让你的手机仿佛在任何地方都处在家庭内网中。
1、Tailscale / ZeroTier:
原理基于先进的WireGuard
协议,在两台设备间建立点对点的加密隧道。
用法
* 在你的内网服务器上安装Tailscale/ZeroTier客户端并登录。
* 在你的手机上安装对应的App并登录同一个账号。
访问完成后,你的手机就会获得一个虚拟内网IP(如100.x.x.x
),你直接在手机上访问服务器的虚拟IP或主机名即可,就像在同一个Wi-Fi下一样!无需配置路由器,无需公网IP,自动穿透内网。
优点配置极其简单,安全性极高(端到端加密),免费套餐基本够用。强烈推荐普通用户使用此方案。
2、传统VPN(如OpenVPN):
* 在你的路由器或服务器上搭建一个VPN服务端(软路由如OpenWRT、群晖NAS等都自带此功能)。
* 手机连接这个VPN后,所有网络流量都会经由家庭网络,自然就能访问内网服务器。
优点功能强大,一劳永逸。
缺点配置非常复杂,对新手不友好。
方法四:使用第三方中转工具(适合Web服务)
如果你的服务器是一个网站(HTTP/HTTPS服务),可以考虑以下方式:
1、Cloudflare Tunnel:
* 在服务器上运行一个轻量的守护进程cloudflared
,它会与Cloudflare的服务器创建一个加密的、出站的隧道。
* 你的手机访问Cloudflare分配的域名(如mysite.mydomain.com
),流量经由Cloudflare的全球网络通过隧道安全地转发到你的内网服务器。
优点无需公网IP,无需配置路由器,安全性极高(服务器完全隐藏),免费且速度快。
缺点主要适用于Web服务,不支持任意TCP/UDP端口(免费版)。
2、Frp / Ngrok:
* 类似Cloudflare Tunnel,你需要一台有公网IP的VPS作为中转服务器。
* 内网服务器连接中转服务器,将端口映射到中转服务器上。
* 手机直接访问VPS的IP和指定端口来访问内网服务。
优点支持所有TCP/UDP服务,非常灵活。
缺点需要自己有一台VPS,并且有带宽和流量成本。
方法 | 适用场景 | 难度 | 安全性 | 是否需要公网IP |
同一局域网 | 在家快速访问 | ⭐ | 高 | 否 |
端口转发 | 有公网IP的技术用户 | ⭐⭐⭐ | 低(需自行保障) | 是 |
Tailscale/ZeroTier | 绝大多数用户,追求安全和简便 | ⭐⭐ | 极高 | 否 |
Cloudflare Tunnel | 主要发布内网Web网站 | ⭐⭐⭐ | 极高 | 否 |
给普通用户的终极建议:
直接使用 Tailscale 或 ZeroTier,它们几乎完美解决了所有痛点:无需公网IP、配置简单、安全性高、支持多种服务,对于绝大多数人来说,这是访问内网服务器的最佳选择。
文章摘自:https://idc.huochengrm.cn/fwq/15079.html
评论
衅贝晨
回复通过配置VPN或使用专用内网穿透工具,手机可以安全访问内网服务器。
尹思天
回复要访问内网服务器,您需要在手机上设置代理,配置正确的IP地址和端口,确保网络连接安全,并可能需要通过VPN或端口映射等方式实现内外网之间的数据传输。