家庭宽带搭建服务器
一、获得公网ip
如果是电信或者联通宽带可以打客服申请公网在线,绝大部分都能通过,理由可以说装监控或者玩游戏。移动宽带目前没用过就不讨论了。
**注意,这里的公网ip是动态公网ip,就是说会不定时更换。**或者重启光猫ip也会变化。固定的公网ip需要购买才能得到,据说还不便宜。
如何验证是不是公网ip?打开百度,搜索 ip。登录光猫查看自己的ip和百度出来ip如果一致就是公网ip。
二、配置端口转发
1、固定电脑的ip
登录光猫查看LAN口地址配置,将ip的起始结束范围调小一些,留下一段空挡。然后将电脑ip设置到那个空挡范围内。
将ip结束范围从254调到250,将电脑ip设置为192.168.1.254。
2、配置虚拟服务器
在光猫的设置中找到虚拟服务器(一般在应用下)。填写协议、电脑的ip和要转发的端口号,然后添加即可。
注意:不要配置80端口,因为80端口是被屏蔽的,无法转发。
3、配置DMZ
选择你的广域网,一般来说只有一个选项。局域网输入电脑的ip,如果配置DMZ的话就不用配置端口转发了,DMZ自动转发所有端口(除了80)。
建议还是优先使用端口转发,安全性相对高一些。
4、其他情况
有的人是两级路由(光猫看作是第一级路由),则需要将二级路由的WAN口配置成固定ip,且ip在光猫的DHCP范围外,可将二级路由类比成上面实例中的电脑。再配置电脑ip为固定ip,然后逐级配置端口转发。即光猫转发给二级路由,二级路由转发给电脑。
有的是路由器桥接光猫,这种情况就不用管路由器了,因为路由器和电脑是平级关系,直接按照上面的流程配置就行。
都配置好以后,使用另外一个网络(可以用手机4G给电脑或pad提供网络),就可以正常访问要作为服务器的那台电脑的8081端口了。此时就完成了初步搭建。
三、注册域名
1、购买并实名认证
可以在百度云、阿里云、腾讯云等注册域名。一般.com,.net的比较贵,只是学习玩玩的话可以注册个便宜的,基本10块20块左右一年。有的国外网站可以申请免费的域名,申请流程我觉得比较麻烦,还不如花十几块钱注册一个。当然在国内注册的域名在使用前要先实名制认证,需要填写个人信息和上传身份证个人信息面的照片,目前认证速度还挺快,快的话1个小时左右就能完成。
2、解析域名
进入域名列表,找到要解析的域名,点击解析,
TTL可以认为是动态解析的频率,时间越短,当ip变化时能越快的将域名解析到新的ip上。
解析成功以后,DNS服务器状态会显示正常
在本地启动一个端口号为8081的项目,通过外网访问http://你的域名:8081/你的项目接口就可以通了。
四、配置动态域名解析
虽然接口能通了,但是还存在其他问题,比如过两天公网ip更换了,就访问不通了。这就要用到ddns了。ddns有很多大神开发的版本,本文用ddns-go举例。github地址:https://github.com/jeessy2/ddns-go
下载window-64版本的,解压后运行ddns-go.exe,如果是第一次运行,会自动用浏览器打开一个配置页面。
填写DNS服务商的密钥,勾选ipv4,获取ip方式使用接口,接口地址使用示例中的就可以,Domains填写你要解析的域名,多个域名的话逐行写。
如何获取密钥?以阿里云为例
进入AccessKey管理,点击创建AccessKey,需要短信验证。
五、原理分析
最后说一下动态域名解析的原理
六、虚拟机端口映射
如果虚拟主机网络使用NAT模式,因为虚拟机和宿主机不在同一网段,外网通过宿主机访问虚拟机时需要配置端口映射。
如果虚拟主机网络使用桥接模式,则虚拟主机与宿主机处于同一网段,不需要端口转发。
1、配置虚拟机端口映射
端口映射配置完成后,使用另一台电脑连接手机网络或者其他与宿主机不同的网络访问虚拟机上的端口服务,如果此时访问不通,可能是宿主机防火墙导致的。
2、配置宿主机防火墙
一直下一步到最后
七、总结
简单的方式:虚拟主机中安装完linux系统后配置网络为静态ip,需要与宿主机在同一网段,即ip前三位相同。在光猫中配置端口直接转发至虚拟机ip。虚拟机网络模式使用桥接,这样外网访问直接一次转发至目标虚拟机。