本文的目录结构如下
前言:为什么要远程桌面控制
- 电脑无法携带或者不方便携带
- 电脑电池容量太小,无法携带到没有充电的地方,又不想买新的,而通过平板电脑远程访问。(我)
对于远程桌面访问,一开始测试过现有的工具:TeamViewer和向日葵,但是最后都放弃了。因为:
- TeamViewer的登录服务器在国内响应不好,平板电脑总(华为M5 pro)是登录不上。
- 向日葵感觉对linux的优化不够好,或者是宽带太小,买了入门版的还是很卡。
最后测试到了RealVNC,并且折腾成功。
安装RealVNC server
VNC其实算是一个比较古老的远程控制linux桌面的软件,后来因为某些原因分了家(具体我不太清楚)。目前市面上有RealVNC、tiger VNC、X11VNC等VNC软件。没有特殊标示的软件就是Real VNC,而且最开始VNC团队的一部分成员进入了Real VNC,感觉官方性最强,于是选择了这个软件。
安装VNC很简单,直接打开deepin应用商店,搜索VNC,点击安装就可以了,我们要在被控制端控制端安装VNC server,不安装VNC viewer。
激活VNC
vnc server并不是免费的软件,需要购买,还好有热心网友分享了激活码,大家可以去评论区找。
设置VNC
打开vnc server,需要sudo权限,输入密码后,点击右上角三个横杠,选择Options
会看到这个界面
- 把Security中的Authrntication改成VNC passwd而不是UNIX passwd(保护你的计算机,防止root密码泄露)
-
在User & Permissions中点击Add添加用户admin用户(如果只有你一个人用的话,就用admin最高权限),然后设置密码,可以选择一些软件生产的超级复杂的密码。给Standtard user也设置复杂密码(可以不用,防止泄露)。
- 在Connections中勾选Allow direct VNC connections over TCP and UPD,默认端口为5900,也可以自定义端口。
至此VNC server的基本设置就完成了
局域网连接VNC
防火墙配置
安装deepin防火墙配置,打开防火墙开5900端口或者直接关闭防火墙。
下图是打开状态
添加一个rule,这样同时允许了tcp协议和udp协议。
找到自己的局域网地址
打开vnc server GUI,如下图所示
在左边可以看到很多内网ip地址,最上面的192.168.1.10,如果你是wifi连接,在同一个路由器下的其他设备可以通过此ip地址+“:5900"实现远程访问。下面的其他ip地址是其他网络连接的内网地址,具体可以在deepin设置的网络详情中查看。
连接完成后效果图如下:
可以看到,而TCP的延迟仅仅为36ms(UDP协议没有延迟?)。内网Real VNC远程桌面的操作流畅到不行。
公网连接VNC
内网连接虽然很快,但用途不大,把远程桌面放到公网访问才更加有效,为此我们需要穿透内网。
远程桌面是什么样的网络需求呢?对宽带要求较高但是对总流量需求较的低。因此我们应该选择按照流量计费的内网传透方式。知名的花生壳并不能满足这样的需求,而国内的大多数量的云服务厂商提供的宽带服峰值也有限,最后我找到了sakura frp 这个提供内网穿透服务的网站。免费用户的上下行宽带最多可以达到10M,而且每天签到可以领流量,个人用来远程桌面足够了。
在内网穿透时,我们可以选择tcp或者udp协议。udp相对而言更快,但容易丢包,tcp会慢一点但是丢包率低,我觉得两种方式都可以选择,需要打字的时候选择tcp、对实时反映要求高的可以选择udp协议。
经测试,选择好合适的线路之后,tcp协议的延迟低于160ms,家里的网络是移动50M,实际宽带为10~20M,平板电脑用的是手机流量,运营商也是移动,实际宽带也为10~20M。选择最低画质,比向日葵要流畅的多。