如何像访问百度一样访问家里的服务器?(三)
阿里云国内75折 回扣 微信号:monov8 |
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6 |
来源公众号【鱼鹰谈单片机】
作者鱼鹰Osprey
ID emOsprey
在前面的两篇笔记《家里宽带搞个服务器YYDS一》《家里宽带申请公网 IP二》介绍了如何获取公网 IP算是打好了基础。
也有很多道友说很难获取公网 IPv4可能每个地方政策不同运营商不同政策也不同因此如果确实有需要的话可以更换运营商或者使用 IPv6这个一般运营商都会给如果没有可以打客服问问。
但是也有道友说 IPv6 现在不少路由器可能不支持这样连接路由器可能访问不了家里的服务器。但是我们可以用手机热点电脑连接手机热点解决现在手机一般除了分配IPv4也会有 IPv6 地址只要流量够多自用的话完全够用了。
那么公网IPv4 or v6有了又该如何访问呢
因为光猫设置了桥接因此必须使用宽带的账号和密码进行拨号上网。
一般的路由器都有这个功能自己上网搜一搜就行。
图片来源网络
宽带账号和密码就是入网通行证有了这个运营商才会认可你允许你联网因此必须设置。
设置完成后正常情况下就应该能够连接路由器上网了不行的话重启路由器试试。
现在网络的掌控权已经算是掌握在我们自己手里了可以为所欲为了。
如何将自己的服务器电脑、树莓派等联网设备暴露到互联网呢即别人可以像访问百度一样访问你的服务器。
最简单方法DMZ 主机
如果你的路由器支持 DMZ 主机直接开启这个就可以免去一大堆设置。
1、在路由器上设置服务器固定 IP
让你的服务器固定局域网的 IP这样重启后服务器的 IP 地址就不会变化了通过 MAC 绑定。
2、设置服务器 IP 地址
在 DMZ 主机界面设置服务器的固定 IP比如192.168.1.100。
图片来源于网络
如此一来你就可以直接通过公网ip ping 通家里的服务器了。
比如可以手机关闭wifi然后使用自身网络访问 ping 公网ip事实上没有接服务器也能 ping 通tp-link测试是这样的。
这样所有从外部访问公网 ip 的流量都自动到了 192.168.1.100 这个服务器中这就是 DMZ 主机的作用。
此时你可以通过手机 ssh 登录家里的服务器建议使用树莓派测试没有防火墙限制配置简单功耗也很低。
注意先在内网测试 ssh 登录没有问题再尝试使用 公网 ip 登录。
比如 ssh pi@172.70.214.xx 正常情况下不管在内网还是外网都可以正常登录。
端口转发
上面的方法将服务器的所有端口都开放了比如外部访问的 2080 端口对应服务器的 2080 端口一一映射可能不是很安全注意有些端口是从运营商的层面禁用了因此怎么样都是无法访问的。
因此我们可以放弃开启 DMZ转而使用端口进行转发。
图片来源于网络
比如外部端口 10000内部端口 2000IP 地址 192.168.1.100。
那么你可以通过内网访问192.168.1.100:2000进而访问服务的 2000端口如果这个端口是网页那么可以在浏览器输入上面的信息访问。
而如果使用公网 IP也是类似的不过端口变成 10000如 172.70.214.xx:10000 就能访问家里的资源了用手机访问。
如目前鱼鹰老家的树莓派安装了 Nginx 服务端口号 20081在浏览器上就能看到鱼鹰存放的一些测试文件了后面有机会分享这个。
后面准备有时间把分享的公众号资源放在这里方便大家下载云盘速度实在太慢了但前提是先把树莓派的安全问题搞定不然被黑客黑了就得不偿失了。
ssh 登录默认端口是 22考虑到安全问题可以换一个因此这个映射一定要有否则你在外面就登录不了服务器了。
怎么像访问百度一样访问服务器呢
回到今天的主题如何像上面图片一样能随时随地访问呢答案是 DDNS。
有点网络常识的都知道网络是通过 IP地址互联的但是我们ip地址不容易记住因此有了域名这样我们可以通过域名来间接得到 IP 从而访问。
这里需要 DNS 服务来得到我们需要的 IP比如我们访问 www.baidu.com电脑其实也不知道它对应的 IP但是它可以一级一级往上查从而得到它的 IP 地址
可以看到百度的 IP 是 39.156.66.10
但是这种 IP 一般是固定的DNS 服务器有存档就算IP改变了也会更新而我们家里的宽带虽然申请了公网 IP但它是动态的可能隔一段时间或重启IP 就变了。
此时我们可以通过邮箱或者其他方式告诉我们公网 IP通过 IP 访问。但这种方式显然很麻烦。
因此我们可以使用 DDNS 服务。
鱼鹰采用了公云https://www.pubyun.com/products/dyndns/的免费 DDNS 服务TP-Link路由器有这免费功能但我家的不能用哎。
只要在上面注册好就可以拥有一个免费的 xxx.f3322.net 的域名。xxx 可以任取自己喜欢的。
然后在树莓派中定时通过脚本定时更新公网 IP 到服务器中。
这样你访问域名 xxx.f3322.net 时候就可以通过公云的 DDNS 服务得到你家里的 IP 地址了。
限于篇幅下期详述感谢支持。