当我尝试在家搭建私人网盘nextcloud时,遇到一个难题:如何随时随地访问家里的服务器 ?业界有几种解决方案:
option1: 租用公网服务器,把应用部署在公网服务器上。优点:安全稳定,不需要维护设备;缺点:需要定期支付租赁费用。
option2: 应用部署在家用服务器上,依赖“内网穿透”(如frps/frpc)访问家庭网络。优点:适用家庭宽带没有公网IP的场景;缺点:需要租用公网服务器做“代理”,带宽受公网服务器限制。
option3: 应用部署在家用服务器上,用“端口映射”访问家庭网络。优点:带宽大,且无需租赁服务器;缺点:依赖运营商临时公网IP。
我尝试过option1和option2,出于成本考虑我选择性价比高的option3,毕竟长期租用服务器价格不菲,并且带宽越大费用也越高。本文是我个人的经验总结,供大家参考。
1 前提
开始之前,请确认是否满足下列条件,缺一不可。
1.1 需要宽带拨号账号和密码
家庭宽带采用拨号上网,即PPPOE上网。通常宽带上门安装时,运营商工作人员会设置好光猫拨号上网,并提供用户名密码。如果不记得用户名密码,可拨打运营商热线电话询问。
1.2 确认宽带是否有公网IP
电信宽带往往会有动态公网IP(ipv4),而移动宽带通常没有动态公网IP,需要自己确认清楚。有一种方法可供确认:
1)查询家用网络对外IP地址:
IP地址查询
2)登录光猫查看WAN口IP地址:
以电信光猫为例,光猫背后往往有IP地址、账号、密码,如下图:
“光猫”铭牌
浏览器地址栏访问192.168.1.1,使用账号useradmin和密码登录,查询WAN口IP地址。
如果上述两个IP一致,表示家用宽使有公网IP。否则,可以尝试拨打运营商热线电话要求提供动态公网IP。
1.3 确认路由器DDNS功能
我使用的是小米AC2100,登录路由器管理地址选择“高级设置”会看到“DDNS”,这表示路由器具有DDNS(动态域名服务)功能。