核心逻辑:路由器获取公网IP -> 端口转发来访问内网中的服务
实现逻辑:
1. 首先开通对应运营商的宽带服务(移动是不会给公网IP的,电信是会给但是很贵,联通不错),所谓宽带服务就是可以通过家里的光缆(光缆只负责传输光信号)来链接到运营商提供的互联网(运营商提供光猫做到光信号转数字信号)上的。
2. 有了光猫之后,光猫本身可能是带路由功能(作为网关组建子网的能力,拨号上网的能力)的,但是光猫本身的天线能力较弱可能无法满足需要,且光猫后台不一定能设置端口转发等行为,所以可以将光猫改为桥接模式(也就是只做光信号到数字信号转换的中转站),之后链接一个比较好的路由器来满足网络需求
路由模式:
桥接模式:
3. 运行商一般是不会直接分配给你公网IP的,所以需要通过电话或者app客服向运营商索要公网IP,运营商一般给予的是动态的公网IP,并且会给你账号密码让你进行拨号上网,这时获得的IP就是运营商给予的动态公网 IP
4. 动态公网IP也就是IP地址是随时间不断变化的,我们需要的一个固定的地址来进行访问,如果不是固定的地址那也太麻烦了,所以就需要 DDNS (动态DNS,来实现将动态的IP映射到一个固定域名上),之后就可以通过域名来访问了,这里推荐(ddns-go这个github开源项目可以很容易进行部署)
5. 路由器有了公网IP之后,就可以通过端口转发(在路由器的后台就可以设置)的方式来访问子网中服务器的服务了
参考文章:
家庭公网 IP 的配置与应用 - 少数派 (sspai.com)
个人家庭宽带公网 IP 升级杂记 - 少数派 (sspai.com)