VNC

VNC (Virtual Network Console)是虚拟网络控制台控制台的缩写。它 是一款优秀的远程控制工具软件,由著名的AT&T的欧洲研究实验室开发的。VNC 是在基于UNIX 和Linux 操作系统的免费的开源软件,远程控制能力强大,高效实用,其性能可以和 Windows和MAC中的任何远程控制软件媲美。 在 Linux 中,VNC 包括以下四个命令:vncserver,vncviewer,vncpasswd,vncconnect。大多数情况下用户只需要其中的两个命令:vncserver 和 vncviewer。

VNC组成部分

VNC基本上是由两部分组成:一部分是客户端的应用程序(vncviewer);另外一部分是服务器端的应用程序(vncserver)。VNC的基本运行原理和一些Windows下的远程控制软件很相像。VNC的服务器端应用程序在UNIX和Linux操作系统中适应性很强,图形用户界面十分友好,看上去和Windows下的软件界面也很类似。在任何安装了客户端的应用程序(vncviewer)的Linux平台的计算机都能十分方便地和安装了服务器端的应用程序(vncserver)的计算机相互连接。另外,服务器端 (vncserver)还内建了Java Web接口,这样用户通过服务器端对其他计算机的操作就能通过浏览器显示出来了,这样的操作过程和显示方式比较直观方便。

VNC特点

同样可能远程连入UNIX、Linux进行图形化操作的还有流行的Xmanager,VNC与之相比——两者工作原理不一样,前者(VNC)是远程连入操作系统,所有操作在UNIX、Linux主机服务端进行,即使操作过程中“本地电脑与操作主机网络断开”,也不影响操作的顺利进行;而后者(Xmanager)是通过端口将主机服务器的UI界面引导到本地电脑进行展现,如操作过程出现“本地电脑与操作主机网络断开”,操作将中断失败!如果操作中进行的工作任务非常重要,不能中断,如ORACLE RAC实施,结果是灾难性的!更重要的是,VNC是免费的、开源的。

VNC原理

1、屏幕控制原理

VNC是把被控制端的屏幕做成图像,经过压缩后传送到控制端,控制端的控制信息(如鼠标信息)传送到被控制端后进入消息队列。

客户端                                         X服务器                                            应用程序
vnc viewer<----------------------->Xvnc(vnc server)<------------------------>applications
                       (vnc protocal)                                             (X protocal)

其控制是基于tcp/ip的,其中vnc server扮演了双重角色,vnc protocal是基于RFB protocal的。

数据的进行再server上,viewer只是作为一个显示终端,类似于windows下的mstsc。

2、截屏方式

VNC使用的截屏方式比较独特,它有两种方式:第一种是使用钩子自动报告需要截屏的区域;第二种是轮询某一个区域(如前景窗口)。截屏后使用某种压缩算法压缩后发送。

3、传输方式

1)RFB协议传输:

在控之端不能直接改变显示大小,只能进行缩放,如缩放为原大小的几倍。原理是在远程机器上运行一个额外的X服务器,X服务器和客户机器都在远程跑。然后通过RFB协议用自己的客户端显示到本地。

2)X协议:

X 视窗系统提供了一个公开协议,由其客户程序可以查询和更新 X 服务器上的信息。X 视窗系统(X 协议)允许网络中不同计算机上的进程在其它网络显示器上显示内容。

VNC命令描述

vncserver

此服务程序必须在在主(或遥控)计算机上运行。你只能作为使用者(不需要根用户身份)使用此项服务。

vncviewer

本地应用程序,用于远程接入运行vncserver的计算机并显示其环境。你需要知道远程计算机的IP地址和vncserver设定的密码。

vncpasswd

vncserver的密码设置工具。vncserver服务程序没有设置密码将不能运行(好习惯)。如果你没有设置,运行vncserver时它会提示你输入一个密码。所以,一般我不会单独运行这个命令来设置密码。

vncconnect

告诉vncserver连接到远程一个运行vncviewer的计算机的IP和端口号。这样我就可以避免给其他人一个接入的密码。

Xvnc

一个vnc“主控”程序,一般来说不需要直接运行。(vncserver和vncviewer实际上是Xvnc的脚本)

查找所有可用的选项,运行:

Xvnc --help

出于安全的考虑,一般不建议直接以超级用户帐号运行vncserver程序。如果你需要超级用户的环境,请以一般用户登录后再使用su命令登录到超级用户帐号。

VNC运行的工作流程如下:

(1) VNC客户端通过浏览器或VNC Viewer连接至VNC Server。

(2) VNC Server传送一对话窗口至客户端,要求输入连接密码,以及存取的VNC Server显示装置。

(3) 在客户端输入联机密码后,VNC Server验证客户端是否具有存取权限。

(4) 若是客户端通过VNC Server的验证,客户端即要求VNC Server显示桌面环境。

(5) VNC Server通过X Protocol 要求X Server将画面显示控制权交由VNC Server负责。

(6) VNC Server将来由 X Server的桌面环境利用VNC通信协议送至客户端,并且允许客户端控制VNC Server的桌面环境及输入装置。

VNC

安装VNC

yum install vnc-server

添加用户

useradd vnc

passwd vnc

设置用户的vnc密码

su vnc

vncpasswd

exit

编辑vnc配置文件

vi /etc/sysconfig/vncservers

在最后加上:

VNCSERVERS="1:vnc"

VNCSERVERARGS[1]="-geometry 1024x768"

创建xstartup脚本

centos6用户忽视此步

/sbin/service vncserver start

/sbin/service vncserver stop

su vnc

vi ~/.vnc/xstartup

加入如下代码:

#!/bin/sh

# Add the following line to ensure you always have an xterm available.

( while true ; do xterm ; done ) &

# Uncomment the following two lines for normal desktop:

unset SESSION_MANAGER

exec /etc/X11/xinit/xinitrc

[ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup

[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources

xsetroot -solid grey

vncconfig -iconic &

xterm -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &

twm &

退出到root:

exit

启动vnc

/sbin/service vncserver start

测试vnc

7.1、使用java连接vncserver

在浏览器中输入http://192.168.0.10:5801登录桌面。

7.2、使用vnc viewer连接vncserver

打开vnc viewer,在server中输入192.168.0.10:1进行连接。

注意:192.168.0.10替换成自己的服务器IP。

VNC工作流程

(1) 在服务器端启动 VNC Server。

(2) VNC客户端通过浏览器或 VNC Viewer 连接至VNC Server。

(3) VNC Server传送一对话窗口至客户端,要求输入连接密码, 以及存取的VNC Server显示装置。

(4) 在客户端输入联机密码后,VNC Server验证客户端是否具有存取权限。

(5) 若是客户端通过 VNC Server 的验证,客户端即要求VNC Server显示桌面环境。

(6) VNC Server通过X Protocol 要求X Server将画面显示控制权交由VNC Server负责。

(7) VNC Server将来由 X Server 的桌面环境利用VNC通信协议送至客户端, 并且允许客户端控制VNC Server的桌面环境及输入装置。

局域网远程控制工具之VNC相关推荐

  1. 同局域网vnc连接linux,局域网远程控制工具之VNC

    VNC VNC (Virtual Network Console)是虚拟网络控制台控制台的缩写.它 是一款优秀的远程控制工具软件,由著名的AT&T的欧洲研究实验室开发的.VNC 是在基于UNI ...

  2. VNC 远程控制工具软件

    简介 VNC (Virtual Network Computing)是虚拟网络计算机的缩写.VNC是一款优秀的远程控制工具软件,由著名的AT&T的欧洲研究实验室开发的.VNC是在基于UNIX和 ...

  3. 局域网聊天工具-飞秋(FeiQ)的安装与使用

    由于工作的需要,公司内部同事之间的实时沟通交流都是必不可少的,如果公司内部没有自己的实时交流平台,那作为一款免费而小巧实用的局域网聊天或者传送文件的即时通讯软件 - 飞秋(FeiQ),将是不错的选择. ...

  4. VNC_一款优秀的远程控制工具软件

    在微软Windows操作系统中的远程控制工具软件非常多,其中大家最熟悉的莫过于赛门铁克公司的PCANYWHERE,还有CAControlIT等等.这些远程控制工具软件都可以通过网络来控制特定的计算机, ...

  5. 远程控制电脑软件VNC安装使用教程:Windows系统

    什么是VNC? VNC (Virtual Network Console),即虚拟网络控制台,它是一款基于 UNIX 和 Linux 操作系统的优秀远程控制工具软件,由著名的 AT&T 的欧洲 ...

  6. Window VNC远程控制LINUX:VNC详细配置介绍

    Window VNC远程控制LINUX:VNC详细配置介绍 //---------------------------------------vnc linux下的详细配置 1.VNC的启动/停止/重 ...

  7. 服务器如何向c winform推送信息,C局域网聊天工具消息推送实现思路与源码.doc

    C局域网聊天工具消息推送实现思路与源码 C#局域网聊天工具怎么实现? 网络通讯编程的基础便是协议,信息的发送常用的协议有面向连接的TCP协议,以及不面向连接的UDP协议TCP:Transmission ...

  8. 局域网聊天工具的设计与实现 java设计代写代做代码源代码

    题 目 局域网聊天工具的设计与实现 主要功能 1.注册.登录功能 2.个人信息管理功能(修改个人信息,备注等) 3.好友管理功能(查找.添加.删除好友.创建列表等) 4.聊天功能(多人聊天,查看聊天记 ...

  9. linux 远程控制详细安装 -- VNC (转)

    linux 远程控制详细安装 -- VNC (转) 网络遥控技术是指由一部计算机(主控端)去控制另一部计算机(被控端),而且当主控端在控制端时,就如同用户亲自坐在被控端前操作一样,可以执行被控端的应用 ...

  10. 远程控制工具_不要让您的工具控制您

    远程控制工具 When to Use Optical Alignment - You're the Designer. You Know What's Best. 何时使用光学对准-您是设计师. 你知 ...

最新文章

  1. ORM查询语言(OQL)简介--概念篇
  2. 基于三维卷积神经网络的RGB-D显著目标检测
  3. 图片加载利器Picasso 解析
  4. python自学视频-师傅带徒弟学Python:第一篇Python基础视频课程
  5. 用命令行方式获取打包签名文件的SHA1和MD5
  6. Argument list too long 文件数过多
  7. ActiveMQ学习总结(6)——ActiveMQ集成Spring和Log4j实现异步日志
  8. (翻译)正确实施DevOps-The Lay of the Land
  9. linux不解压情况下查看压缩包内文件的总行数、文件列表的数目
  10. vs2015+opencv+dilb+于仕琪人类识别算法对人脸特征点进行检测
  11. C/C++学习笔记: 字符串匹配Sunday算法
  12. Hyper-v安装CentOS
  13. Texstudio 与 SumatraPDF双向搜索设置
  14. 制造并批量生产现实版“储物戒指”
  15. linux怎么模糊查找文件,linux模糊查找一个文件的方法
  16. 在CMD上运行javac前应该这样做
  17. 在springboot中加入Hystrix
  18. Windows 10强制升级惹众怒:纽约总检察长正在积极推动诉讼
  19. 【通信原理】实验五 基于Matlab的2ASK和2FSK调制解调
  20. 如何在Windows 10 上安装SQL Server 2000数据库?

热门文章

  1. Java 的下载安装教程
  2. 企业管理软件平台架构内幕揭秘
  3. vi编辑器编辑超大文件。
  4. sqlmap教程(burpsuit辅助)
  5. Map 转 json格式 保留null值的解决办法
  6. 0基础Java自学之路
  7. linux odbc 配置文件,linux操作系统配置ODBC数据源
  8. python深度学习图像处理CSV文件分类标签图片到各个文件夹
  9. 定积分计算(谭浩强c语言第5版p272)
  10. 用python制作几款简单又好玩的小游戏,找回童年的记忆