近日有些项目需要在家完成,但需要使用学校的电脑,而家里的网络没法直连校园网。主要是因为两者分属不同的局域网,而我又没有公网ip,他们经过各种NAT网络地址转换后没有直连的可能(主要是我不会),但我的服务器和家里电脑都可以上互联网。大概如下图所示:
(如果觉得字太多,可跳至分割线)
作为一个网络小白,自然没有大神的手搭服务器的本领,什么VPS,一大堆云服务器配置还要钱,我表示:(
所以机智的我选择了teamviewer,直接方便,远程桌面打开,然后是卡卡卡卡卡卡卡卡卡卡卡卡卡卡卡卡......
作为高贵的程序员怎么能忍受写代码的高延迟(真香,结果被怀疑有商业行为)。好了,现在teamviewer也不能用了,万能的知乎大佬告诉我vncviewer,这个好,不要钱!!!然后又是卡卡卡卡卡......远程桌面是真的慢,特别是用来写代码。
作为python写手,我又不需要GUI,然后想到了linux常用的ssh,这linux摸得,Windows怎么摸不得?
于是我一顿搜索,发现Windows自带Openssh server服务。于是我按教程一顿操作猛如虎,结果1067教我做人。这么难用还敢放出来,信了Windows真是见了鬼,几个小时过去了还是连不上。还是找找插件吧,阴差阳错找到MobaSSH,一键搞定。
好了,windows ssh server配好了,然后我意识到一个大问题,也就是开头说的,连不上!没有公网ip地址,你服务器sshd配的再好也连不了Orz
然后我搜到了类似这样的推荐端口转发(内网穿透)的软件https://www.zhihu.com/question/49629610 一堆没听过的名词,什么ngrok, natapp, autossh......,没办法挨个试呗。结果试到第二个natapp,可以了,而且都是简单操作,不花钱也可以,花钱更稳定。不少是基于ngrok二次开发的,可能因为某些众所周知的问题,ngrok我是用不起来。
=======================我是分割线==========================
综上:在想连接的Windows服务器端打开ssh server (MobaSSH),然后按natapp的说明安装natapp并配置好通道打开服务,两者缺一不可,如下图所示:
成功后即可远程连接Windows命令行,再随便做个转发就可以连上校园网的服务器了。这才是目的,逃~