題 WOL over Internet - 沒有路由器自定義


我知道在互聯網上已經有很多關於WOL的問題,但我認為我的情況仍然有點不同。 因為我使用的互聯網提供商不允許我在路由器上更改任何東西(這真的很煩人 - 我爸爸買了它......很久以前)我打電話給我的提供商,他們告訴我,打開端口是不可能的(對於WOL)我們正在使用的數據包。 因此要么我們必須切換到另一個數據包,要么找到另一個關於如何在不自定義路由器的情況下使用WOL的解決方案。

那裡有解決方案/提示嗎? ;)


2
2017-07-06 10:24


起源




答案:


Wake On LAN數據包被設計為在所謂的鏈路層路由,其中​​彼此本地的網絡設備進行通信。

除非您在收件人網絡上有一個設備可以將神奇的Wake On LAN數據包路由到必需的設備,或者係統本身直接連接到互聯網,否則無法通過互聯網執行Wake On LAN請求。使用電纜調製解調器或路由器。

通常,這將是路由網絡或路由器後面的另一個系統,配置為代表您將此數據包傳遞到您的內部網絡。

因為互聯網路由只涉及TCP / IP和UDP / IP(在線傳輸數據的兩種方式,TCP沒有驗證而UDP沒有),通常不會路由與接收網絡無關的較低級別數據,所以因為沒有收到用於計算機喚醒的魔術包。

如果您很好奇,有關OSI模型的更多信息,它定義了與網絡相關的七個層: http://en.wikipedia.org/wiki/OSI_model


3
2017-07-06 10:45



你真的 能夠 如果您已經知道睡眠機的MAC地址,則通過Internet發送WoL魔術包。支持WoL的NIC只需要查找六個字節的0xFF,然後查找自己的MAC地址十六次。您可以將UDP數據報的有效負載中的內容放入睡眠機的IP地址。使該子網的路由器具有該主機的靜態ARP映射是有幫助的,因此它始終知道將其發送到哪個MAC地址而無需先進行ARP查找。這並沒有解決@ Ripei的“沒有自定義路由器”的情況。 - Spiff
沒有不尊重,這與我發布的內容並不矛盾。我認為你的downvote是不公平的。 - Ruairi Fullam
您的帖子確實讓您覺得WoL魔術包不能從子網外路由,但這絕對不是真的,這是我試圖解釋的。需要在路由器上進行靜態ARP映射,這樣您的UDP或ICMP魔術數據包才能通過,這與需要與睡眠機器在同一子網上的魔術數據包發起者相差甚遠。 - Spiff
好的,我將清理我的帖子以進一步澄清,但在這種情況下,提問者沒有能力配置他的路由器。 - Ruairi Fullam
斯皮夫:我已經更新了答案。如果現在已經足夠清楚了,請告訴我。 - Ruairi Fullam


OSI模型的前四層是:

  1. 物理(要傳輸的電線或其他物理介質)
  2. 數據鏈路層(這是典型交換機工作的地方,WOL工作)。
  3. 網絡層(路由)
  4. 傳輸層(TCP / UDP連接將用於通信的協議)。

正如您所看到的,您希望發生的事情發生在第2層,然後才能在第3層路由,並在第4層進行通信。

http://en.wikipedia.org/wiki/OSI_model


0
2017-07-06 11:54



WoL是第2層概念,但WoL NIC會查看所有數據包數據,包括魔術模式的應用程序層數據。那麼你 能夠 如果您已經知道其MAC地址,則從子網外喚醒一台計算機,並且如果您可以防止路由器忘記該計算機的ARP映射。 - Spiff
@Spiff閱讀他的問題的第一行:“關於互聯網上的WOL”。你是否告訴我他能夠做到這一點,如果是的話,請發一個答案,然後我會投票給你。他的問題包括需要路由它。 - KCotreau
是的,您可以將WoL魔術模式放在UDP / IP數據報甚至是ICMP Echo(ping)數據報中,並且它可以正常路由,就像任何其他UDP / IP數據報或ping請求一樣,它會喚醒機器。唯一棘手的部分是確保發生第2層交付,這意味著您不能讓路由器忘記睡眠主機的ARP映射。鑑於他的“無法自定義路由器”限制,我沒有該部分的解決方案,所以我沒有發布答案。我只是試圖破壞“WoL魔術包不能被路由”的神話。 - Spiff