Đánh thức Mac từ xa bằng Wake-on-LAN

Ảnh chụp hiển thị giao diện tiếng Anh. Tên nút trong phần hướng dẫn khớp với ngôn ngữ của ứng dụng.

Mac đang ngủ vẫn có thể bị đánh thức - miễn là nó không ngủ quá sâu.

Mac đang ngủ và không kết nối?

Vuốt sang trái trong danh sách ghép đôi của bạn và chọn "Đánh thức" (Đánh thức-on-LAN), sau đó kết nối. Điều kiện tiên quyết: "Bật thiết bị khi có truy cập mạng" được bật trong Cài đặt hệ thống → Pin/Năng lượng của Mac; nó đáng tin cậy nhất khi được cắm vào hoặc trên Ethernet có dây.

Nó thức nhưng vẫn không kết nối

  • Mac phải luôn bật nguồn khi TouchNow Host đang chạy — một ứng dụng thoát không chấp nhận kết nối.
  • Không đóng nắp trên MacBook; đóng nó lại, máy sẽ ngủ ngay lập tức.
  • Hãy cắm điện khi bạn ra ngoài. Về pin, macOS cũng tắt Wi-Fi và không có điều khiển từ xa nào có thể đánh thức nó.
  • Trong Cài đặt hệ thống, bật “Không cho phép tự động ngủ khi màn hình tắt”. Nó có giá trị dưới Pin → Tùy chọn trên MacBook và dưới Tiết kiệm năng lượng trên máy tính để bàn Mac. Màn hình vẫn tối; máy không ngủ được.

Nó tỉnh dậy nhưng hình ảnh không bao giờ xuất hiện

Khi Wake-on-LAN đánh thức Mac của bạn, nó sẽ truy cập DarkWake: máy đang chạy, mạng kết nối và Máy chủ chấp nhận kết nối của bạn — nhưng màn hình chưa lên nguồn. Không hiển thị có nghĩa là không có bộ đệm khung, do đó API chụp màn hình khởi động thành công và sau đó không cung cấp khung hình nào. Những gì bạn thấy là "đã kết nối nhưng bị kẹt khi nhận".

Đây không phải là mạng chậm và không phải là thiếu quyền. Tính năng "ngăn chặn chế độ ngủ của hệ thống nhàn rỗi" của macOS không giúp ích gì ở đây, bởi vì những gì theo sau DarkWake là Chế độ ngủ bảo trì, không phải chế độ ngủ không hoạt động.

TouchNow Host xử lý nó bằng cách khai báo hoạt động của người dùng (IOPMAssertionDeclareUserActivity) khi phát hiện màn hình vẫn ở chế độ ngủ. Được đo trên máy của chúng tôi, tính năng này sẽ kích hoạt DarkWake ở chế độ đánh thức hoàn toàn và chiếu sáng màn hình bên trong 38 mili giây. Quá trình chụp được giữ lại cho đến khi màn hình thực sự bật (tối đa 6 giây) để màn hình không bao giờ quay mà không có gì để ghi.

Để tự kiểm tra, hãy chạy pmset -g log trên Mac và tìm DarkWake dòng. Đánh thức thành công được ghi lại dưới dạng Hoạt động HID.

Bạn cũng có thể đánh thức nó từ bên ngoài Wi-Fi của mình — nhưng nó sẽ hết hạn

Gói Wake-on-LAN chỉ di chuyển trong một mạng cục bộ, vì vậy về lý thuyết, bạn không thể đánh thức Mac của mình trên đường. Trong thực tế (được đo trên macOS 26, Apple Silicon), Mac đang ngủ vẫn thức dậy theo một con đường khác.

Trong khi macOS ở chế độ ngủ, card mạng duy trì các kết nối TCP đã được thiết lập - bạn có thể thấy TCPKeepAlive=hoạt động trong pmset -g log. Kết nối tín hiệu của máy chủ vẫn ở trong phòng trong suốt thời gian ngủ, vì vậy khi iPhone của bạn tham gia, thông báo mà máy chủ đưa ra sẽ đủ để kích hoạt DarkWake (được đăng nhập dưới dạng wifibt thức dậy). Tính năng này hoạt động trên nhiều mạng và không cần thiết lập bộ định tuyến.

Nhưng nó hết hạn. Nhật ký hiển thị powerd request=TCPKATurnOff wakeAt= tiếp theo là khoảng thời gian nghỉ khoảng bốn ngày - ngủ lâu hơn thế và cơ chế này lặng lẽ tắt, đó là lý do tại sao bạn có thể có cảm giác như "đôi khi thức, đôi khi không". Nếu bạn đi vắng trong thời gian dài, việc giữ Mac ở chế độ bật hoặc bật "Không cho phép tự động ngủ khi màn hình tắt" sẽ đáng tin cậy hơn.

Một điều thường được nhầm lẫn: MacBook đang ngủ trên pin sẽ tắt hoàn toàn Wi-Fi, vì vậy Wake-on-LAN không thể hoạt động - đó là hạn chế của Apple. Đường dẫn duy trì TCP ở trên vẫn hoạt động ở mức 2% pin trong các thử nghiệm của chúng tôi. Chúng không phải là cơ chế giống nhau.