我刚写的时候还在想,我其实是不太敢写的,因为到写之前还不是很有把握。
没想到等写完竟然顺利做完了。
整体流程,大概是首先拿废弃主机当服务器,然后建立远程连接,然后获取一个公网IP,接着将这个服务器端口映射到公网上——那么只要访问公网ip就可以访问这个服务器了。
改主机为服务器
我找了几个没有人用的主机,依次连接显示屏幕开机测试性能,最后留下一台商用G3420,它是两核6G内存,windows10 pro系统,虽然因为年龄已经很大,工作起来时常撂摊子,但比其他几台古董来说还是好多了。
主机不需要显示屏和其他外部设备,只要连上了就可以当服务器用。
远程连接
远程连接是因为你肯定不能带着主机到处跑,如果主机连着网,你能够远程控制这个主机的桌面,那就省事多了。
联网
联网最好直接连上家里的路由器宽带,这样确保直接开机就连接着网络。
安装远程连接软件。
我尝试了Todesk和Rustdesk,测试过后其实都还不错,如果没有特别高的要求,这个连接速度差不多满足办公需求了。(不过ToDesk一些需求是收费的,比如终端和隐私屏,RustDesk就是完全免费的。这两个不如都用着)
使用远程连接软件需要本机和被控主机都下载了软件,然后在主机上输入对应代号和密码就可以连接了。
其他
远程开机、通电自启动、开机启动应用程序。
虽然列为其他但在解决过程中占比不小。
远程开机:主机一直开着太浪费电了,买一个远程控制的插座开关,控制通电和断电。
通电自启动:只通电是打不开主机的,所以要设置通电自启动,具体做法是在BIOS中设置开机启动项。
开机启动应用程序:之前写过开机启动应用程序的方法,这里也一样,如果远程连接软件没有设置开机自启选项,可以创建个快捷方式丢入shell:startup
窗口。
到这里为止,已经能实现千里之外隔空控制一台默默运行的主机了。
我们可以在服务器上存储各种需要的工作环境,为本机节省空间;也可以让服务器持久完成某项工作,因为即使断开桌面连接服务器工作仍会执行,直到主动关机。
然而,这时候的服务器仅仅只能用于远程控制,还并不能称得上是‘服务器’,想要真正打破网络的隔阂,让服务器无缝地为我们服务,还需要和公网接轨。
获取公网IP
公网IP有什么用?
公网IP是公开的IP地址,可以被外界访问。如果你拥有这么一个ip,再将主机某项工程的端口映射到此ip上,那在互联网上就可以随时随地对你的主机服务进行访问了。
你可以用于搭建网站,开放试验项目,建立临时使用的api等等等等。
但我的尝试并不顺利,我一开始想通过联通的宽带申请公网IP,然而被告知如果没有公司认证不能获取。
我之前试过coplar内网穿透,尝试的结果表现出这样连接不仅非常困难,还极不稳定。
然后尝试使用了ngrok,这也是免费的,并且要比coplar简便容易得多的多。
ngrok的使用方法很简单,跟随步骤注册后,只需要在命令行输入ngrok http 80
(或者别的端口)就可以生成一个公网地址,这个地址是一个映射到本机的端口的域名。
可以参考这篇文章:https://blog.csdn.net/wholeliubei/article/details/144429820
——你敢相信我这么多天苦恼的问题就这么轻易解决了。
这样得到的公网地址会在每次使用时改变,如果你没有打算把服务公开,只为了自己方便(比如临时api)——那确实方便。
如果要开放持续的服务或者建立网站,当然还是有一个固定的ip更好。我暂时没这个打算,所以不往下写了。
此方悬停