TeamViewer 的工作原理是什么?

孤者浪人 提交于 2019-12-18 08:59:43

TeamViewer连接的主要原理分为三个部分,分别是:如何根据ID找到要连接的电脑;找到电脑之后如何内网间互联;如何能操作对方的电脑。

一、如何根据ID找到要连接的电脑

1.运行TeamViewer之后,电脑会先连接到TeamViewer的服务器,然后服务器对这台电脑分配一个唯一的ID。这个ID主要是以网卡的MAC地址为依据生成的,所以如果想要给电脑换ID,只要修改一下MAC地址就行了。


图1:TeamViewer ID

以上操作个人免费用户可以使用。小编提示:如果是商用TeamViewer的用户,建议还是购买TeamViewer正版,维护正版权益。

2.当一个TeamViewer连接到另一个的时候,会先连接到服务器,通过ID与电脑的对应关系找到这台要连接的电脑。

二、找到电脑后如何内网互联

如果连接的其中任一方是有公网IP的网络环境,双方的连接就启用P2P连接。如果双方都是内网的话,TeamViewer数据就会通过TeamViewer自己的服务器进行中转。


图2:电脑互联

这也是TeamViewer内网互通会在网络高峰期比较慢的原因。

三、如何能操作对方的电脑

原理和远程控制木马是一样的。这里的终端指被控制的电脑。

连接建立之后,终端的电脑图像压缩后发回本地,这样本地就能看到画面,本地进行键鼠操作的动作封装成数据包发送给终端解开后还原成动作进行远程的模拟操作。终端反馈的画面通过压缩后继续发回给控制端。


图3:TeamViewer控制电脑

就终端的图像传输来说,早年终端都是直接进行JPEG截图后传输,所以速度不太理想。之后各种高手延伸出很多很厉害的基于截图的方式的屏幕传输的算法,传输效率进一步提高,通常是先加载一个虚拟屏幕驱动,然后对屏幕做逐行扫描,然后计算变化的部分,之后只传输变化的部分。

本文为原创,转载请注明网址:http://www.yuanchengxiezuo.com/zhishi/gzyl-tv.html

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!