家里想远程访问设备?先搞懂这三个核心概念
最近有不少朋友问我:“我在家里搭了 NAS,怎么在公司访问?”、“我想远程控制家里的台式机,有啥办法?”我通常不会直接教你怎么做第一步,而是先问三个问题:
你知道自己有没有公网 IP 吗?你了解端口映射是怎么回事吗?没公网 IP 的时候,你知道内网穿透能解决问题吗?今天这篇文章不讲配置、不贴命令,只讲明白一件事:要搞远程访问,先把 NAT、端口映射、内网穿透这三个核心概念弄清楚。
家里的路由器分配给设备的 IP,通常是这种格式的:
192.168.x.x10.x.x.x172.16.x.x 到 172.31.x.x这些都是内网地址,在公网是无效的,别人访问不了你。
那你用这些地址怎么能刷抖音、看 B 站?答案是:NAT(网络地址转换)。
NAT 会把你家所有设备的请求都通过一个“公网 IP”发出去,然后记录好是谁发的请求,等数据回来再转回给对应设备。
所以你能上网,但别人找不到你(因为你躲在 NAT 后面)。
二、端口映射:想让别人能找上你,得“打个洞”如果你想让公司里的你访问家里的 NAS 或远程桌面,问题就来了:公司电脑访问你家的公网 IP,路由器怎么知道该转发给哪台设备?
这时候你就得配置 端口映射。
比如你设置:把公网 IP 的 1000 端口,映射到你家 192.168.1.100:5000 的 NAS 上。
那么只要你在外面访问 203.0.113.100:1000,路由器就知道“哦,这个请求是给 NAS 的”,然后就能转过去。
注意:端口映射只有在你有公网 IP 的前提下才有效。如果你没有公网 IP,那映射再多也没用,别人根本打不到你门口来。
三、没公网 IP 怎么办?内网穿透了解一下现在问题来了,大多数家庭宽带(尤其是移动、广电)根本不给你公网 IP,全都是“套娃 NAT”。
你用各种在线工具一查,发现你“看起来”的公网 IP 和路由器上的外网 IP 根本不一致。——这就说明你已经被运营商塞到了另一个 NAT 里,端口映射也救不了你。
怎么办?这时候你需要用的是 内网穿透。
它的核心思路很简单:你把家里设备和一个“中转服务器”连上,外部设备访问这个中转服务器,再由它把流量转到你家设备上。
常见方案包括:
frp:非常灵活,开源方案。Ngrok:开箱即用,适合演示。ZeroTier、Tailscale:直接让你家设备和外面设备像在同一个局域网里一样工作。举个例子:你在家跑个 frpc 客户端,连上你买的云服务器上的 frps 服务端,就可以通过 xxx.yourvps.com:8080 访问家里服务了。
不用公网 IP,也不用配路由器,走的是应用层的隧道。
四、三者的关系总结一下概念
是否需要公网IP
是否能被外部访问
是否适合家庭远程
NAT
是
否(默认不行)
否
端口映射
是
是
是(简单、可靠)
内网穿透
否
是
是(进阶选手)
什么时候用哪种方式?
场景
推荐方案
家里有公网 IP
直接用端口映射
家里没有公网 IP
用 frp 或 Zerotier 做内网穿透
家里设备多,希望按需访问
软路由+穿透/映射结合
完全小白、想快速部署远程访问功能
花生壳、蒲公英这种图形化穿透工具
五、最后说句实在话远程访问不是点一下按钮就能实现的事,搞清楚这三个概念,是避免你“连不上、访问不了、端口无响应”的第一步。
配置技术虽然重要,但理解网络背后的逻辑更重要。否则,就算你把 frp 配好了,遇到 NAT 类型不支持也一样抓瞎。