在家自建服务器-路由器设置
喏,当年腾讯云新用户购买的3年服务器快到期了,由于上面就跑了一个web
服务,续租价格昂贵且真的没必要,所以就想在家自建一个服务器(有一个闲置的吃灰派),今天写一篇文章,来把基础环境搭建好。
准备工作
需要的物品
要一台吃灰派或者闲置的主机
一台能够正常使用的路由器
以及能够正常上网的宽带
调整光猫拨号方式
需要将光猫自动拨号,修改一下,修改为由路由器拨号上网,这点直接让运营商修改方式,然后在路由器上手动拨号即可,否则后续路由器设置将毫无效果。
公网IP申请
由于目前ipv4
较为紧缺,所以我们家里面的宽带,申请下来的时候,应该都是运营商转换过的内网ip
,所以需要先申请一下公网ip
,这一步就是八仙过海,各显神通,我分享一下我的经验,我先给运营商提交一个故障申请,申请原因: “家里安装的监控,通过ip
地址无法连接,提示网络出错。”,等一段时间,维修员会给你打电话了,为快速解决问题,一般维修员会直接给你调整为公网ip
的。对于他们来说,举手之劳,但是给我们免费的公网ip
会随时变化的,这也是不好的点,所以,我们需要【域名动态解析】。
路由器设置
目前市面上任何一款家用的路由器都可以满足如下需求。
在该设置中,我们要确认2个点
- 公网ip地址(
通过百度获取
) - 内网服务器ip地址(
192.168.2.107
)
如上,假设我们已经申请了公网ip
,我们应该如何来验证下呢。
我们在内网服务器安装nginx
,并且尝试访问该网页。
路由器中,我们将内网服务器对外的方法有2个,第一个是 DMZ主机 ,第二个是虚拟服务器。
此二者的区别,这里做一个简单的概述
DMZ主机
在此设置内网服务器ip地址,设置后,此内网服务器的端口将全部暴露到外网上,即: 通过公网ip访问,则访问的是该内网服务器。
我们获取一下帮助
设置DMZ太危险了,如前言所述,我们仅作为web
服务对外,所以,我们仅需要对外开放80/443
端口即可。
虚拟服务器
虚拟服务器则要温柔的多,我们建议使用虚拟服务器进行设置,需要指定外网端口,内网端口,内网ip地址,协议类型等。
查看帮助
使用虚拟服务器来设置一下端口映射
如上保存后,我们可以通过百度,来获取我们的外网ip地址,然后通过访问外网ip地址,尝试看看是否能够访问网页。
如上便是路由器设置成功。
域名动态解析
如上所述,由于申请的不是固定的公网ip地址,所以,域名的A记录经常会变,关于如何解析,这个就成了问题。
解决该问题的方法大致可以分为2个
- 直接使用路由器的
DDNS
功能就可以了,设置后,会得到一个壳域名,我们将已有域名直接cname
一下到壳域名即可。 - 在本地机器上开启一个定时任务,该任务作用为获取公网
ip
地址,然后进行域名A
记录解析即可,这里可以看一下域名供应商的帮助文档,应该有api
可供调用的。
总结
因为ipv4
资源较为紧缺,所以运行商一般给我们家用宽带分配的ip
地址为内网地址,所以需要手动申请公网ip
,话说在读高中的时候,就再说要推广ipv6
,这都快10年了,也没有见大批量使用ipv6
,如果ipv6
推广了的话,那应该都是公网ip
了吧,公网ip
申请后,还需要在路由器中进行设置,大概可以区分为将端口映射或则是将主机全部映射出去,为了安全起见,建议都使用端口映射即可,最后便是域名动态解析了,推荐便是ddns
,然后做cname
别名即可。