实验室的环境配置比较奇葩,大家通过一个跳板机代理访问后端的服务器节点,默认的配置是转发了22端口,可以通过ssh连接,但这个方式现在看来是落后和愚蠢的。

链接
用户
跳板机:22端口
服务器1
服务器...
服务器n

和机房管理员沟通之后获得的答复是,跳板机的性能问题,不能承担大家vnc连接。于是就经常看到在实验室里面大家对着一个黑乎乎的界面敲命令行,代码的debug都是一个问题,会GDB的高手除外。
咨询了一些老人,他们都表示先在本地把代码调试好,再上传到服务上去运行,然后等结果。
这种方式也不应该是学计算机专业的人所能接受的呀。
我要下面这个图的形态:

链接
用户
跳板机:22端口
服务器n
服务器1
服务器...

我们需要对服务器直接连接!!!这是一个最低的诉求了。
第一个方案就想到的是使用teamviewer来进行远程控制,效果也还可以,但在上网高峰期的时候,使用teamviewer所看到的IDE工具界面跟打了码一样的,看一个代码上面再打上码,眼睛毁了。要不是机房太冷,噪声太大,想搬个凳子去机房学习的心都有了,我太难了。并且另一个严重的问题是在你专心阅读代码的时候,提示你是有商业用途而被强制断开连接,MDZZ,这判定也是无语。
世界的进步是懒人推动的,这句话绝对赞成。
于是开始研究这些软件,当然能不重复造轮子就不要浪费时间了。经过两天的查找,发现一个内网穿透的说法,很古老的词,以前没有这方面的需求,也就不加以关注了。现在看来就是跨越实验室与机房之间这堵墙的key了。
继续找了几个软件,最后决定使用zerotier这一个简易上手的神器
软件客户端下载地址:https://www.zerotier.com/download/
首页地址:https://www.zerotier.com

1注册用户

vnc连接跳板机代理的服务器

2 创建Network

vnc连接跳板机代理的服务器
创建完成后,可以获得一个ID,记好这个ID

3 配置网络

点击这个Newwork ID的连接,进入到网络管理的界面,除下面的改动之外,全部默认。
在ipv4配置模块,双击从IP池选择一个IP范围,默认给了172.30..,这样能获得的ip地址远超过免费的100,这里随便选了10.147.18.*,也可以使用默认的选项。
vnc连接跳板机代理的服务器

4. 记录当前获取的信息

项目 说明
Network ID 固定的,不可更改
Name 可以修改为有意义的单词

5. windows 10 配置

下载客户端ZeroTier One.msi
默认安装,安装过程中,系统提示加入新的网络中,看到一个新的正在识别的虚拟网卡
vnc连接跳板机代理的服务器
vnc连接跳板机代理的服务器
启动软件
vnc连接跳板机代理的服务器

右键任务栏上的图标,可以看到当前节点的ID,和其它功能菜单
vnc连接跳板机代理的服务器
选择Join Network…

将3中的 Network ID,复制进来,点击Join
vnc连接跳板机代理的服务器

6. 后台赋于加入网络的权限

回到后台管理界面,在页面中间位置,Members这一栏会看到提示,一个设备加入到这个网络中,在表格的第一列checkbox打个勾,系统开始分配IP地址。

vnc连接跳板机代理的服务器

7. win10本地验证

查看网卡属性,将IP地址获取改为自动获取,然后禁用再启动这块虚拟网卡,或者少等片刻也可以自动获取到IP地址。
vnc连接跳板机代理的服务器
CMD通过ipconfig命令查看,已经获取到后台分配的IP地址。
vnc连接跳板机代理的服务器

8. ubuntu 系统安装客户端

安装 :curl -s https://install.zerotier.com | sudo bash
添加Network ID: sudo zerotier-cli join ********
********即为你申请到的Network ID

9. 后台给权限

刷新页面,看到新加的节点,打勾,后略等片刻,就会更新出来分配的地址
vnc连接跳板机代理的服务器
可以给节点定义别名,方便区分。

10. 验证网络是否互通

Ubuntu 系统是否已经获取IP,重启网卡,测试能否互相PING通

11. 使用过程中遇到的问题总结 :

1,如果使用VSCODE remote插件远程调试代码时,写10.147.18.*的地址

在连接会提示windows 10 wget unable to resolve host address ‘update.code.visualstudio.com’而连接不上服务器。
需要在Ubuntu的服务器环境上配置一下DNS,
sudo vim /etc/resolv.conf
添加如下两行代码:
nameserver 8.8.8.8
nameserver 114.114.114.114

2 vscode提示downloading package ‘c/c++ language components (linux / x86_64)’ failed,请将vscode的代理设置关闭。

相关文章: