記通過(guò)ipv6遠(yuǎn)程喚醒電腦

參考資料:
nginx實(shí)現(xiàn)TCP轉(zhuǎn)發(fā) - 嗶哩嗶哩 (bilibili.com)
「系統(tǒng)」使用網(wǎng)絡(luò)喚醒計(jì)算機(jī) - 知乎 (zhihu.com)
關(guān)鍵詞:
IPv6 WOL 遠(yuǎn)程喚醒 NAS

前言

根據(jù)上一篇記使用阿里云DNS反向代理IPV6地址訪問(wèn)內(nèi)網(wǎng)攝像頭 - 簡(jiǎn)書 (jianshu.com)
我擁有一個(gè)綁定在nas上的ipv6的域名,最近想實(shí)現(xiàn)遠(yuǎn)程喚醒電腦
于是稍微研究了一下如何通過(guò)ipv6訪問(wèn)nas并轉(zhuǎn)發(fā)udp信息至電腦,以此來(lái)遠(yuǎn)程喚醒電腦

示意圖

流程

0. 先擁有一個(gè)ipv6域名

  1. 配置電腦端
  2. 配置nginx(docker)并轉(zhuǎn)發(fā)udp數(shù)據(jù)
  3. 測(cè)試

實(shí)施

1. 配置電腦端

1.1配置bios,開(kāi)啟wol遠(yuǎn)程喚醒

每家bios的怎么開(kāi)啟wol長(zhǎng)得都不一樣,具體自己百度


來(lái)自網(wǎng)絡(luò)

1.2 設(shè)備管理器中開(kāi)啟網(wǎng)卡的wol遠(yuǎn)程喚醒

如果你是主板網(wǎng)卡的話應(yīng)該和我的情況差不多
如果是usb網(wǎng)卡(有線/無(wú)線)請(qǐng)放棄,無(wú)法wol遠(yuǎn)程開(kāi)機(jī)


image.png

另外[高級(jí)]中的魔法包(magic packet),以防萬(wàn)一也可以enable打開(kāi)
他是用于一些編程語(yǔ)言來(lái)發(fā)送開(kāi)機(jī)數(shù)據(jù)包,以此來(lái)遠(yuǎn)程喚醒


image.png

1.3 固定電腦的ipv4地址

win10/win11可以從設(shè)置→網(wǎng)絡(luò)來(lái)編輯ip地址

image.png

或者從控制面板的網(wǎng)絡(luò)共享中心也行
image.png

我的網(wǎng)關(guān)是192.168.1.1
所以在同網(wǎng)段下將電腦固定地址為192.168.1.200
同理,子網(wǎng)掩碼需要設(shè)置為255.255.255.0
至此電腦端配置完成
此時(shí)在內(nèi)網(wǎng)環(huán)境下通過(guò)一些應(yīng)用
例如安卓的Wake On Lan_1.35.apk或微信小程序的遠(yuǎn)程喚醒WakeOnLan
已經(jīng)可以實(shí)現(xiàn)遠(yuǎn)程喚醒
微信小程序

2. 配置nginx

使用docker創(chuàng)建個(gè)nginx的容器
通過(guò)docker-compose來(lái)配置
(偷下懶,如果你不知道docker compose是什么自己查一下)

version: '3.1'
services:
  nginx:
    #總是在docker啟動(dòng)時(shí)啟動(dòng)該容器
    restart: always
    image: arm32v7/nginx
    container_name: nginx
    #需要使用nat模式的網(wǎng)絡(luò)
    network_mode: "host"
    volumes:
      #nginx.conf是用于指定nginx的配置文件,需要額外配置
      - ./conf/nginx.conf:/etc/nginx/nginx.conf

然后配置nginx.conf中的內(nèi)容

user root;
worker_processes  1;

events {
    use epoll;
    worker_connections  1024;
}

# 配置udp/tcp的代理.stream和http是平級(jí)的,不要寫進(jìn)http中
stream {
    server {
      # [::]:xxxx是監(jiān)聽(tīng)ipv6地址的寫法.監(jiān)聽(tīng)udp需要在端口后加上udp
      listen [::]:30009 udp;
      # 補(bǔ)充,如果是tcp則listen中的端口號(hào)后添加任何內(nèi)容
      # listen 30010 ;
     # 轉(zhuǎn)發(fā)至電腦,因此填寫電腦的ipv4地址.端口號(hào)9是因?yàn)閣ol默認(rèn)使用9
      proxy_pass 192.168.1.200:9;
    }
}

http {
  # 不需要使用,省略
    }
}

3. 測(cè)試是否可用

測(cè)試發(fā)送和接受使用的這2款軟件在這篇文章中都提供了下載方式

3.1發(fā)送信息

發(fā)送我使用安卓的Wake On Lan_1.35.apk
需要填寫電腦的MAC
主機(jī)名寫域名
端口號(hào)寫30009(將會(huì)轉(zhuǎn)發(fā)至PC的9端口)
設(shè)備IP填寫域名

參考

3.2 接受信息

接受使用WakeOnLAN_2.12.4.0.exe
點(diǎn)開(kāi)應(yīng)用中的封包監(jiān)控診斷工具,可以發(fā)現(xiàn)正確的收到了信息

接受到信息

后記

我覺(jué)得最麻煩的部分是不知道nginx的udp轉(zhuǎn)發(fā)怎么寫
找了幾篇例如Nginx反向代理TCP - 簡(jiǎn)書 (jianshu.com)都是錯(cuò)誤的寫法
如果你的路由器即可以使用花生殼之類的反向代理,又可以端口映射
那的確不需要像我一樣配置nginx

沒(méi)錢買花生殼

-End-

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容