前言:首先感谢大家来到这里。这篇文章其实算是一个教程,文章中涉及到了TeamViewer,Mac OS X,TP-Link家用路由器,以及花生壳DDNS,对于新手而言内容可能稍微有些多,但我相信按照我的教程一步一步做下来,应该不会遇到太大的困难,如果有看不懂的地方,或者遇到了新的问题,请留言给我,我将尽我所能回答你。对于老手而言,这篇文章实在没有太多技术含量,只当是对知识和技巧的一个梳理和总结,如果我有写错了的地方,欢迎留言指出。另外,对于使用Windows的用户,以及使用其他品牌路由器的朋友,也完全可以参照这篇文章调试自己的设备,因为绝大部分概念都是相通的。

闲话到此为止,下面我们开始吧!跟着图片来……

以TP-Link TD-W89841N这款路由器来讲解,首先进入“系统管理”>“管理控制”,将远程管理开启,并填写一个端口,用于今后远程管理自家的网络(我之所以不填写默认的80端口,是出于安全考虑,换了个别的,多少能够安全一点点)。

进入”动态DNS“的设置界面,填入花生壳DDNS的用户名和密码登陆进去,下方就会出现你设置的动态域名。所谓的DDNS就是动态域名解析服务,如果你像我一样使用拨号上网,每次上网都会被运营商分配不同的公网IP地址,那么你就需要用DDNS帮你把某个域名动态地映射到你的公网IP上,这样你才可以通过域名访问你的局域网络以及局域网络中的设备,当然这也包括你要访问的那台计算机。花生壳的DDNS服务是完全免费的,挑选域名的时候完全可以挑选像我一样的免费域名,它的稳定性足够满足一般家庭用户的需要。

接下来,为了验证动态域名和路由器的远程管理功能,我们需要在互联网上找到另一台主机对动态域名进行访问。最简单的办法就是用自己的智能手机,使用3G上网(不要连接家里的WiFi)在浏览器中输入我们的动态域名以及前面设置好的端口号“8088”。

如果一切正常,会出现路由器的密码验证页面,这说明我们的动态域名和路由器远程管理都是可用的。

由于要配置端口转发(后续用于配置远程唤醒功能),所以我们需要让电脑每次开机都享有同一个IP地址,我们可以通过配置DHCP静态IP地址分配来实现。进入“DHCP服务器”>“静态地址分配”,点击“添加新的条目”。

首先我们需要获得到电脑网卡的MAC地址,通过DHCP客户端列表找到对应的MAC地址是最直接的方法,但你也可以在这台电脑上通过命令查看到你网卡的MAC地址。如图,在Mac OS中使用“ifconfig -a”命令,便可以获取到有线网卡的MAC地址"10:DD:B1:**:**:B0",Windows用户对应的命令是"ipconfig /all"。

将获取到的MAC地址填入对应的位置,再填入需要被分配的静态IP地址,其他默认即可,点击保存。

注意:我们不需要对电脑的操作系统做任何更改,保持你的网卡被设置为“通过DHCP获取动态IP地址”,而分配固定IP的工作就交给路由器去完成吧!

接下来,列表中会出现一个MAC地址为"10:DD:B1:**:**:B0",状态为“生效”的条目。这样下次网卡再请求IP地址的时候,路由器就会为它分配“192.168.1.20”这个地址了。

当我们为DHCP服务添加了一条静态地址分配规则后,某些品牌的路由器会自动为其添加静态ARP绑定。这样做有很多好处,一来可以防止网内其他用户通过手动配置IP的方法抢占我们预留的IP地址,二来避免了一些恶意软件和病毒的ARP欺骗攻击,使整个网络变得更加安全。所以我推荐没有自动添加ARP绑定的朋友们,手动添加对应的绑定规则。

方法是点击“IP与MAC绑定”>“静态ARP绑定设置”,在右边开启ARP绑定功能并保存,然后点击“添加新的条目”。

填入我们的MAC地址和IP地址,勾选“绑定”后保存。

这样,静态ARP绑定列表中就会多出我们刚刚添加的条目。

配置完路由器,回到我们的电脑上重新激活网卡,可以看到IP地址已经更新为“192.168.1.20”,说明我们对路由器的设置生效了。

至于如何重新激活网卡,Mac OS X的命令是“sudo ifconfig en0 down”和“sudo ifconfig en0 up”,而Windows的命令是“ipconfig /renew”,嫌麻烦的朋友可以直接重启计算机。

接下来我们添加端口转发规则,在TP-Link路由器中对应的功能是“虚拟服务器”,而某些品牌的路由器则有可能直接叫做“端口转发”,但不管怎样它们实现的功能是一模一样的。这里我们先假定使用6号端口转发UDP数据包(其实使用哪个端口都是可以的,只是别跟其他服务冲突就行了),随后我还会讲到如何在Teamviewer客户端里配置这个端口号。

点击“转发规则”>“虚拟服务器”,然后点击“添加新的条目”。

如图配置我们的转发规则,我们将6号端口收到的UDP数据包转发到“192.168.1.20”上。

保存后我们的列表中就有了这条转发规则,此时所有来自互联网的试图访问6号端口的UDP协议数据包都将被转发到我们的主机上。然而,经过适当的配置,我们可以让计算机在网卡收到UDP数据包时自行启动,这就是远程唤醒的基本原理!

所谓“适当的配置”,在苹果机上就是将“系统偏好设置”中的“节能器”打开,并勾选上“唤醒以供网络访问”。

而对于PC机来说,需要在BIOS中激活“LAN Wakeup”的功能,而每次Wakeup就像是你按了主机电源按钮一样,主板上电、自检、引导、进入操作系统……

需要说明的是,PC机远程启动的条件是主机电源连通,网卡已接驳网线,BIOS中打开“LAN Wakeup”功能,而这个时候操作系统是可以处于完全关闭状态的。

然而,苹果机并不支持远程启动,它只支持远程唤醒,也就是说它只能从睡眠状态被唤醒,而无法从关机状态被启动。

想要理解其中的原因也很简单,这是因为苹果公司在当初设计Mac电脑的时候,做了很多努力让Mac电脑可以不用关机,它的设计初衷就是让用户不管在什么时候,只要轻敲一下键盘就能在几秒钟之内继续电脑上的工作。

如果你也购买了苹果电脑,建议你改变在Windows上养成的使用习惯。因为Mac OS长时间运行并不会导致系统性能明显下降,而且苹果机本身耗电量极小,睡眠状态消耗的电量更是微乎其微,所以日常使用完全没有必要关机,这点跟iPad比较类似。

再来说说如何配置TeamViewer吧,我们在软件的“首选项”中,点击“常规”选项卡上的“LAN唤醒”功能的“配置”按钮。

在弹出的对话框中填上我们的动态域名以及端口号“6”,然后保存设置。

到此,所有的配置都完成了,我们要做的就是在互联网上验证一下我们的成果。

首先,Mac OS点“左上角的苹果标志”>“休眠”,Windows点“左下角的彩旗标志”>“关机”。

进入手机的TeamViewer APP,注意我们还是要使用3G连接网络,我们会看到这台主机已经是离线状态了,而右边多出来一个“电源开关”样子的按钮。

我们尝试点击这个按钮,不一会儿就会发现自己的电脑被远程唤醒了,随后APP弹出主机上线的提示,询问我们是否要进行连接。

选择“连接”后,我们需要输入TeamViewer的无人值守远程控制密码。

验证通过后我们就可以直接控制远程主机了,当然如果你的Mac OS或者Windows还拥有自己的密码,也是需要经过验证的,就像这样:

登陆操作系统后,我们就可以操作桌面了。如果你使用的是iPad或者是公司的电脑,操作起来就会比较从容,但如果你使用的是手机,那么你可以将屏幕缩放到合适的大小。

到此,本文的内容就已经结束了,希望能够帮助到大家!

还是那句话,如果我写得不够清楚,或者还有什么疏漏,欢迎给我留言,我们共同探讨!

 

参考文献:

1. 《TeamViewer用户手册》 http://www.teamviewer.com/zhcn/help/firststeps.aspx

2. 《TeamViewer LAN唤醒功能手册》 http://www.teamviewer.com/zhcn/res/pdf/TeamViewer-Manual-Wake-on-LAN-zhcn.pdf

版权声明:本文为博主原创文章,未经博主允许不得转载。

TeamViewer远程唤醒主机实战教程(多图)的更多相关文章

  1. Github 快速上手实战教程

    一.实验介绍 1.1 实验内容 本次课程讲的是在实验楼的在线环境中,如何使用 Github 去管理在在线环境中使用的代码.配置.资源等实验相关文件,怎样去添加.同步和下拉在远程仓库中的实验文件,以此来 ...

  2. kafka实战教程(python操作kafka),kafka配置文件详解

    kafka实战教程(python操作kafka),kafka配置文件详解 应用往Kafka写数据的原因有很多:用户行为分析.日志存储.异步通信等.多样化的使用场景带来了多样化的需求:消息是否能丢失?是 ...

  3. RibbitMQ 实战教程

    # RabbitMQ 实战教程 ## 1.MQ引言 ### 1.1 什么是MQ `MQ`(Message Quene) : 翻译为 `消息队列`,通过典型的 `生产者`和`消费者`模型,生产者不断向消 ...

  4. NDK-JNI实战教程(二) JNI官方中文资料

    声明 设计概述 JNI接口函数和指针 加载和链接本地方法 解析本地方法名 本地方法的参数 引用Java对象 全局和局部引用 实现局部引用 访问Java对象 访问基本类型数组 访问域和方法 报告编程错误 ...

  5. ActiveReports 9实战教程(3): 图文并茂的报表形式

    基于上面2节内容,我们搭建了AR9的开发环境,配置好了数据源.在本节,我们以官方提供的3个中文图文并茂的报表来展示AR9的功能,并通过实战的方式一一分享. 以往做报表相关的工作时,最害怕的是报表的UI ...

  6. 《软件性能测试与LoadRunner实战教程》新书上市

    作者前三本书<软件性能测试与LoadRunner实战>.<精通软件性能测试与LoadRunner实战>和<精通软件性能测试与LoadRunner最佳实战>面市后,受 ...

  7. BI之SSAS完整实战教程7 -- 设计维度、细化维度中 :浏览维度,细化维度

    上篇文章我们已经将Dim Geography维度设计好. 若要查看维度的成员, AS需要接收该维度的详细信息(包括已创建的特性.成员属性以及多级层次结构), 通过XMLA与AS的实例进行通信. 今天我 ...

  8. BI之SSAS完整实战教程5 -- 详解多维数据集结构

    之前简单介绍过多维数据集(Cube)的结构. 原来计划将Cube结构这部分内容打散,在实验中穿插讲解, 考虑到结构之间不同的部分都有联系,如果打散了将反而不好理解,还是直接一次性全部讲完. 本篇我们将 ...

  9. BI之SSAS完整实战教程2 -- 开发环境介绍及多维数据集数据源准备

    上一篇我们已经完成所有的准备工作,现在我们就开始动手,通过接下来的三篇文章创建第一个多维数据集. 传统的维度和多维数据集设计方法主要是基于现有的单源数据集. 在现实世界中,当开发商业智能应用程序时,很 ...

随机推荐

  1. python中模块,包,库

    模块:就是.py文件,里面定义了一些函数和变量,需要的时候就可以导入这些模块. 包:在模块之上的概念,为了方便管理而将文件进行打包.包目录下第一个文件便是 __init__.py,然后是一些模块文件和 ...

  2. shell基础篇(十)shell脚本的包含

    前记 写到这里:shell中基础差不多已经讲完了.希望你已经对shell有了一个基本了解.你可能跃跃欲试,要写一些程序练习一下.这会对你很有好处.建议大家去chinaunix去学习:我是li0924. ...

  3. 【markdown】使用 js 实现自己得markdown 网页编辑器

    首先从这里下载其浏览器版: https://github.com/evilstreak/markdown-js/releases 解压缩后在其js文件同目录下新建一个网页进行测试,代码如下: < ...

  4. Tomcat7.0无法启动解决方法[failed to start]

    很奇怪的一个问题,Tomcat一直好好的,运行Servlet之后就报这个错: 为什么呢?在网上查都查不到解决方法,后来仔细检查了下Servlet,发现web.xml有个低级错误: 配置的Servlet ...

  5. linux如何设置用户权限

    linux与用户权限设置: 1.添加用户 首先用adduser命令添加一个普通用户,命令如下: #adduser tommy //添加一个名为tommy的用户 #passwd tommy //修改密码 ...

  6. FlashDevelop导入swc库

    项目不是AS项目,而是基于FlashIDE. 一 将SWC放入项目lib文件夹下 二 选择lib文件夹,右键,选择添加到库 三  FlashIDE中选择 文件-ActionScript设置 四 选择浏 ...

  7. 监控linux流量python版

    python版监控linux流量 直接上代码,使用OptionParser来传入参数 #coding:utf-8 #------------- #Author:Hu #Data:20150520 #- ...

  8. 点击TextView 弹出复制选项

    extends:http://www.eoeandroid.com/thread-226805-1-1.html package com.dotfive.chuanbang.view; import ...

  9. kmp的next数组的运用(求字符串的最小循环节)

    hdu3746 Cyclic Nacklace Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/ ...

  10. spriing boot 启动报错:Cannot determine embedded database driver class for database type NONE

    最近在学习使用spring boot.使用maven创建好工程,只引用需要用到的spring boot相关的jar包,除此之外没有任何的配置. 写了一个最简单的例子,如下所示: package com ...