路由器端口转发远程桌面控制:一电脑连接不同局域网的另一电脑
一、引言
路由器端口转发:指在路由器上设置一定的规则,将外部的数据包转发到内部指定的设备或应用程序。这通常需要对路由器进行一些配置,以允许外部网络访问内部网络中的特定服务和设备。端口转发功能可以实现多种应用场景,例如远程桌面、FTP、HTTP等应用程序的访问。
远程桌面控制:一种允许用户在不直接操作物理计算机的情况下,通过网络查看和操作远程计算机桌面的技术。这种控制通常用于远程协助、远程办公和系统管理等场景。
二、需求
背景:有两台计算机(服务器、电脑或平板电脑都行),一个路由器,以及一个校园网。
具体的使用场景1:我在实验室有一台电脑A,一个路由器,在宿舍有一台电脑B。然后,它们之间的关系是电脑A连接路由器的网络,路由器位于校园网的网络之中,我想通过电脑B远程控制电脑A。但问题是,路由器网络是一个局域网,校园网也是一个局域网,电脑A只能被同一个局域网(即路由器网络)内的其他电脑远程控制。它们的关系如图:

具体的使用场景2:跟场景1差不多。我在宿舍有一个路由器,一台笔记本电脑,在实验室有一台iPad,路由器连接的是校园网,而笔记本电脑连接的是路由器网络,iPad连接的是校园网。我的需求是想在校园网网络下的iPad远程控制路由器网络下的笔记本电脑。但由于两个局域网的网关问题,导致iPad是无法通过笔记本电脑的IP地址直接连接、远程控制桌面的。它们的关系如下:

三、配置过程
步骤一:登录路由器,设置路由器的“端口转发”规则。通常路由器都是有这个功能的,因为厂家不同,制造商也不同,所以界面会大同小异,点点点一顿操作就能找到它在哪儿设置啦。下面是我在小米路由器设置的端口转发规则。其中,名字随便定,协议选择TCP,外部端口一般是3389,和内部端口保持一致,内部IP地址就是与路由器连接的电脑的IP地址,这个是手动设置并固定的,以防止动态的电脑IP导致远程桌面连接的不稳定。

步骤二:重启路由器。这一步一定要做,否则上面的设置不生效。我就是这样,导致测试了大半天,浪费时间。
步骤三:确保与路由器连接的电脑允许远程桌面控制。具体方法在这篇博客中已经写得非常详细了:win10开启局域网远程桌面连接。这一步,参考前面怎么允许就行了,不需要看后面怎么连那部分。
步骤四:记得新建3389防火墙入站规则。具体方法可参考:win10打开3389端口。切记,不要把电脑整体的防火墙关了,这很危险。只开放一个端口就可以了。能只开一个端口就只开一个端口。
步骤五:确保与路由器连接的电脑的3389端口是开启的。具体的方法可参考博客:win10开启3389端口。该博客主要是提供了这样一个方法,cmd执行“netstat -an”命令,如果输出的结果有包含“3389”端口,那么就说明该端口是开启的。

步骤六:手动设置与路由器连接的电脑的静态IP。这一步主要是能够让你在外边远程的时候一直能够连上你的电脑。如果说IP是动态分配的,那么会造成端口转发规则的冲突,导致远程桌面连不上的问题。设置方法详细可参考博客:怎样设置电脑IP。一般来说,是需要配置网关的,网关一般就是默认打开路由器网站的IP,我的是192.168.31.1,其他型号的路由器可能不是这个,大差不差吧。我手动设置的电脑IP参数如下:

最后:只差一步了,即测试远程桌面连接。在实验室的iPad的RD Client输入路由器的地址,输入电脑的登录名和密码,然后就可以连接了。如果不成功,有可能是哪个环节出了问题,大家伙可以在留言区留言,我看到了也会主动、及时地进行回复。因为实验室和宿舍还是有一定距离的,所以,这里有一个小建议:可以不用专门跑到实验室测试,就在宿舍测试也可以。我的意思是,在宿舍,iPad连上路由器,然后直接在RD Client中输入路由器的IP,看下能不能连上。如果能连上,你在实验室大概率也是能连上的。另外,还有一点说明一下,就是你在路由器的网络之下,直接通过电脑的静态IP,iPad也是可以连的。所以,到这里,你一共有两个IP地址来控制你的笔记本电脑。
四、效果
以前读研的时候有第一种场景的需求,当时同门用这样的方法帮我解决掉了,但是没把方法记下来。导致我在遇到第二种场景的需求时,一时有点不知所措。但是经过网上搜索资料,以及仅剩的一点效果,最终还是解决了这个问题。
我在宿舍有一台笔记本电脑,是Windows系统的,连着一台小米路由器;然后我在实验室有一台iPad。那么,我在实验室的时候,需要使用iPad连接我在宿舍的笔记本电脑。下面就是iPad通过路由器IP地址在RD Client软件上成功连接的截图:

感觉还可以,就是画质差了些。
五、参考资料
1、win10开启局域网远程桌面连接
2、怎样设置电脑IP?
3、win10开启远程桌面,win10开启3389端口
4、Win7系统如何开启3389端口?3389端口是什么?
5、window7系统开启3389端口设置方
6、win103389端口打开
7、外网连接内网电脑(端口转发篇)
8、电脑设置wifi方法有哪些 电脑怎样设置wifi
9、如何设置远程端口如何设置远程端口号
10、win10怎么打开3389端口允许远程桌面通过防火墙
11、如何关闭windows10的3389端口
相关文章:
路由器端口转发远程桌面控制:一电脑连接不同局域网的另一电脑
一、引言 路由器端口转发:指在路由器上设置一定的规则,将外部的数据包转发到内部指定的设备或应用程序。这通常需要对路由器进行一些配置,以允许外部网络访问内部网络中的特定服务和设备。端口转发功能可以实现多种应用场景,例如远…...
sparksession对象简介
什么是sparksession对象 spark2.0之后,sparksession对象是spark编码的统一入口对象,通常我们在rdd编程时,需要SparkContext对象作为RDD编程入口,但sparksession对象既可以作为RDD编程对象入口,在sparkcore编程中可以通…...
2、Java虚拟机之类的生命周期-连接(验证、准备、解析)
一、类的生命周期 连接阶段之验证 连接阶段的第一个环节是验证,验证的主要目的是检测Java字节码文件是否遵守了<Java虚拟机规范>中的约束。这个阶段一般是不需要程序员进行处理。 主要包含如下四个部分,具体详见<<Java虚拟机规范>>: 1、文件格…...
IPD集成产品开发:塑造企业未来竞争力的关键
随着市场竞争的日益激烈,企业对产品开发的要求也越来越高。如何在快速变化的市场环境中,既保证产品的批量生产效率,又满足客户的个性化需求,成为了企业面临的重要挑战。IPD(集成产品开发)模式,作…...
一个可商用私有化部署的基于JAVA的chat-gpt网站
目录 介绍一、核心功能1、智能对话2、AI绘画3、知识库4、一键思维导图5、应用广场6、GPTS 二、后台管理功能1、网站自定义2、多账号登录支持3、商品及会员系统4、模型配置5、兑换码生成6、三方商户用户打通 结语 介绍 java语言的私有化部署的商用网站还是比较少的 这里给大家介…...
nmcli --help(nmcli -h)nmcli文档、nmcli手册
文章目录 nmcli --helpOPTION解释OBJECT解释1. g[eneral]:查看NetworkManager的状态2. n[etworking]:启用或禁用网络3. r[adio]:查看无线电状态(例如,Wi-Fi)4. c[onnection]:列出所有的网络连接…...
SpringBoot集成WebService
1)添加依赖 <dependency><groupId>org.apache.cxf</groupId><artifactId>cxf-spring-boot-starter-jaxws</artifactId><version>3.3.4</version><exclusions><exclusion><groupId>javax.validation<…...
C++ Qt开发:QUdpSocket网络通信组件
Qt 是一个跨平台C图形界面开发库,利用Qt可以快速开发跨平台窗体应用程序,在Qt中我们可以通过拖拽的方式将不同组件放到指定的位置,实现图形化开发极大的方便了开发效率,本章将重点介绍如何运用QUdpSocket组件实现基于UDP的网络通信…...
微信小程序小白易入门基础教程1
微信小程序 基本结构 页面配置 页面配置 app.json 中的部分配置,也支持对单个页面进行配置,可以在页面对应的 .json 文件来对本页面的表现进行配置。 页面中配置项在当前页面会覆盖 app.json 中相同的配置项(样式相关的配置项属于 app.js…...
D. Tandem Repeats? - 思维 + 双指针
题面 分析 s s s的范围很小,可以 O ( n 2 ) O(n^2) O(n2),在规定复杂度以内来完成枚举所有子串判断是否有满足条件的最大的子串,可以在第一层循环枚举子串长度 d d d,第二层循环枚举左右端点,通过双指针维护区间。对长…...
第十三届蓝桥杯省赛CC++ 研究生组
蓝桥杯2022年第十三届省赛真题-裁纸刀 蓝桥杯2022年第十三届省赛真题-灭鼠先锋 蓝桥杯2022年第十三届省赛真题-质因数个数 求个数,则只需要计数即可。求啥算啥,尽量不要搞多余操作 蓝桥杯2022年第十三届省赛真题-选数异或 蓝桥杯2022年第十三届省赛真题…...
Oracle中的commit与rollback
SQL语言分为五大类: DDL(数据定义语言:DataDefinitionLanguage) - Create、Alter、Drop 这些语句自动提交,无需用Commit提交。 DQL(数据查询语言:DataQueryLanguage) - Select 查询语句不存在是否提交问题。 DML(数据操纵语言:DataManipulationLangua…...
鸿蒙Harmony应用开发—ArkTS声明式开发(画布组件:OffscreenCanvasRenderingContext2D)
使用OffscreenCanvasRenderingContext2D在Canvas上进行离屏绘制,绘制对象可以是矩形、文本、图片等。离屏绘制是指将需要绘制的内容先绘制在缓存区,然后将其转换成图片,一次性绘制到canvas上,加快了绘制速度。 说明: 从…...
Redis如何实现主从复制?主从复制的作用是什么?Redis集群是如何工作的?它有哪些优点和缺点?
Redis如何实现主从复制?主从复制的作用是什么? Redis的主从复制是一种数据复制机制,其中一个Redis实例作为主节点(master),而其他Redis实例作为从节点(slave)。主从复制的实现过程如…...
【Numpy】(2)numpy对象和random模块
numpy.array对象 numpy.array 对象是 NumPy 库的核心,它提供了一种高效的方式来存储和操作同质数据类型的多维数组。每个 numpy.array 对象都有一系列的属性,这些属性提供了关于数组的重要信息。理解这些属性对于有效地使用 NumPy 和进行数据分析是非常…...
[QJS xmake] 非常简单地在Windows下编译QuickJS!
文章目录 前言准备C编译器xmake编译包 工程准备修改版本号第一遍编译第二遍编译效果 前言 quickjs是个很厉害的东西啊,我一直想编译一下的,奈何一直没成功。现在找了点时间成功编译了,写篇文章记录一下。当前版本:2024-1-13 应该…...
Ubuntu双系统/home分区扩容
一、Windows系统中利用磁盘管理分出空闲区域,如果多就多分一些 二、插入安装Ubuntu的U盘启动盘,lenovo电脑F12(其他电脑可选择其他类似方式)选择U盘启动项,然后选择ubuntu,出现安装界面,再选择t…...
0基础学习VR全景平台篇第145篇:图层控件功能
大家好,欢迎观看蛙色VR官方——后台使用系列课程!这期,我们将为大家介绍如何使用图层控件功能。 一.如何使用图层控件功能? 进入作品编辑页面,点击左边的控件后就可以在右边进行相应设置。 二.图层控件有哪些功能&am…...
一文看懂套利的那些事儿
我们经常在投资中都有提到套利策略,经常听到某某套利,或者借用什么套利工具,股票可以套利,基金期货期权也可以套利,套利到底是什么?套利到底是如何运用的? 今天我们一文解读套利市场!…...
【工具】Mermaid + 大模型画流程图
🌈个人主页: 鑫宝Code 🔥热门专栏: 闲话杂谈| 炫酷HTML | JavaScript基础 💫个人格言: "如无必要,勿增实体" 文章目录 引入使用画TCP三次握手了解历史人物 总结 引入 最近看面试文章关于TCP三次握手和…...
Spark 之 入门讲解详细版(1)
1、简介 1.1 Spark简介 Spark是加州大学伯克利分校AMP实验室(Algorithms, Machines, and People Lab)开发通用内存并行计算框架。Spark在2013年6月进入Apache成为孵化项目,8个月后成为Apache顶级项目,速度之快足见过人之处&…...
【人工智能】神经网络的优化器optimizer(二):Adagrad自适应学习率优化器
一.自适应梯度算法Adagrad概述 Adagrad(Adaptive Gradient Algorithm)是一种自适应学习率的优化算法,由Duchi等人在2011年提出。其核心思想是针对不同参数自动调整学习率,适合处理稀疏数据和不同参数梯度差异较大的场景。Adagrad通…...
Java入门学习详细版(一)
大家好,Java 学习是一个系统学习的过程,核心原则就是“理论 实践 坚持”,并且需循序渐进,不可过于着急,本篇文章推出的这份详细入门学习资料将带大家从零基础开始,逐步掌握 Java 的核心概念和编程技能。 …...
html-<abbr> 缩写或首字母缩略词
定义与作用 <abbr> 标签用于表示缩写或首字母缩略词,它可以帮助用户更好地理解缩写的含义,尤其是对于那些不熟悉该缩写的用户。 title 属性的内容提供了缩写的详细说明。当用户将鼠标悬停在缩写上时,会显示一个提示框。 示例&#x…...
快刀集(1): 一刀斩断视频片头广告
一刀流:用一个简单脚本,秒杀视频片头广告,还你清爽观影体验。 1. 引子 作为一个爱生活、爱学习、爱收藏高清资源的老码农,平时写代码之余看看电影、补补片,是再正常不过的事。 电影嘛,要沉浸,…...
在 Spring Boot 项目里,MYSQL中json类型字段使用
前言: 因为程序特殊需求导致,需要mysql数据库存储json类型数据,因此记录一下使用流程 1.java实体中新增字段 private List<User> users 2.增加mybatis-plus注解 TableField(typeHandler FastjsonTypeHandler.class) private Lis…...
6️⃣Go 语言中的哈希、加密与序列化:通往区块链世界的钥匙
Go 语言中的哈希、加密与序列化:通往区块链世界的钥匙 一、前言:离区块链还有多远? 区块链听起来可能遥不可及,似乎是只有密码学专家和资深工程师才能涉足的领域。但事实上,构建一个区块链的核心并不复杂,尤其当你已经掌握了一门系统编程语言,比如 Go。 要真正理解区…...
解析两阶段提交与三阶段提交的核心差异及MySQL实现方案
引言 在分布式系统的事务处理中,如何保障跨节点数据操作的一致性始终是核心挑战。经典的两阶段提交协议(2PC)通过准备阶段与提交阶段的协调机制,以同步决策模式确保事务原子性。其改进版本三阶段提交协议(3PC…...
React父子组件通信:Props怎么用?如何从父组件向子组件传递数据?
系列回顾: 在上一篇《React核心概念:State是什么?》中,我们学习了如何使用useState让一个组件拥有自己的内部数据(State),并通过一个计数器案例,实现了组件的自我更新。这很棒&#…...
大数据驱动企业决策智能化的路径与实践
📝个人主页🌹:慌ZHANG-CSDN博客 🌹🌹期待您的关注 🌹🌹 一、引言:数据驱动的企业竞争力重构 在这个瞬息万变的商业时代,“快者胜”的竞争逻辑愈发明显。企业如何在复杂环…...
