『壹』 請問如何跨網段實現網路喚醒
下面的分析可以參考,跨網喚醒需要在路由上進行設置:
遠程喚醒:
1、除了在BIOS中開啟遠程喚醒功能外,有些主板要求開啟以下功能:
AC Back Function(設置掉電重啟後系統的狀態)
主板的來電喚醒功能 比如一插電源線主機就啟動看你想怎麼設置了 使用遠程喚醒將「AC BACK Function」設置為「Full-on」即可 關機,開機,先前的狀態(原來開時後來電就馬上開機,原來關機後來電時還保持關機狀態)
2、另外,有些網卡還要在其屬性中進行另外設置:
系統重新啟動後,單擊[開始]-][控制面板],然後選擇[系統]。
在「系統屬性」窗口中,選擇[硬體] 標簽,然後單擊[設備管理器]。
在「設備管理器」窗口中,單擊[網路適配器] 旁邊的加號+,然後雙擊[marvell yukon 88e8036/8053 pci-e fast ethernet controller]。
選擇[高級] 標簽,然後選擇[wake from shut down] 屬性。
在「值」列表中選擇[開],然後單擊[確定] 以關閉對話框。
跨網段遠程喚醒:
由
於跨網段要經過交換機或路由器,而它們是不允許廣播的,所有些網友回答用 ip help address 原理么類似跨網段的DHCP,或者IP
DIRECTED BROADCAST 和 IP FORWARD PROTOCOL 需要ENABLE等。可是使用後發現還是不行,後來見到一文章:
************************************************************
遠程開機,現在有兩種方法,本地同一廣播域內開機,遠程過路由開機。
先談談本地開機。
要打開mac地址是00-0E-7F-7B-BD-32這台主機,發起pc發出一個廣播。通過sniffer的ip包。可以看到目的MAC地址是FF-
FF-FF-FF-FF-FF,這是一個廣播,再看目的ip地址,192.168.200.255,是ip廣播,向下看,數據包是UDP,目的埠是
2304,源埠不必理會。
那麼說,發一個廣播,只要埠是2304就可以開機嗎?顯然不是,開機是有針對性的,不是發一個這樣的廣播,所有的機器都開機。關鍵就在那個數據裡面。
看一下這個126位元組的數據到底有什麼,最初的6個子位元組是全F,7到12位元組就是要開機的MAC地址,然後循環出現,直到填充到126個位元組為止。這才
是確定開那一台機器的關鍵。
總結一下,要開機就必須讓被開的機器,收到埠為2304的udp數據包,包的內容包含了被開機的MAC地址。但是沒有開機的機器沒有辦法設定ip地址,怎麼才能讓其收到,於是廣播就是最好的方式了。
那麼遠程過路由開機怎麼辦,又不能進行廣播。
通過抓包可以發現,目的mac地址變成了網關的,目的ip地址變成了那台機器設定的靜態ip,其它數據沒有變化。那麼這樣可以開機嗎?前面不是說過了,沒有開機的機器是無法設定ip的,它如何才能把這個數據送到該網卡呢。
這里就牽扯到一些路由器,交換機,hub的一些原理。hub是把所有的數據都發送到所有埠(物理),所以效率不高;交換機呢,是根據已經注冊的mac
地址和埠(物理)的對應關系轉發,那麼沒有開機的情況下,當然也沒有注冊mac地址了,但是交換機在對待沒有注冊的mac地址的時候,會把這個數據包發
往所有的埠(物理),這樣也沒問題了。那麼作為遠程的關鍵導入點的路由器,是工作在3層,它要查找ip地址和mac的對應關系,就用arp協議,我們知
道如果這台機器是down狀態下,是不會應答arp廣播的,那麼這樣說來無法開機了?結果卻出人意料,機器卻開機了,為什麼?
分
析一下,進入路由器,察看arp
table,竟然有ip地址和mac的對應,稍作思考就明白,原來這台測試用的電腦剛剛做完開機測試,剛關機,開機的時候,即使我們什麼都不
做,windows機器也會去找微軟的伺服器的,這已經不是秘密,那麼它必然找過網關,所以網關當然就知道了這個ip和mac的對應關系,根本就不用
arp查找,直接就發出數據,機器接收到也就能開機了。為了證實這個想法,把路由器內的對應關系刪除,果然不能開機了。
遠程開機不能只開剛剛關閉的機器吧,症結就在ip和mac的關繫上,那麼綁定對應關系,問題迎刃而解。
************************************************************
於是在交換機中加入IP與MAC地址的綁定命令:arp 192.168.1.2 0011.e4e5.2489 arpa
然後用AMD的開機軟體測試,在IP地址中輸入192.168.1.2,在MAC地址中輸入0011.e4e5.2489 ,OK成功。