혹시 DSM에서 PC로 매직패킷 쏴주는 방법이 있을까요?
자체해결했습니다!
시놀로지에 파이썬이 내장되어있으니
매직패킷 만드는 파이썬 코드 만들고
작업 스케쥴러로 필요할때마다 실행해주면 되네요!!
작업스케쥴러 사용자 정의 스크립트 :
python /volume1/homes/계정명/wol.py
파이썬 코드 (/volume1/homes/계정명/wol.py)
import socket, struct
def WOL(macAddr):
sep = macAddr[2]
macAddr = macAddr.replace(sep,'')
data = b'FFFFFFFFFFFF' + (macAddr * 16).encode()
send_data = b''
for i in range(0, len(data), 2):
send_data += struct.pack('B', int(data[i: i + 2], 16))
sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
sock.setsockopt(socket.SOL_SOCKET, socket.SO_BROADCAST, 1)
sock.sendto(send_data, ('브로드캐스트 주소',2304))
WOL('PC MAC 주소')
- 참고사이트 (여기가면 코드별 설명도 해줌)
---------------------------------------------------------------------------------
공유기 로그인페이지를 외부에 노출시키고 싶지 않아서
가급적이면 시놀로지 NAS에서 해결보려고 하는데 잘 안되네요...;;
시놀로지 NAS -> PC 로 매직패킷을 보낼 수 있는 좋은 방법이 있다면
소개 좀 부탁드릴게요ㅠㅠ
"synonet --wake MAC주소 eth0"
이걸 root 권한 스크립트 만들어서 실행해봐도 PC로 안쏴주더라고요....ㅠㅠ
7.2버전은 안되는건지...ㅠ
![profile image](/files/member_extra_info/profile_image/201/201.jpg?t=1706018011)
![profile image](/files/member_extra_info/profile_image/165/158/158165.png?t=1648821450)
synonet --wake MAC주소 eth0 이건 잘 안먹는것 같더군요.
공유주신것 한번 활용해 보겠습니다.
감사합니다.^^
![profile image](/files/member_extra_info/profile_image/165/158/158165.png?t=1648821450)
아주 잘 동작합니다. ㅎㅎ
브로드캐스트 주소 = 게이트웨이IP (1번대신, 255) ex) 192.168.35.255 로 잘 주시면 되구요.
시놀로지에는 python3 가 설치되어 있을수도 있습니다. 둘중 잘 확인해보시고 아래처럼 스케쥴러에 넣으시면 됩니다.
python3 /volume1/homes/계정명/wol.py
또는
python /volume1/homes/계정명/wol.py
근데, 둘다 먹네요. 아무거나 쓰셔도 무방합니다.
![profile image](/files/member_extra_info/profile_image/663/369/369663.png?t=1659599731)
Homeassistant요
컨피그yaml에 스위치로 추가해주면 됩니다.
홈어시스턴트 wol로 검색하면 많이나와용
홈킷연동도 기본기능이고요
![profile image](/files/member_extra_info/profile_image/663/369/369663.png?t=1659599731)
cmt alert