将树莓派作为服务器也太爽了吧

Posted wizardev

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了将树莓派作为服务器也太爽了吧相关的知识,希望对你有一定的参考价值。

前言:我们都知道买一台带宽大一点服务器要不少钱,有没有想过拥有一台和家庭宽带带宽一样的服务器?那速度想想都刺激,如果你手上有树莓派的话,再加上这篇文章你就会拥有一台和家庭宽带带宽一样的服务器。

这篇文章介绍了如何在树莓派上安装系统,也顺便说了怎么在内网中访问自己的树莓派,当然想要将树莓派打造成一个服务器,是不仅仅要能再内网中访问也要能在公网中访问。本篇文章主要介绍的就是怎样能在公网中访问家庭中的树莓派,毕竟能够在公网中访问的树莓派才是名副其实的一台服务器。

如何让你的树莓派可以公网访问

如何让树莓派可以公网访问呢?有以下两个前置条件:

  1. 你的宽带有公网ip。
  2. 打开根路由“虚拟主机”功能。

现在分别说下这两个条件:

检测自己的宽带是否有公网ip

如果你家庭安装的是移动宽带,那么ipv4的公网地址一般是没有的,移动的宽带ipv4都是移动内网的ip,不过,如果你的宽带有ipv6地址的话,一般ipv6的地址是公网的,怎么知道自己的宽带有没有ipv6的公网地址呢?这里有一个网站可以检测,我的宽带检测的结果如下

如果你宽带的检测结果如上图所示,那么你的宽带就有ipv6的公网地址。

注意:这里测试的时候你的设备连接的网络必须是跟路由器,否则会影响测试结果。

这时问题来了,怎么确定自己的宽带ipv4的地址是不是公网的呢?其实也很简单,我们只要访问一下这个网站,就能得到自己宽带的公网ip,然后,查询到的ip再和自己跟路由器查询的ip地址进行比对,

如果一样则说明自己的宽带拥有ipv4的公网ip。联通和电信的宽带一般是有ipv4公网地址的,我装的就是联通的宽带,拥有ipv4的公网地址

上面我一直在说根路由器,这里明确一下,我说的跟路由器就是你宽带入户的那个路由器,一般都是运营商装宽带时送的那个,不是自己另外安装的路由器。

打开自己路由器的虚拟主机功能

看到这个小标题你可能会有疑问,打开自己路由器的虚拟主机功能,这个“虚拟主机”功能不是路由器都自带的吗?为什么还要打开呢?确实,路由器一般都会有虚拟主机功能,但是运营商的路由器,“虚拟主机”功能你一般是看不到的。可能运营商是为了用户安全考虑,怕用户乱折腾,影响到了用户的使用体验,运营商路由器上给你的网址及用户名密码,你登录后会看到下面界面

你可以点进去每个选项看下,是看不到“虚拟主机”选项的,因为你登录的用户是普通用户,想要看到“虚拟主机”这个选项,需要的账号是管理员账号,管理员账号登录后的界面如下

在高级配置里面可以找到“虚拟主机”的选项,那么这个管理员的账号是什么呢?文章末尾会给出获取管理员账号的方法。

注意:这里说的路由器都是根路由器。

如果你的宽带有公网ip(ipv4和ipv6)都可以,并且也有“虚拟主机”的选项,那么就能将你的树莓派映射到公网,具体的操作步骤见下文。

设置树莓派为虚拟主机

将树莓派局域网ip设置为固定ip

为什么要这么做呢?因为路由器为设备分配的ip,一般是DHCP模式的,这种模式设备的ip是有租期的,可能租期到了之后设备的ip就变了。如下图

设置成固定ip是为了“虚拟主机”,因为虚拟主机的功能要指定设备ip的。那么怎么将设备的局域网ip设置成固定的呢?很简单,如下图

登录路由器的管理页面后,找到如上图红框4位置,输入你想要为树莓派分配的局域网ip和树莓派的mac地址就行了。设置成功后就会出现在红框5的位置。

设置树莓派为虚拟主机

虚拟主机功能需要登录管理员账号,**文章末尾会给出获取管理员账号的方法。**登录管理员账号找到如下图的位置

在上图中输入需要的信息就行,当然如果你不将树莓派设置成固定的局域网的ip也是可以的,这里可以勾选“启用户MAC映射”选项,输入树莓派的mac就行了。具体的输入信息可以参考下图

树莓派设置成虚拟主机后,你就可以在公网访问你树莓派了,如过你是按我的这篇文章安装的树莓派系统,那么你可以在局域网外的浏览器输入“你的宽带公网ip:9090”访问到你的树莓派的管理界面。

多级路由的虚拟主机设置

可能你家里不仅仅有一个根路由器,这时的虚拟主机怎么设置呢?也很简单,我这里就拿两级路由器来举例:首先在你的根路由器设置虚拟主机,这个虚拟主机的ip是你的第二级路由器ip,然后你的第二级路由器的虚拟主机再设置成你树莓派的ip就可以了。

注意:宽带的公网ip不是一直不变的,想把树莓派作为服务器,你还需要购买域名,点击这里购买,通过域名来访问树莓派就行了。可能这里会有疑问域名就能解决公网ip变化的问题了吗?当然不能解决ip变化的问题,但是每次变化后我们修改域名的解析地址为变化会的ip就行了,当然这里不用手动来修改,可以通过ddns来自动设置,设置方法见下文。

利用阿里云的DDNS自动更新ip

**这里说的更新ip是指,将自己宽带的ip自动更新到域名解析。**这样,就省去了每次宽带ip变化自己手动更新域名解析的步骤。实现动态域名解析DDNS其实很简单,可以查看官网,我这里找到了一个动态域名解析的docker镜像,运行下命令就行了,非常简单、方便、快捷,详情点击这里了解。运行命令如下

docker run -d --restart=always --net=host \\
    -e "AKID=[ALIYUN's AccessKey-ID]" \\
    -e "AKSCT=[ALIYUN's AccessKey-Secret]" \\
    -e "DOMAIN=ddns.aliyun.win" \\
    -e "REDO=30" \\
    -e "TTL=60" \\
    -e "TIMEZONE=8.0" \\
    -e "TYPE=A,AAAA" \\
    sanjusss/aliyun-ddns
环境变量名称注释默认值
AKID阿里云的Access Key ID。获取阿里云AccessTokenaccess key id
AKSCT阿里云的Access Key Secret。access key secret
DOMAIN需要更新的域名,可以用“,”隔开。 可以指定线路,用“:”分隔线路和域名(线路名说明)。 例如:“baidu.com,telecom:dianxin.baidu.com”。my.domain.com
REDO更新间隔,单位秒。建议大于等于TTL/2。300
TTL服务器缓存解析记录的时长,单位秒,普通用户最小为600。600
TIMEZONE输出日志时的时区,单位小时。8
TYPE需要更改的记录类型,可以用“,”隔开,只能是“A”、“AAAA”或“A,AAAA”。A,AAAA
CNIPV4检查IPv4地址时,仅使用中国服务器。false
WEBHOOKWEBHOOK推送地址。
CHECKLOCAL是否检查本地网卡IP。此选项将禁用在线API的IP检查。 网络模式必须设置为host。 (Windows版docker无法读取本机IP)false
IPV4NETS本地网卡的IPv4网段。格式示例:“192.168.1.0/24”。多个网段用“,”隔开。
IPV6NETS本地网卡的IPv6网段。格式示例:“240e::/16”。多个网段用“,”隔开。

以上环境变量均存在默认值,添加需要修改的环境变量即可。

文章到这里,已经介绍了怎么查询自己宽带是否是公网ip,怎么打开虚拟主机选项,怎么设置虚拟主机以及怎么利用DDNS自动更新ip。完成了上面几步,你的树莓派就己经可以当做服务器使用了,而且带宽是你宽带的带宽,剩下的你就可以随意折腾了。比如我就在树莓派上搭建了自己的博客网站以及做了自己的私有云盘,还是很舒服的。

获取管理员账号的方法

扫描下方二维码,输入框内发送“管理员”,即可获取。

以上是关于将树莓派作为服务器也太爽了吧的主要内容,如果未能解决你的问题,请参考以下文章

将树莓派作为服务器也太爽了吧

将树莓派作为服务器也太爽了吧

想要我加班?门都没有。怼的太爽了吧

想要我加班?门都没有。怼的太爽了吧

10个互联网兼职平台,让你的一技之长变现,副业薪资比日常搬砖高也太爽了

10个互联网兼职平台,让你的一技之长变现,副业薪资比日常搬砖高也太爽了