浅显易懂技术扫盲,从公司远程家里的方法有哪些?

2019-07-16 15:46:01 26点赞 202收藏 22评论

一、前言

我前两天写了一篇介绍我nas如何在预算有限(穷就穷,还谈什么预算浅显易懂技术扫盲,从公司远程家里的方法有哪些?)的情况下保证我的数据安全问题。

700元nas+单块监控盘 用了18个月,我是如何保证数据安全的一、写在最前面如果你仅仅是想存个家庭的照片,顺带可以备份一些其他类型的重要数据,挂个bt下载,此文的廉价nas适合您考虑,如果您的要求较高,还要搭建流媒体服务(其实本文的方案也可以支持,只是效果不太好),或者其他对性能(nas性能)有要求的话,它并不适合您。本文仅仅适合需求不高的家庭用户,主要用于备值友6666666666| 74 评论133 收藏659查看详情

 然后我发现大家对nas的疑惑和想法也很多,因此我想趁热打铁的再写一篇关于内网穿透的文章,通俗的讲就是从公司远程访问家里的电脑或者其他设备(比如nas,或者打印机)。

本文可能不会像其他文章一样教你如何一步步的去穿透,因为穿透的方式(软件)很多,我不可能每个都去写一遍。

接下来我会讲一下原理性的东西,也会聊聊我用过哪些方式,最后我会分享我现在家里的穿透方式。本文目的不是一步一步教你去穿透,目的是 扫盲+抛砖引玉。

二、讲概念

1.什么是内网、外网、公网

简单的说内网、外网就是字面的意思,举个例子,你家有个路由器,所有通过wifi和网线连接之后,你们都处于一个内部网络里,这个网络有一个出入口:路由器。而你的路由器通过光猫拨号上网,光猫出去之后就是外网。

是不是很简单?简单的方式理解内网外网就是这么简单,但实际上这个概念是相对的,外网之外还有外网,只有最外层的外网才是我们现在所说的公网,公网就没有外网了。你可以理解为我家里够大,1个路由器不够用,我买了2个路由器,路由器A和路由器B,跟光猫直接连接的路由器A就是外网,路由器B通过网线连接到路由器A,那么现在对于连接路由器B的设备(电脑、手机、打印机 blablabla)来说,他们处于内网,路由器A上连接的(电脑、手机、打印机)对于路由器B的设备来说他们是外网。

浅显易懂技术扫盲,从公司远程家里的方法有哪些?

如上图,公司1是内网,公司2也是内网,家庭也是内网,而电信路由器1组成的网络就是公司1和公司2的外网,然后电信路由器1和电信路由器2直接具有公网ip,他们就是两个都处于公网。

2.什么是内网穿透

理想状态,我们希望可以直接公司连接到家庭,很遗憾,这是行不通的!因为家庭电脑没有公网ip理想状态,我们希望可以直接公司连接到家庭,很遗憾,这是行不通的!因为家庭电脑没有公网ip

你可能会问,我就想要远程我家里,跟内网穿透有什么关系?这个得从中国(乃至世界)的网络发展说起了,最早最早互联网是美国军方在用的,每个设备有一个唯一标志:IP地址,他是由4段0-255的数字组合而成,由于早期老美搞这个缺乏了远见,规划数量过少(其实也不少了,主要是现在连个电灯都可以联网,你都得给他个IP地址,加上早些年很多人没有路由器,就是光猫拨号上网,会24小时连接不关机的也不占大多数,而如今几乎每个家庭都是路由器拨号之后24小时连接状态),导致了数量匮乏,我现在还记得04年左右家里的宽带拨号是有公网ip的。为了解决这个问题,国内的运营商开始大面积的使用内网,简单的说就是弄了个路由器,让你们都连接到这个路由器,然后再通过路由器去连接公网。

大内网的问题就是你没法连接到内网的设备(电脑,打印机等等),因此就出了一个名词叫内网穿透,你可以理解为内网就是隐形的墙,数据无法交互,我们需要穿透它。

这个继续深入下去,涉及到的专业知识就比较多了,nat转换服务等等,这不是本文的初衷,我希望的是扫盲,而不是把阅读者都变成专业者,点到为止。

3.内网穿透原理

内网穿透目前几乎(我实在不敢说100%,难说)所有的方式都是用了中间服务器,举个例子,内网A中有一台电脑,想连接内网B中的一台电脑,他们之间无法直接通信,那就在公网中(具有公网ip)找一台服务器,B电脑和服务器建立连接,并保持通信不断开。这个时候A电脑给服务器说:帮我发个“你好,现在学程序员有前途吗?”给电脑B,然后服务器就转达了这条消息,B电脑回复服务器说“不太好,写代码的饭都吃不起了”,这个时候服务器把这条消息返回给A电脑。

家庭电脑和服务器建立一条连接通道,而后公司请求到服务器的数据都会被转给家庭电脑家庭电脑和服务器建立一条连接通道,而后公司请求到服务器的数据都会被转给家庭电脑

这个原理可以推到当下的很多应用,QQ、微信等聊天应用,还有很多内网穿透软件,frp、ngrokd、nat123、花生壳(包括花生壳盒子、花生棒)。统统都是用这的这个原理,远程软件:著名的teamviewer、向日葵等等,这里顺便说一下,为什么tw现在商业检测严格,因为现在这些应用在中间加了一个服务器来协调大家通信,是有费用产生的,服务器要钱、带宽要钱、维护要钱。不过收费确实很坑,我一个普通用户,一年都连不了几次,你就要我交一千多软妹币一年的服务费,确实过分。

4.未来展望

未来这种情况会逐渐的改善,因为ipv6正在推广普及中,已经有部分值友写了ipv6的公网访问了,ipv6用了比4段0-255还要长的十六进制来表示,可以分配的ip举例说是可以给每一粒沙子分配一个ip地址。这个有兴趣的朋友去了解下,就目前而言,大多数人还是需要穿透的。

三、我的穿透经历

我这些年用过这些方式穿透:

1.花生壳盒子

2.ngrokd

3.frp

4.路由器厂商提供的远程web管理(仅仅是远程路由器,不能直接和其他设备传数据,传数据需要曲线救国)

简单聊聊这些方式的体验吧:

1.花生壳盒子,硬件100元左右,网速只有1M还是2M来着,这都不说了,每个月限流量2G,然后10元10G?(好像是这个价格),当然这种小水管2G流量轻度应用也还是够了,总的来说价格不便宜,很符合国内的文化:点哪里都需要充值。

2.路由器厂商提供远程web,这种方式需要搭配路由器的插件给内网的电脑发送wol包远程开机,然后电脑上还要安装开机自动启动的远程软件,例如teamviewer或者向日葵,电脑启动之后通过远程软件和家里电脑互传数据。操作还是很繁琐的,另外主要就是远程软件收费的问题了。

3.ngrokd和frp,这两个一起说,都是同一类东西,上面举的例子,需要被访问的内网设备需要安装ngrokd或者frp的客户端,还需要一个具有公网ip的电脑(作为服务器)安装ngrokd或者frp的服务端,让需要被访问的内网设备和服务端保持连接,可以理解为自己虽然没有公网ip,但是我找了一个有公网ip的来作为我的秘书,有任何事情直接联系我的秘书,秘书会和我沟通的。这个方案最最麻烦,需要有一台公网ip的电脑或者云服务器,另外,frp比ngrokd稳定性好了很多很多很多很多很多很多很多很多很多很多~

4.这里还有一种情况,顺带提了,后面就不写了,威联通、群辉都有自己的内网远程服务,原理和ngrok、frp是一毛一样的,虽然不收费,也不稳定,一分钱一分货的道理永远不变。

四、我目前的穿透方案

目前我的方案是路由器的frpc(c表示client)+云服务器frps(s表示server)实现的,路由器是华硕ac66ub1,刷了梅林,应用中心本身就支持图形化的frp,也省去了自己去折腾的麻烦了。如果您的路由器没有,但是您可以有办法shell进去的话(linux的系统),也是可以自己安装frpc的,只是方法麻烦一些,方法还请自行百度吧,linux安装软件和windows安装软件是一个道理,区别是linux安装用命令,比较繁琐。

我直接展示一下我目前的穿透方式和设置好了,以下方法大家可以作为了解一下即可,我这方案需要一定的网络知识、linux知识、动手能力,不适合入门者,并且门槛也较高(技术和硬件),推荐有【刷了梅林的路由器+有一台云服务器+已备案的域名】的朋友往下看,其他朋友有兴趣看看(后面我也讲一下这个穿透的数据流程是怎么样的),没兴趣这里就可以不看了浅显易懂技术扫盲,从公司远程家里的方法有哪些? 

1.首先,先决条件

你要有一台具有公网ip的电脑,windows或者linux都可以,我是linux的云服务器,来自腾讯云的白菜主机,10块一个月,2G内存,1Gcpu,1M小水管带宽,50G云空间,这个pc最早我是用来玩个人博客(技术)的,后来慢慢的没有动力去更新了,因为个人站点seo是真的烦人,写来东西没人看也没动力。云服务器怕麻烦的话还是香港吧,不用备案,否则用ip的话经常动不动就提示暂时无法访问了,要让你去备案。备案的流程也很麻烦,我觉得都可以另外写一篇文章了(谁需要金币的快去写吧)。

2.服务器的安装、设置

然后就是服务器上去安装frps,安装有两种方式,1.自行去github下载安装包,然后自己拷贝到服务器去安装,安装教程网上很多,度娘一下,太多了。对于没有linux经验的朋友来说比较烦人,一个命令错了都不知道为什么。当然还有一种简单的方式,那就是有些牛人已经把下载frp、安装、配置都写好了,写到了一个sh文件里面,我们只需要把这个sh get下来执行即可。我就是用的这种方法,这类教程,老实说我来重复写我觉得毫无意义,大家直接看这篇吧。我只对关键的几项配置解说一下:

You Server IP   : xxx.xxx.xxx.xxx  //这个就是你服务器的公网ip地址
Bind port       : 5443 // 这就是frp的客户端(路由器)和服务器通信的端口,他们会用这个端口保持一直连接
Dashboard port  : 6443// 这个是可以登录上去看多少客户端连接到你的frps服务端的,一般用户也用不着了,多用户需要关注
vhost http port : 7777 // 访问http服务用这个端口,后面我再根据我自己的配置讲解, 由于我部署了博客,所以这里使用7777端口而不是80
vhost https port: 7778 //访问https服务用这个端口,后面我再根据我自己的配置讲解

Privilege token : WEWLRg***************uftPLQniq  // 这个就类似于账号,所有的frpc客户端通过这个密码就可以连接到你的服务端,没事儿别泄露
Max Pool count  : 50 // 连接池,应该是frpc客户端可创建的代理数(即可以穿透的设备端口数),个人用户50完全足够了

然后把服务器上的frps启动起来,服务端先这样,后面配置路由器的时候我再解说上面的这几个配置。

安装好后,在云解析中添加一个泛解析:

浅显易懂技术扫盲,从公司远程家里的方法有哪些?

泛解析就是*,他的意思就是任何二级域名都解析到你指定的ip上,即你输入router.xxxx.com还是nas.xxxx.com都解析到你的云服务器上。

后面我会拉通了将这整个所有的关系。

2.路由器的设置

在梅林上使用frpc时需要安装另一个插件,【虚拟内存】,应用中心就有。

浅显易懂技术扫盲,从公司远程家里的方法有哪些?

仔细看一下,这里填写的参数其实就是上面我们安装frps生成的参数。

浅显易懂技术扫盲,从公司远程家里的方法有哪些?

还要再下面添加代理的内容,简单的说就是,我上图的3条配置就是分别为:

(1).通过http://router.xxxx.com:7777 (前面我们配置的7777为http端口)打开的是我家里的127.0.0.1:80,127.0.0.1代表本机,80是路由器管理页面的默认端口,默认web打开一个域名都是80端口,所以在家里访问不加也是可以的。

(2).通过http://nas.xxxx.com:7778 (前面配置的7778为https端口)打开的是我家里的192.168.1.3::443,这是我nas的端口,443是https连接的端口。比如说我在家里访问nas用https协议的话,虽然地址栏没显示,但他就是443端口

(3).通过http://router.xxxx.com:7778 (前面配置的7778为https端口)打开的是我家里的127.0.0.1:8443,127.0.0.1代表本机,即路由器本身,可是为什么端口变成8443了?因为华硕这路由器他就是默认8443的

系统管理-系统设置中要把授权方式改为both,否则就默认只能通过http协议访问系统管理-系统设置中要把授权方式改为both,否则就默认只能通过http协议访问

为什么我要配置https的协议呢?为了安全呀,虽然也不是绝对安全的,但是好歹也能避免铭文数据再互联网到处传递。内网穿透我不建议大家使用http协议,切记,切记。

3.我们来梳理一下这个穿透的过程是怎么样的:

(1)路由器frpc和服务器的frps通过配置的token、ip、5443通信端口号建立了连接(客户端主动带着这些参数去找服务端,说我有这些数据,服务端校验这些数据的确是我服务端生成的,就允许建立了通信连接),并且保持连接一直不断开。客户端传上来的数据除了token之外还告诉服务端:我要匹配3条记录,凡是请求了[http://router.xxxx.com:7777,https://router.xxxx.com:7778,http://nas.xxxx.com:7778]你都把数据转发到我这来。

(2)这个时候我们在公司电脑浏览器地址输入:https://router.xxxx.com:7778 ,这个请求到域名管理商那设置的云解析,域名解析发现你设置了一个*.xxxx.com的泛解析,于是你的请求被转发到解析的目标公网ip地址上。

(3)服务器上运行的frps启动之后就一直在监听7777和7778(我们设置的两个端口),当有请求和两个端口的时候,frps就会把你的域名和你请求都通过5443端口发给路由器的frpc(此前他们一直建立了连接未断开)

(4)路由器收到数据之后,发现你请求的是https://nas.xxxx.com:7778,然后路由器就根据自己的配置查找,这个域名对应的是192.168.1.3:443,于是就帮你又把数据发送给这个ip。

就这样,一个完整的内网穿透数据解析流程就完成了浅显易懂技术扫盲,从公司远程家里的方法有哪些? ,真他x的繁琐,没办法~~~~,咱们再来看看这个图,自己画得有点丑:

浅显易懂技术扫盲,从公司远程家里的方法有哪些?

4.访问看看

okok

okok

威联通配套的程序,输入域名不要https,加上端口,然后勾选安全登录威联通配套的程序,输入域名不要https,加上端口,然后勾选安全登录

也ok了,连接成功,手机app连接的话也是类似的也ok了,连接成功,手机app连接的话也是类似的

ok,搞定~~~~穿透是件麻烦的事情,几年后可能ipv6能结束这种情况,希望那一天早点到来。祝大家生活愉快,有问题我们评论区交流。

最后,我能力有限,有更好的方式,欢迎评论区传播给更多的人。

展开 收起

华硕(ASUS)RT-AC68U 1900M AC双频 低辐射 智能无线路由器

华硕(ASUS)RT-AC68U 1900M AC双频 低辐射 智能无线路由器

659元起

NETGEAR 美国网件 R7000 AC1900M 双频千兆无线路由器 变形金刚版

NETGEAR 美国网件 R7000 AC1900M 双频千兆无线路由器 变形金刚版

284.99元起

NETGEAR 美国网件 R8000 Nighthawk X6 AC3200 三频千兆无线路由器

NETGEAR 美国网件 R8000 Nighthawk X6 AC3200 三频千兆无线路由器

788元起

ASUS 华硕 RT-AC86U 2900M双频千兆无线路由器

ASUS 华硕 RT-AC86U 2900M双频千兆无线路由器

819元起

ASUS 华硕 RT-AC5300 三频千兆无线路由器

ASUS 华硕 RT-AC5300 三频千兆无线路由器

1279元起

ASUS 华硕 RT-AC66U B1 无线路由器

ASUS 华硕 RT-AC66U B1 无线路由器

549元起

NETGEAR 美国网件 R6400 1750M 双频千兆无线路由器

NETGEAR 美国网件 R6400 1750M 双频千兆无线路由器

499元起

ASUS 华硕 RT-AC88U 无线路由器

ASUS 华硕 RT-AC88U 无线路由器

979元起

华硕(ASUS)RT-AC51U 750M AC双频 低辐射 智能无线路由器

华硕(ASUS)RT-AC51U 750M AC双频 低辐射 智能无线路由器

169元起

PHICOMM 斐讯 K2 1200M智能双频无线路由器

PHICOMM 斐讯 K2 1200M智能双频无线路由器

暂无报价

美国网件(NETGEAR)R7800 AC2600M 双频千兆无线路由器

美国网件(NETGEAR)R7800 AC2600M 双频千兆无线路由器

1179元起

NETGEAR 美国网件 R8500 AC5300M 无线路由器

NETGEAR 美国网件 R8500 AC5300M 无线路由器

1299元起

HUAWEI 华为 荣耀分布式路由 无线路由器系统

HUAWEI 华为 荣耀分布式路由 无线路由器系统

699元起

Tenda 腾达 AC9 无线路由器

Tenda 腾达 AC9 无线路由器

175元起

NETGEAR 美国网件 R6800 AC1900M 双频 无线路由器

NETGEAR 美国网件 R6800 AC1900M 双频 无线路由器

569元起

ASUS 华硕 RT-ACRH17 1700M 无线路由器(千兆口、高通方案)

ASUS 华硕 RT-ACRH17 1700M 无线路由器(千兆口、高通方案)

419元起
22评论

发表评论请 登录
  • 最新
  • 最热
评论举报

请选择举报理由

相关文章推荐

更多精彩文章
更多精彩文章
最新文章 热门文章
202
扫一下,分享更方便,购买更轻松