• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      互聯(lián)網(wǎng)上遠(yuǎn)程終端喚醒技術(shù)與實(shí)現(xiàn)

      2016-03-12 11:57:35張繼山
      關(guān)鍵詞:廣域網(wǎng)網(wǎng)卡IP地址

      林 徐,張繼山

      (安徽三聯(lián)學(xué)院,安徽 合肥 230601)

      互聯(lián)網(wǎng)上遠(yuǎn)程終端喚醒技術(shù)與實(shí)現(xiàn)

      林 徐,張繼山

      (安徽三聯(lián)學(xué)院,安徽 合肥 230601)

      本文介紹了遠(yuǎn)程喚醒的原理,并在局域網(wǎng)遠(yuǎn)程喚醒的基礎(chǔ)上,將遠(yuǎn)程喚醒延伸至互聯(lián)網(wǎng)環(huán)境下。通過對路由器和PC機(jī)的設(shè)置,實(shí)現(xiàn)包括手機(jī)在內(nèi)的終端遠(yuǎn)程喚醒PC。

      遠(yuǎn)程喚醒;魔術(shù)包;MAC地址;動(dòng)態(tài)域名解析;路由

      隨著信息化應(yīng)用的深入,個(gè)人往往需要將個(gè)人文件在互聯(lián)網(wǎng)上他所使用的相互處于異地的終端上互傳。因此,需要在互聯(lián)網(wǎng)環(huán)境下遠(yuǎn)程開啟冷機(jī)狀態(tài)下的遠(yuǎn)程終端。

      1 局域網(wǎng)遠(yuǎn)程喚醒

      遠(yuǎn)程開機(jī)首先需要網(wǎng)卡支持遠(yuǎn)程喚醒(Wake On Lan WOL),遠(yuǎn)程喚醒的原理是在計(jì)算機(jī)處于關(guān)閉狀態(tài)時(shí),處于激活狀態(tài)的網(wǎng)卡接收來自網(wǎng)絡(luò)的符合特定的格式的數(shù)據(jù)包,如果收到數(shù)據(jù)包,就啟動(dòng)機(jī)器。遠(yuǎn)程喚醒的數(shù)據(jù)包是具有特定格式的UDP數(shù)據(jù)包,被稱為“魔術(shù)包”(Magic Packet)。Magic Packet 是AMD公司的網(wǎng)絡(luò)喚醒技術(shù)。數(shù)據(jù)報(bào)文的載荷部分共有102個(gè)字節(jié),每六個(gè)字節(jié)為一組,共分成了17個(gè)組。其中,第1組為固定的“全F”即0xFFFFFFFFFFFF,第2-17組中的每個(gè)組都是遠(yuǎn)程機(jī)器網(wǎng)卡的MAC地址。

      1.1 遠(yuǎn)程喚醒前的準(zhǔn)備

      遠(yuǎn)程喚醒的前提是,需要被喚醒的PC機(jī)已經(jīng)作了以下的設(shè)置:

      在CMOS中,設(shè)置“Wake On Lan”和“Wake On PCI Card”項(xiàng)的值為“Enable”;

      (2)在網(wǎng)卡的屬性設(shè)置中,保證“魔術(shù)封包喚醒”的值是“開啟”;

      (3)在電源管理里,勾選“只允許幻數(shù)據(jù)包喚醒計(jì)算機(jī)”。

      1.2 使用UDP協(xié)議發(fā)送數(shù)據(jù)包

      準(zhǔn)備完成后,就可以向終端發(fā)送“魔術(shù)包”了。發(fā)送“魔術(shù)包”的方案有多種,目前,使用較多的是利用現(xiàn)成的網(wǎng)絡(luò)喚醒軟件(例如,AMD公司的Magic Packet)來發(fā)送此網(wǎng)絡(luò)喚醒數(shù)據(jù)包。根據(jù)實(shí)際需要,也可以自己編程實(shí)現(xiàn)這一功能。本文采用C#實(shí)現(xiàn)這一功能,關(guān)鍵代碼如下:

      /// <param name="mac">MAC地址字符數(shù)組</param>public static void Wake (byte[] mac){UdpClient clnt= new UdpClient();clnt.Connect(IPAddress.Broadcast, 7);

      byte[] pkt = new byte[17 * 6];

      for (int i = 0; i < 6; i++) pkt[i] = 0xFF;

      for (int i = 1; i <= 16; i++)for (int j = 0; j < 6; j++)pkt[i * 6 + j] = mac[j];

      int rslt = clnt.Send(pkt, pkt.Length);}

      由以上代碼是在局域網(wǎng)同網(wǎng)段發(fā)送數(shù)據(jù)包,這個(gè)方法可以擴(kuò)展到廣域網(wǎng)。

      2 廣域網(wǎng)遠(yuǎn)程喚醒

      在廣域網(wǎng)中,需要被喚醒的終端往往是一臺(tái)PC,這臺(tái)PC通常被放置在一個(gè)子網(wǎng)內(nèi),因此,“魔術(shù)包”需要跨越層層路由,才能最終到達(dá)這臺(tái)PC。然而,目前大多數(shù)的PC的IP地址都是動(dòng)態(tài)的,這就意味著在廣域網(wǎng)中無法用IP地址定位PC,因此需要在喚醒終端之前做一些準(zhǔn)備。

      2.1 開啟DDNS客戶端

      DDNS(動(dòng)態(tài)域名解析服務(wù)),被稱為動(dòng)態(tài)域名解析服務(wù),是將動(dòng)態(tài)IP地址映射到一個(gè)固定的域名解析服務(wù)上。每次連接網(wǎng)絡(luò)的時(shí)候,客戶端程序就會(huì)把該主機(jī)的動(dòng)態(tài)IP地址傳送給位于服務(wù)商主機(jī)上的服務(wù)器程序,服務(wù)器程序負(fù)責(zé)提供DNS服務(wù)并實(shí)現(xiàn)動(dòng)態(tài)域名解析。

      利用DDNS的功能,可以在需要被喚醒的終端的網(wǎng)絡(luò)出口網(wǎng)關(guān)上,或者在其內(nèi)網(wǎng)的某個(gè)主機(jī)上開啟DDNS客戶端,這樣可以保證在廣域網(wǎng)中使用域名定位到需要喚醒的終端。

      2.2 設(shè)置路由器的端口映射

      端口映射就是將連通外網(wǎng)主機(jī)的一個(gè)網(wǎng)絡(luò)端口映射到內(nèi)網(wǎng)中一臺(tái)提供相應(yīng)服務(wù)的機(jī)器。通過在路由器上設(shè)置相應(yīng)的端口映射,可以保證發(fā)送的的“魔術(shù)包”經(jīng)過路由器后直達(dá)要被喚醒的終端。本文以思科路由器為例實(shí)現(xiàn)端口映射,關(guān)鍵配置命令如下:

      ip nat inside source static tcp 192.168.0.100 7 202.99.111.2 7 extendable

      如果使用的ADSL或動(dòng)態(tài)IP,可以將上述的公網(wǎng)IP用WAN口名代替,例如:

      ip nat inside source static tcp 192.168.0.100 7 interface Dialer100 7 extendable

      2.3 設(shè)置路由器ARP協(xié)議綁定

      ARP協(xié)議(Address Resolve Protocol),被稱為地址解析協(xié)議,工作在第二層,即數(shù)據(jù)鏈路層,用于將IP地址轉(zhuǎn)換為網(wǎng)絡(luò)接口的硬件地址,即MAC地址。設(shè)置路由器的ARP綁定,可以在路由器動(dòng)態(tài)分配IP地址的時(shí)候,將一個(gè)固定的IP地址分配給已經(jīng)對應(yīng)了的MAC地址。這樣保證了從廣域網(wǎng)接收的“魔術(shù)包”能夠明確所要轉(zhuǎn)發(fā)的目的地。以思科路由器為例,設(shè)置ARP綁定的關(guān)鍵配置命令如下:

      router(config)# arp 202.99.111.2 0014.2ac3.d4bb arpa

      2.4 廣域網(wǎng)發(fā)送UDP包

      由于發(fā)送端是處于廣域網(wǎng),所以在通過廣域網(wǎng),使用UDP協(xié)議發(fā)送“魔術(shù)包”之前,先用nslookup命令查詢到需要喚醒的終端所在網(wǎng)關(guān)此時(shí)的動(dòng)態(tài)域名所對應(yīng)的IP地址,然后可以利用現(xiàn)成的第三方軟件(例如,AMD公司的Magic Packet)來發(fā)送“魔術(shù)包”,也可以對上文代碼稍加修改,實(shí)現(xiàn)廣域網(wǎng)的遠(yuǎn)程喚醒,關(guān)鍵代碼如下:

      IPHostEntry host = Dns.GetHostByName(web); //web是動(dòng)態(tài)域名字符串

      UdpClient clnt = new UdpClient();

      clnt.Connect(host.AddressList[0];, 7);//此處改廣播發(fā)送為定向發(fā)送

      上述代碼完成的是先通過動(dòng)態(tài)域名獲取到IP地址,然后定向發(fā)送“魔術(shù)包”。

      3 手機(jī)遠(yuǎn)程喚醒

      通過手機(jī)遠(yuǎn)程喚醒終端,實(shí)際是借助手機(jī)向需要喚醒的終端發(fā)送“魔術(shù)包”。發(fā)送“魔術(shù)包”之前的準(zhǔn)備工作以及網(wǎng)絡(luò)設(shè)置與上文所述相同??梢越柚谌降腁PP完成遠(yuǎn)程喚醒的任務(wù),目前使用較多的有PC-Auto-Waker以及Wake-On-LAN Android版。也可以自己編程實(shí)現(xiàn)這一功能,關(guān)鍵代碼如下:

      byte[] mac = getMacBytes(Str_mac);

      byte[] Bytes = new byte[6 + 16 * mac.length];

      f

      or (int i = 0; i < 6; i++) Bytes[i] = (byte) 0xff;

      for (int i = 6; i < bytes.length; i += mac.length) System.arraycopy(mac, 0, bytes, i,mac.length);

      InetAddress add = InetAddress.getByName(ipStr);

      DatagramPacket pkt = new DatagramPacket(bytes, bytes.length, add, 7);

      DatagramSocket skt = new DatagramSocket();

      skt.send(pkt);

      skt.close();

      4 結(jié)論

      目前絕大多數(shù)的網(wǎng)卡都支持網(wǎng)絡(luò)喚醒功能,只要在網(wǎng)絡(luò)環(huán)境下,選擇合適的發(fā)送端向需要喚醒的終端發(fā)送“魔術(shù)包”,就可以激活網(wǎng)卡的這一功能,進(jìn)而達(dá)到遠(yuǎn)程開機(jī)的目的。

      [1]張立成. 基于IP單播的遠(yuǎn)程喚醒研究及實(shí)現(xiàn)[J].軟件導(dǎo)刊,2010(3):108-109.

      [2]彭建業(yè).基于NET的計(jì)算機(jī)遠(yuǎn)程喚醒技術(shù)及其實(shí)現(xiàn)[J].電腦編程技巧與維護(hù),2012(14):86-87.

      [3]王鵬沖.網(wǎng)絡(luò)喚醒原理及其實(shí)現(xiàn)[J].茂名學(xué)院學(xué)報(bào),2009,19(3):59-61.

      Research and implementation of Internet remote wake-up

      Lin Xu ZHANG Ji-shan

      (Anhui Institute of Computer Engineering,Hefei Anhui 230601)

      This paper introduces the principle of Remote Wake-Up, and based on remote wake on LAN, extends the remote wakeup to the Internet environment.

      Remote Wake-Up; Magic Packets; MAC address; DDNS;Route

      TP334.1

      A

      10.3969/j.issn.1672-7304.2016.05.025

      1672–7304(2016)05–0051–02

      2014年安徽省高等教育振興計(jì)劃教學(xué)改革與質(zhì)量提升計(jì)劃重大教學(xué)改革研究項(xiàng)目“基于校企合作的網(wǎng)絡(luò)工程專業(yè)人才培養(yǎng)模式探索與實(shí)踐”(項(xiàng)目編號:2014zdjy144)。

      (責(zé)任編輯:廖建勇)

      林徐(1972-),男,安徽合肥人,講師,工程師,研究方向:軟件工程。

      猜你喜歡
      廣域網(wǎng)網(wǎng)卡IP地址
      在DDS 中間件上實(shí)現(xiàn)雙冗余網(wǎng)卡切換的方法
      鐵路遠(yuǎn)動(dòng)系統(tǒng)幾種組網(wǎng)方式IP地址的申請和設(shè)置
      Server 2016網(wǎng)卡組合模式
      基于SNMP的IP地址管理系統(tǒng)開發(fā)與應(yīng)用
      黑龍江電力(2017年1期)2017-05-17 04:25:16
      信號設(shè)備中E1廣域網(wǎng)通道連通判斷和故障處理
      電氣化鐵道(2016年6期)2016-05-17 03:42:54
      挑戰(zhàn)Killer網(wǎng)卡Realtek網(wǎng)游專用Dragon網(wǎng)卡
      廣域網(wǎng)重復(fù)數(shù)據(jù)刪除技術(shù):數(shù)據(jù)中心的“必備”技術(shù)
      電腦與電信(2011年6期)2011-08-08 12:47:58
      別讓網(wǎng)絡(luò)成為企業(yè)前進(jìn)的“絆腳石”
      巧識劣質(zhì)水晶頭
      論在x.25廣域網(wǎng)中實(shí)現(xiàn)x.25和tcp/ip數(shù)據(jù)傳輸?shù)木W(wǎng)絡(luò)共享
      大眾科技(2005年10期)2005-04-29 00:44:03
      黄梅县| 饶河县| 溧水县| 上思县| 和林格尔县| 塘沽区| 柘城县| 陆良县| 罗定市| 贵港市| 潮安县| 电白县| 英德市| 登封市| 广河县| 南乐县| 中牟县| 靖江市| 赞皇县| 长宁县| 高陵县| 雷山县| 双峰县| 新密市| 平谷区| 高台县| 荣昌县| 石狮市| 唐海县| 大足县| 东丽区| 明水县| 米泉市| 确山县| 新竹市| 内黄县| 藁城市| 宁国市| 称多县| 彰武县| 黄冈市|