天天看点

内网穿透-nConnect与zerotier如何搭建我的远程私人服务器

作者:Circaboy

#头条家时光#

前言-需求分析

本文面向的对象是那些没有IPv6地址,没有公网IP地址但是有内网穿透需求的用户。

目前我手里的设备:SurfaceBook三代代顶配版,高性能自组装主机四台(都是13700K+64G内存常年开机的),威联通TS264C一台。

SurfaceBook三代顶配版是32G内存+2T固态 i7-1065G7,当我常用主机用。高性能自组装主机A是64G DDR5+8T Nvme SSD i7-13700K 3080,当远程服务器跑训练任务。高性能自组装主机B是64G+4T nvme SSD i7-13700K 1080Ti,当高性能备份主机用。威联通TS264C是32G内存,加了两块2T Nvme的固态以及两块14T的机械当数据储存盘用。

这些设备都分散在两个地方(湖北和江苏),所以需要我把他们连在同一个局域网内部,以便于我在任意一个地点的时候都能无障碍访问所有的设备以及对其进行管理,并且不同的设备之间有大文件传输管理需求。

之前为了把我的多地设备联动组网,折腾了一下zerotier,奈何有时候zerotier还是时不时抽风,zerotier还限速100Mbps,有时候限制使用体验。但zerotier又是免费的,体验差我也没办法,要加钱提升服务都没得选。

内网穿透-nConnect与zerotier如何搭建我的远程私人服务器

我在江苏这边的网络是500M上下行对等网络,如果纯用Zerotier的话,其实占不满我的上传带宽的,尤其是我做大文件传输的时候,明明我这边是500Mbps的上传,但是传输文件速率总是被压到20Mbps左右。所以为了用满我的上传带宽,我一般都会选择直接上收费服务。

内网穿透-nConnect与zerotier如何搭建我的远程私人服务器

这里要提一下,很多人把Mbps 和MB 搞混淆,在外网访问的时候,一定要分辨清楚:

网络数据传输分为发送数据和接收数据两部分。上传就是向外部发送数据,下载为从外部接收数据。他们都受网络带宽和设备性能制约。

在日常网络传输中大致1Mbps=1024/8Kb/s=128Kb/s(1/8)。例如上行的网络带宽为100Mbps,那么最大上传速度就是12800Kb/s,也就是12.5MB/s。

所以我的594Mbps的上传速率换算下来就是74.25MB/s,传输大文件情况下,还是满速上传比较好。

市面上的收费或者免费内网穿透服务其实很多,比如NKN、DDNSTO、frp、Zerotier、花生壳,但是细究下来又不算多,因为要同时满足稳定,价格适中,支持端丰富,并且还安全这几点是很难的。DDNSTO连接数太少,frp操作很复杂,zerotier被运营商限速,而且在NAS上面,Zerotier得进入后台进行操作,操作难度加倍。

内网穿透-nConnect与zerotier如何搭建我的远程私人服务器

NKN的nconnect算是一个比较均衡的选项,收费不算太贵,按流量收费,服务商稳定,并且多端都支持。

NKN可能很少有人听说,因为他们的服务主打的是海外市场,现在国内了解的人还比较少。nConnect是NKN的一种点对点去中心化网络与生态系统,这个方案只需要两端都装好客户端就能组网,跟zerotier是一样的逻辑,但是比zerotier优秀的点在于nConnect的传输速率只跟我的网速有关,我的网速有多快,它就有多快,而zerotier的传输只限定在100Mbps。NKN的nConnect适用于所有TCP应用,包括SMB、远程桌面、SSH、SCP等等,可以完美联动各个平台的设备。并且nConnect不限制设备数量,zerotier限制最多设备数量是100个,对于小团队或者重度玩家来说,zerotier提供的设备数偏少了一点。

经过我测试,NKN的nConnect是我目前用过的所有内网穿透最稳最快的,并且不需要公网IP就能玩。

NKN的nConnect优点:

1、操作极其简单,两端安装好客户端后点击一下就可直连。

2、支持随时随地远程安全访问。

3、外网访问速度很快且延迟率低(一般可以达到带宽满速)。

4、各个平台客户端都有(国内iOS端正在审核,即将上架,美区iOS端应用已上)。

5、 nConnect 安全性和私密性极高。nConnect提供的是分布式传输,只有传输的两端能知道传输了什么资料,中间帮忙转发的服务器都只能收到部分加密过分片,并在传输结束后删除。

内网穿透-nConnect与zerotier如何搭建我的远程私人服务器

现在群晖、威联通、华硕NAS均可以安装使用NKN的nConnect,高速低延迟,安全可靠!

nConnect安装与使用步骤

内网穿透-nConnect与zerotier如何搭建我的远程私人服务器

我先上的是我的威联通TS264C,直接进威联通NAS的APP市场安装nConnect,直接搜索安装就行。

内网穿透-nConnect与zerotier如何搭建我的远程私人服务器

装完nConnect之后直接点击打开,会自动跳出来操作页面操作,这里的操作是威联通的NAS的地址直接开的8766端口访问的,不需要额外的操作。

要注意的是服务器地区一定要选中国极速,这样在国内访问就不会遇到卡顿。

内网穿透-nConnect与zerotier如何搭建我的远程私人服务器

打开之后就要自己买个流量才能用,nConnect是按照流量计费的,25块钱40GB的流量,480G流量要260元,或者可以直接开通包月扣款服务。

付费只支持支付宝和信用卡。建议大家使用支付宝,因为信用卡是按美金计算的,盲猜会占用个人外汇额度。

内网穿透-nConnect与zerotier如何搭建我的远程私人服务器

在威联通TS264C上和电脑上都装完nConnect之后,就可以在电脑客户端直连我的TS264C了。

内网穿透-nConnect与zerotier如何搭建我的远程私人服务器

比如我现在人在江苏,想要访问湖北的NAS。那么就可以用这个桌面客户端!我们点击桌面端连接选项,下载桌面客户端后,点击右上角的+号,就出现一个二维码。然后用手机的nMobile Pro 扫描这个二维码即可。

内网穿透-nConnect与zerotier如何搭建我的远程私人服务器

我现在在江苏的电脑上连上放在湖北的TS264C,直接输入内网的IP地址再加5000端口号,就可以直接访问NAS了。

nConnect细节解析与对比

内网穿透-nConnect与zerotier如何搭建我的远程私人服务器

进我的资源管理器里面看看,nConnect与Zerotier一样都是采用的虚拟网卡技术,zerotier的虚拟网卡限制死了就是100Mbps,但是cConnect的虚拟网卡就没有速度限制。

内网穿透-nConnect与zerotier如何搭建我的远程私人服务器

如果想在我江苏的电脑上映射湖北的TS264C,也可以直接输入内网地址。

内网穿透-nConnect与zerotier如何搭建我的远程私人服务器

我在我的电脑上同时部署了Zerotier和nConnect,也同时映射了同一个NAS上的硬盘。上图那个10开头的是通过nConnect映射的,192开头的是通过Zerotier映射的。现在我的电脑上传速率是500Mbps,NAS那边的下载速率是300Mbps,理论上讲,如果通过我的电脑上传文件到NAS那边,Zerotier只能提供最多100Mbps的传输速率,而nConnect能提供300Mbps的传输速率。

NAS网页上传速度对比:

内网穿透-nConnect与zerotier如何搭建我的远程私人服务器

首先是Zerotier网络上传,在我花了很多钱自建Moon服务器之后,Zerotier目前属于勉强能用的状态,从江苏的电脑上传5G的ISO文件到NAS上,上传速率是3MB/s左右,换算回去就是24Mbps,只能说挂在那边还能勉强用。

内网穿透-nConnect与zerotier如何搭建我的远程私人服务器

然后我用nConnect网络进行上传,同样的设备,同样的文件,同样的网络环境,nConnect的速率能稳定在9MB/s,换算回去就是72Mbps,在传输大文件的时候,nConnect网络可以很明显地降低传输时间。也就是说,我这边的上传宽带利用率更高一点。

nConnect安全性部分分析

解决内网穿透的可用性之后,下一步就是解决内网穿透的安全性。

Zerotier是直接走的P2P打洞,点对点传输的好处就是不走中转,端到端加密,没有授权的部分没办法读取,但是坏处就是不支持单点登录与多重身份验证。所以对于安全性有要求的人更多时候更难选择Zerotier。更重要的是,Zerotier走的是UDP流量,国内运营商会限制UDP流量,所以跨网传输的时候Zerotier更不稳定。

内网穿透-nConnect与zerotier如何搭建我的远程私人服务器

nConnect也是点对点的端到端加密,但是支持单点登录与多重身份验证,并且还支持NKN的公共网络多个中继节点建立连接。Zerotier如果要做到多个中继节点建立连接的话,必须要自己手动组建moon服务器,从操作上来说,nConnect的易用性与安全性更好一点。

基于内网穿透服务的应用

在组建完内网穿透服务器之后,我们就可以愉快地在虚拟内网环境下对各个设备进行互访管理了。

最基础的:输入我NAS的内网地址,我就能在外网环境下管理我的NAS服务了,以及把我的NAS硬盘映射成Windows的本地硬盘。

内网穿透-nConnect与zerotier如何搭建我的远程私人服务器

比如我在办公室的电脑上的浏览器上输入我放在家里的那台TS264C的虚拟内网地址,就能直接访问内网。以及直接输入我家里的那台TS264C的内网地址+端口号就能直接访问我搭建在NAS上的各种服务。

内网穿透-nConnect与zerotier如何搭建我的远程私人服务器

我在办公室的电脑上映射我放在家里的那台TS264C的硬盘,实现本地化管理异地硬盘。

有了虚拟局域网之后,就能完成异地远程办公室主机和家里的主机互访了,只需要点开Windows自带的远程桌面,然后输入虚拟内网地址,再点一下连接,然后就可以啦。

因为我的大部分服务是部署在docker上的,管理只需要localIP+Port就行。

内网穿透-nConnect与zerotier如何搭建我的远程私人服务器

哦对了,还有一些很有意思的方面,我不敢写太多,就简单提一下吧,比如在自己的NAS上面装一个CDN服务,回收一下电费,在NAS上面装一个宝塔面板实现京东京豆自动打卡领,一个月一万多个京豆不是梦。

但是这些服务都需要及时维护,所以先做一个内网穿透实现异地流畅访问NAS那是必须的。

我大部分的程序都是跑在服务器上的(就是我前面说的好几台13700K的主机),但是我本地有时候也需要验证性的跑一些程序,装Anaconda之后用Spyder和Jupiter写一些深度学习脚本,然后测试性地运行一下,我一般都是本地写好脚本,然后远程控制服务器下载数据包再把脚本扔上去。

为了保证我的远程控制网络稳定性,免费的Zerotier肯定是不够的,收费的nConnect才是第一选择,因为花了钱的服务才是最稳定的服务。

利用nConnect提供的稳定的远程网络让我稳定问自己的服务器,能保证这一点,nConnect就不亏,甚至血赚。

基于nConnect的Windows RDP服务打通

我远程调试和管理服务器上的文件,全靠Windows RDP服务,而RDP服务全靠稳定的虚拟局域网。

内网穿透-nConnect与zerotier如何搭建我的远程私人服务器

在建立好nConnect的虚拟服务之后,我在任意一台电脑上打开远程桌面连接(远程桌面连接就是RDP)。

内网穿透-nConnect与zerotier如何搭建我的远程私人服务器

然后输入同样连接了nConnect内网的计算机名字,或者直接输入它的虚拟IP地址,再点连接。

内网穿透-nConnect与zerotier如何搭建我的远程私人服务器

然后就会有一个新的窗口界面给你,让你操作你的远程主机。这也就是我所谓的基于nConnect的远程RDP管理服务器最简单的方法。

Windows自带的RDP服务不需要任何额外的软件安装,只需要在设置里面开启服务,然后搭建一个虚拟局域网就能提供基础的RDP环境,然后再按照上面的流程去联通每一台主机就行。

无论是写代码还是传文件,又或者是传输资料,Windows RDP总是可以完美提供服务。当然,这一切的前提就是稳定的虚拟局域网服务。

结语

作为一个ML工程师加上数码电子产品爱好者,我现在对网络的依赖程度越来越深,而我对网络稳定性的要求也越来越高,毕竟我自己写的服务上线之后最怕的就是遇到问题,而远程调试最怕的就是链接不稳定,nConnect这样的收费服务其实更加适合我,因为收费所以稳定安全可靠。

nConnect的收费其实完全属于我能接受的部分,不限制设备数量,按照流量收费而不是时长收费,传输速率没有限制。并且nConnect的操作更加简单,下载应用直接扫码就行。

Zerotier的长处在于免费,短板在于限速100Mbps,限制100个设备数量。

目前我的使用是Zerotier和nConnect搭配一起使用,在我更需要稳定高速的传输时,我就直接让nConnect顶上,在我对这些部分更不在意的时候,我就选Zerotier。

继续阅读