小记

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

写入开机启动

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

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

电脑开机自动开启远程连接1

路径是我们放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

代码脚本

电脑开机自动开启远程连接2

::网络检测
::开始会自动检测网络状态,若是网络畅通,连接远程服务器,
::若是连接不通,则会一直检测网络,直到网络通畅,再次进行链接
@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 (查看电脑的活动链接)

电脑开机自动开启远程连接3

远程连接

电脑开机自动开启远程连接4

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