ZeroTier方案内网穿透原理
ZeroTier One的原理跟hamachi基本一样,就是虚拟出一块网卡,连上一个虚拟网络,安装了ZeroTier One客户端的设备可以连入这个网络,经过授权连接成功之后彼此都在同一网段,可以像在局域网一样互相访问,例如访问共享文件夹,web server,ftp server,联机游戏(例如打星际),当然也就包括访问群晖。所以如果你的群晖和你的手机连上了这个网络,不论两台设备具体在哪里,都像同一局域网内,从而实现内网穿透,达到从外网访问内网群晖的目的。
1.访问https://www.zerotier.com/注册或用gmail登录
2.订阅选项,默认免费(Free)即可。免费的最多支持100个客户端,应该够用了。`
3.接下来直接点击最上面菜单中的Network,然后点击Create,即可创建前述之虚拟网络——也就是一串id号
4.所谓ZeroTier网络/虚拟网络,就是后面你的群晖以及手机等设备要连入的虚拟网络。连到同一个网络的客户端互相可以直接访问。这一串数字id就是这个网络的本体,上面那个furious_rosenbaum是随机生成的网络名,用来描述网络,当你有多个网络的时候方便记忆和识别。

注:上图中右侧蓝色的数字即表示当前连入这个网络的客户端数量。新建网络没有客户端连接,所以是零。

点击My Networks,进入如下页面
网络id就是这个网络的唯一标识,后面客户端要加入网络时就是填入这个id号;

访问控制(Access Control)默认私有,也就是需要授权才能访问(后面客户端安装配置的部分会讲);

IP自动分配,也就是只要连入这个网络的客户端,自动获得此网段IP。

此页面也是管理和监控页面,也就是后面添加或删除客户端,控制那些客户端能加入此网络都可以在此处完成。任何可以联网的设备只要有用户名和密码即可登录ZeroTier One,然后进入此页面对网络进行管理,比如手机,平板,从任何位置都可以访问管理。

注:所谓“客户端”即安装了ZeroTier One客户端软件的设备。本文到目前为止还没有涉及到客户端安装,也就是说,创建自己的帐号/创建虚拟网络不依赖于具体客户端设备或软件安装,以及之后的权限管理也都不涉及特定客户端,任何一个可以联网的系统都可以操作。这个在你实际使用之后会发现非常有用且方便

将页面拉到下面,圈出的部分便是监控和管理的主要操作区域。当前没有客户端连接的时候如下图

详细解释如下,因为刚刚创建网络还没有客户端加入,所以显示“No devices have joined this network",当有客户端加入之后便会在此处看到状态,离线,在线,离线时间等等;后面Manually Add Member就是加入其他成员,也就是一开始注册账号时,你得到的那个内部ID可以用来加入其他人创建的网络,或者邀请其他人加入你的网络。其他的部分都可以忽略掉,不用看,没用,越看越晕。

注:ZeroTier的世界主要有两个概念,一个是用户一个是网络,都是一串数字表示。一个用户可以加入多个网络,多个用户可以加入一个网络。在本文应用实例中,是只有一个人一个网络,所有的设备都是我用自己账号登录ZeroTier后加入自己的网络而连接在一起的。

2.安装Windows客户端
为了演示方便我先在PC电脑上下载ZeroTier的windows客户端安装,然后加入上面创建的网络。

回到ZeroTier网站顶端,点击最上面菜单第一项Download,进入下载页面
安装好后,从菜单运行,不会出主程序窗口,而是在任务栏出现ZeroTier One的小图标,右键点击会出现弹出菜单,在此处点击Join Network…加入刚刚申请的网络
点击 Join Network…会弹出一个小窗,填入新申请这个网络id号,再点击Join即可

重点来了,此时回到页面 刷新一下(或者直接从客户端系统栏图标上右键点出菜单,点击"ZeroTier Central"进入此页面),将页面拉下来,此时就会看之前No Devices have joined this network的地方出现这个客户端,显示online

但是别急,此时客户端并未连上这个虚拟网络,需要进一步授权。在此管理页面勾选前面的复选框(auth?列),此时这个客户端就终于连上这个网络了。

可以看到,勾选之后,左侧虚线变成了绿色实线,表示客户端已经连上这个网络(1d7193******63d387)。另外客户端在此虚拟网络中的IP也已经得到,为10.147.18.99。中间short name和description的部分,我也填入了相应短名称和描述,这样方便在多个客户端连入后,明确知道各个客户端分别是什么。这个很有用,整个ZeroTier世界里面全是数字,就靠这个描述和名称来标识各个客户端了。

在网页端授权之后,用ipconfig查看一下,这个IP就是网页上那个IP。

方法:win+r,输入cmd,出现命令行终端,打“ipconfig"回车即可看到当前系统的网络配置情况。

  1. 在群晖上安装ZeroTier One客户端
    登录后打命令uname -ar,就会出现cpu版本信息,大概长这样:
    synology_bromolow_3615xs

这就很明显了,我这个安装在笔记本上的群晖6.1.7,是64位系统,bromolow的版本,下载zerotier-1.2.8r0-syn-bromolow-6.1.spk就可以了,这回终于没有404了,美滋滋啊。

下载页面:

https://download.zerotier.com/RELEASES/

在群晖端安装就相对简单了。登录DSM,打开套件中心,选择手动安装,找到刚刚下载的spk文件,点击下一步

运行后主界面基本没有内容, 唯一的操作就是在右下角[Network ID]填入网络id号,然后点击join。

加入后,刷新ZeroTier 点击网络id进入管理页面
和第一个windows客户端一样,可以看群晖的ZeroTier One客户端已经在线online,但未授权,左侧为虚线。点击复选框勾选授权,此时群晖连入虚拟网络

提示: “在线”(“online”)的意思就是客户端那一侧ZeroTier One软件已经启动正常运行,在ZeroTier网络上可以看到这个客户端;“授权"是指客户端能不能连入当前这个网络,默认是"未授权”(“Not Authorized”)状态,需要网络所有者(即创建相应网络的注册账号,此账号登录ZeroTier后才能访问此页面)授权——勾选左边的复选框

同Windows客户端一样,给群晖客户端填入短名称DSM home表示是家中的群晖主机,在描述中输入Synoloty DSM host,这个可以随便写,只要自己看了知道是那台机器就行。

授权之后群晖就应该已经介入此虚拟网,在PC端打开cmd,命令行ping一下看通了没有。如ZeroTier管理页面所示群晖的ZeroTier网IP是10.147.18.172

ping值很低,可见链路没有经过服务端,两台机器是直接交换数据的(基于ZeroTier那个虚拟网卡)

在此虚拟网测试下群晖,访问10.147.18.172:5000

手机端安装ZeroTier One客户端

启动ZeroTier One应用,点击主界面上方的加号,出现如下界面。输入网络id号,点击Add Network

点击网络id号右下的小开关,会弹出创建VPN连接请求,确认即可

机端的ZeroTier One 安装配置就完成了,接着在网页管理端授权这个客户端使之最终连入虚拟网络。

管理页面配置让手机连入虚拟网络
打开https://my.zerotier.com/network/1d71*****387 刷新,会看到新的手机客户端已经上线,但未被授权。

如法炮制,给手机客户端授权,并输入短名称和描述。勾选授权之后,刷新网页如下:
提示: 随着客户端增多,就能发现短名称和描述的作用。在这个页面通过名称和描述就能很清楚分辨各个客户端是什么。不然对着一串数字很容易搞不清楚谁是谁了。

此时手机、群晖、Windows电脑就像连入同一个路由器wifi下,各自的IP都都在网段10.147.18.*。

测试手机从外网连接家里的群晖
此时人和手机物理上仍然是在家里,但因为手机已经断开家里的宽带,使用数据上网,所以场景等同于手机现在是从外网对家里的群晖进行连接。可以看到手机端已经连上了VPN,打开群晖官家,添加现有设备,即家里的群晖。

输入正确地址端口用户密码,点登录后很快就连上了
切换到桌面模式可以看到更详细状态。DSM mobile中点击齿轮图标,选择桌面模式

群晖端在DSM里面起ZeroTier One可能起不来,或者加入网络加入不了,点击没反应。可能是跟我切换了网络有关。解决办法是通过putty连接到终端,然后再执行命令行命令离开原有网络加入新网络即可。加入成功后网页管理端就能看到新的客户端。授权时候群晖就连入你创建的ZeroTier的网络了

终端查看当前连接

zerotier-cli info
zerotier-cli leave xxxx #xxxx为network id
zerotier-cli join xxxx #xxxx为network id

无公网ip群晖+ZEROTIER ONE实现内网穿透相关推荐

  1. 【转载】无公网IP搞定群晖+ZEROTIER ONE实现内网穿透

    前言 最近刚开始折腾群晖,从5.2到6.0再到5.2再到6.1,期间过程曲折复杂,血泪交融,参考了无数文章,重启了无数次机器,拷贝了无数文件,以及损失了无数数据.再次提醒大家,数据一定要做好备份,一定 ...

  2. 无公网IP搞定群晖+ZEROTIER ONE实现内网穿透

    自己利用蜗牛星际DIY了一个黑群晖(安装系统参考这个链接https://zhuanlan.zhihu.com/p/60206902?edition=yidianzixun&utm_source ...

  3. 【Nas/群晖/服务器】FRP内网穿透实现外网访问

    一般来说,在同一局域网下的终端设备可以相对自由地互相访问.但是,如果想要通过外网远程访问家中或者公司局域网中的服务器或者Nas,这种情况该怎么办呢? 解决的方法大致分为3种: 1. QuickConn ...

  4. 群晖安装frp实现内网穿透(2022最新版frp)

    一.环境 云服务器CentOS 8(轻量应用服务器) 黑群晖DSM 6.2-23739 frp版本0.38.0 二.云服务器frps配置 云服务器用的是腾讯云的,直接用wget去GitHub下载比较慢 ...

  5. 黑群晖安装ZEROTIER ONE实现内网穿透

    黑群晖安装ZEROTIER ONE实现内网穿透 ZeroTier One的原理是虚拟出一块网卡,连上一个虚拟网络,安装了ZeroTier One客户端的设备可以连入这个网络,经过授权连接成功之后彼此都 ...

  6. 无公网IP,使用ZeroTier免费内网穿透

    无公网IP,使用ZeroTier免费内网穿透 有公网IP的用户还是建议使用端口转发的方式(速度最理想) 没有固定的公网IP,想要在家里或外地访问公司的服务器,常见的实现方案向日葵.teamviewer ...

  7. 群晖网络不通_群晖系统安装zerotier one进行内网穿透过程中常见问题及解决方法...

    群晖系统安装zerotier one进行内网穿透过程中常见问题及解决方法 2020-07-28 17:27:39 21点赞 330收藏 31评论 zerotier one是一款很好用的P2P内网穿透软 ...

  8. 群晖NAS使用ZeroTier进行p2p内网穿透

    群晖NAS使用ZeroTier进行p2p内网穿透 看不惯可以看:https://www.zjjflsz.top/wordpress/?p=133 前期准备:ZeroTier安卓安装包.windos的Z ...

  9. 公网SSH远程Ubuntu:安装cpolar内网穿透映射22端口 2/3

    系列文章 公网SSH远程Ubuntu:局域网内ssh远程Ubuntu 1/3 公网SSH远程Ubuntu:安装cpolar内网穿透映射22端口 2/3 公网SSH远程Ubuntu:配置固定的公网TCP ...

最新文章

  1. 黑客基础知识与防护(一)
  2. 刘未鹏谈如何学习算法
  3. Android碎片化难题:手游兼容性测试应该适配哪些机型?
  4. linux内核杂记(14)-Linux kernel release 5.x(1)
  5. 抱抱星英语Antony:不要用互联网思维做教育 | MCtalk教育访谈摘录
  6. Mac与Phy组成原理的简单分析
  7. mysql 第二大的数据_MYSQL – 从大表中的第二行中选择数据
  8. java jtextfield 事件_java – 处理JTextField中的编辑事件
  9. 跨境电商站外引流?FB必不可少!
  10. Localdatetime的坑
  11. CentOS中MySQL5.6 数据库主从(Master/Slave)同步安装与配置详解
  12. C语言-除法和取模运算正负号问题
  13. 免费且快速搭建个人www服务器的教程
  14. Java多线程系列--【JUC集合08】- LinkedBlockingQueue
  15. 基于强化学习工具箱的自适应巡航控制系统
  16. 团队领导力(一)规划+落实
  17. 1000瓶酒其中1瓶有毒,10只老鼠找出毒酒
  18. Android Studio 工具:Lint 代码扫描工具(含自定义lint)
  19. Linux下四款常见远程工具比较
  20. python自动抢购dmall_一个简易的自动抢购脚本

热门文章

  1. 今目标文荣演讲:免费的力量
  2. 玩转威联通NAS 篇一:通过ContainerStation安装下载神器qbittorrent
  3. 如何将jpg转换成PDF转换器教程
  4. 七麦数据-analysis值计算过程
  5. 关于将URL中的特殊字符进行转码和解码
  6. irc怎么用_我们的高中如何用Mattermost取代IRC
  7. 基于重要抽样技术的非序贯蒙特卡洛法(Matlab代码实现)
  8. C6_函数多文件管理练习
  9. ImportError: cannot import name ‘text_classification‘ from ‘torchtext.datasets‘
  10. 一文读懂Amlogic S905X4