使用家用电脑作为服务器

在大多数时候,云服务器的价格让人望而却步,尤其是带宽方面,带宽低,如果没有cdn,根本无法正常使用,现在我就教大家用自己电脑搭建一台云服务器


一:外网

首先,当云服务器的最重要一点就是网络方面,大家都知道,家里的电脑ip是无法直接被外部访问的,需要做一系列的处理才可以,我给大家总结了以下方法

1:打电话给运营商,开外网

直接打电话给运营商,叫客服给你开外网就行了,这种方式是相对于其他方式,最好的一种,可以充分利用家庭带宽

优点:

  带宽能够充分利用,不需要额外花费

  端口齐全,除了80端口,其他基本都可以使用

缺点:

  ip经常变动,需要做系列的其他处理

  不能使用80端口,不能做网站

2:使用花生壳,nat123外网映射

一般情况下,大部分路由器支持花生壳动态dns解析,直接路由器配置,或者百度就有教程了,nat123外网映射也有很多教程

优点:

  可以使用80端口做网站

  ip虽然变动,但是可以动态dns解析到一个域名,域名不会变

缺点:

  要钱

  带宽低,收费高,带宽高一点都要钱,没法充分利用家庭带宽


本文只讲关于开外网之后的一系列操作


二:路由器dmz主机

当你开启外网之后,就有了外网ip了,如图:

仙士可博客



但是很显然,你家连你自己网络的手机,电脑这么多,要怎么映射到一台电脑呢?


我们需要做以下的事情:

1:绑定局域网ip,使主机ip固定

我们打开路由器管理页面,能看到很多个连接的设备,选择好我们需要开外网的那个设备(通常是电脑),然后绑定mac地址+ip地址,确保ip不会再变化:

仙士可博客


2:绑定dmz主机

找到路由器的dmz主机配置,将这个绑定好的ip填入即可:

仙士可博客



这样,我们就成功的将外网映射到了一台主机上


三:ip地址变动问题解决思路

完成上面的步骤,这个云服务器我们已经是开启成功了,可以通过外网ip,直接登录这台主机,无论是windows,还是linux  (但是还需要注意防火墙问题,这个是电脑的配置,不细说)

问题来了,如果ip变动了,我们不在家里,怎么获取到自己的家庭ip呢?

这个问题的主要点在于,需要通过自己的家庭网络,去请求外网,让外网获取到家庭网络的ip,然后想办法通知到我们,即可,本人的方法如下:

1:linux定时任务,

请求自己的一台服务器,服务器获取到ip之后,保存,每次外网变动之后,我们只要请求自己的云服务器即可.

定时任务如下:

仙士可博客

云服务器代码如下:

<?php
if($_GET['name']=='xxxx'){
   file_put_contents('ip.txt',$_SERVER['REMOTE_ADDR']);
}
echo "ip: ".file_get_contents('ip.txt');

家里的电脑定时任务,每次带上参数请求,服务器将保存ip,我们自己访问自己的云服务器,没有带上参数,则会直接输出家里电脑的ip


2:邮箱通知

通过

curl ifconfig.me
curl icanhazip.com
curl ident.me
curl tnx.nl/ip

等等命令,可以获取到本机的外网ip,

定时任务获取ip,与历史ip匹配,如果变动了,则给自己邮箱发送自己的新ip,把ip保存到本地,等待下一次匹配

该方法无需外网


3:dns服务器

通过自己搭建dns服务器,动态更换域名的ip解析,我们只需要记住域名即可

该方法本人没有测试过,不知能不能实现

4:模拟域名服务商网站登录,自己修改域名解析ip

当获取到自己的ip之后,模拟登录腾讯云,阿里云等域名服务商网站,再进行提交自己的新ip解析

该方法本人目前还在试验阶段,尚未完成



四:自己的云服务器可以实现什么?

本人目前使用树莓派当服务器使用,目前在运行爬虫脚本

后期可能可以用于做云盘等操作

自己发掘吧~



仙士可博客
请先登录后发表评论
  • 最新评论
  • 总共0条评论
  • 本站由白俊遥博客程序搭建
    © 2017-1-17 php20.cn 版权所有 ICP证:闽ICP备17001387号
  • 联系邮箱:1067197739@qq.com