电脑开机自动上线(电脑开机之后自动将电脑的远程端口映射到服务器,可以通过其他设备进行连接,实现随时访问自己的电脑)

实现场景,电脑开机之后,自动将电脑的3389远程端口(或者是别的什么端口),映射到服务器的指定端口,可以通过支持远程桌面的设备进行连接,实现随时访问自己的电脑桌面!!!

首先将启动程序放到电脑的启动文件夹里面

启动文件夹的位置是:C:\Users\Administrator\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup

因为映射端口需要使用到命令行,我们这里用vbs脚本实现无窗口执行命令的效果!

路径是我们放Cmd端口映射的bat位置脚本(新建一个vbs后缀的脚本,名称随意,然后放到下面的这个文件夹里面)
CreateObject("WScript.Shell").Run "D:\fastSoftware\autoLogin.bat",0,FALSE

关于frp映射的具体方法请参考另一篇博文

基于frp的内网穿透(需要公网服务器的支持) https://www.cnblogs.com/nanstar/p/13211076.html

关于网络监听脚本请参考另一篇博文

批处理(bat)用来监测Windows网络状态脚本 https://www.cnblogs.com/nanstar/p/13298741.html

将下边的代码放到一个后缀为bat的批处理脚本里面

::网络检测
::开始会自动检测网络状态,若是网络畅通,连接远程服务器,
::若是连接不通,则会一直检测网络,直到网络通畅,再次进行链接
@echo off
::初始化的网络检测部分(-n是次数,可以根据需要设置次数,次数值越小,在网络恢复的时候恢复连接的速度越快)
:check
ping -n 5 www.baidu.com
IF ERRORLEVEL 1 goto check
IF ERRORLEVEL 0 goto startConnect
pause > nul

::这里进行远程服务器通信
:startConnect
echo start Connect
::这里的路径是frp配置文件的全路径
D:\frp\frpc.exe -c D:\frp\frp\frpc.ini
goto checkNormal
pause>nul

::用来一直检测维护网络正常
:checkNormal
ping -n 10 www.baidu.com
IF ERRORLEVEL  1 (echo %date%%time% netCheckNotNormal >> C:\Users\netCheckLogs.txt) && goto check
IF ERRORLEVEL  0 (echo %date%%time% netCheckNormal >> C:\Users\netCheckLogs.txt) && goto  checkNormal
pause>nul 

我们重启电脑,然后就可以查看到这个活动的链接

netstat -nao (查看电脑的活动链接)

这时候我们使用手机端的远程桌面连接,连接远程的电脑

然后就实现了电脑的远程在线,网络监测脚本会在网络断掉、再次连接之后自动恢复本地主机的端口映射,实现了,网络在电脑就在线的操作!!!

posted @ 2020-07-14 21:34  孤水寒月  阅读(603)  评论(0编辑  收藏  举报