记通过ipv6远程唤醒电脑 您所在的位置:网站首页 主机网络唤醒 记通过ipv6远程唤醒电脑

记通过ipv6远程唤醒电脑

2023-11-12 05:11| 来源: 网络整理| 查看: 265

参考资料: nginx实现TCP转发 - 哔哩哔哩 (bilibili.com) 「系统」使用网络唤醒计算机 - 知乎 (zhihu.com) 关键词: IPv6 WOL 远程唤醒 NAS

前言

根据上一篇记使用阿里云DNS反向代理IPV6地址访问内网摄像头 - 简书 (jianshu.com) 我拥有一个绑定在nas上的ipv6的域名,最近想实现远程唤醒电脑 于是稍微研究了一下如何通过ipv6访问nas并转发udp信息至电脑,以此来远程唤醒电脑

示意图

流程

0. 先拥有一个ipv6域名

配置电脑端 配置nginx(docker)并转发udp数据 测试 实施 1. 配置电脑端 1.1配置bios,开启wol远程唤醒

每家bios的怎么开启wol长得都不一样,具体自己百度

来自网络 1.2 设备管理器中开启网卡的wol远程唤醒

如果你是主板网卡的话应该和我的情况差不多 如果是usb网卡(有线/无线)请放弃,无法wol远程开机

image.png

另外[高级]中的魔法包(magic packet),以防万一也可以enable打开 他是用于一些编程语言来发送开机数据包,以此来远程唤醒

image.png 1.3 固定电脑的ipv4地址

win10/win11可以从设置→网络来编辑ip地址

image.png 或者从控制面板的网络共享中心也行 image.png 我的网关是192.168.1.1 所以在同网段下将电脑固定地址为192.168.1.200 同理,子网掩码需要设置为255.255.255.0 至此电脑端配置完成 此时在内网环境下通过一些应用 例如安卓的Wake On Lan_1.35.apk或微信小程序的远程唤醒WakeOnLan 已经可以实现远程唤醒 微信小程序

2. 配置nginx

使用docker创建个nginx的容器 通过docker-compose来配置 (偷下懒,如果你不知道docker compose是什么自己查一下)

version: '3.1' services: nginx: #总是在docker启动时启动该容器 restart: always image: arm32v7/nginx container_name: nginx #需要使用nat模式的网络 network_mode: "host" volumes: #nginx.conf是用于指定nginx的配置文件,需要额外配置 - ./conf/nginx.conf:/etc/nginx/nginx.conf

然后配置nginx.conf中的内容

user root; worker_processes 1; events { use epoll; worker_connections 1024; } # 配置udp/tcp的代理.stream和http是平级的,不要写进http中 stream { server { # [::]:xxxx是监听ipv6地址的写法.监听udp需要在端口后加上udp listen [::]:30009 udp; # 补充,如果是tcp则listen中的端口号后添加任何内容 # listen 30010 ; # 转发至电脑,因此填写电脑的ipv4地址.端口号9是因为wol默认使用9 proxy_pass 192.168.1.200:9; } } http { # 不需要使用,省略 } } 3. 测试是否可用

测试发送和接受使用的这2款软件在这篇文章中都提供了下载方式

3.1发送信息

发送我使用安卓的Wake On Lan_1.35.apk 需要填写电脑的MAC 主机名写域名 端口号写30009(将会转发至PC的9端口) 设备IP填写域名

参考

3.2 接受信息

接受使用WakeOnLAN_2.12.4.0.exe 点开应用中的封包监控诊断工具,可以发现正确的收到了信息

接受到信息

后记

我觉得最麻烦的部分是不知道nginx的udp转发怎么写 找了几篇例如Nginx反向代理TCP - 简书 (jianshu.com)都是错误的写法 如果你的路由器即可以使用花生壳之类的反向代理,又可以端口映射 那的确不需要像我一样配置nginx

没钱买花生壳

-End-



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有