맥이 잠자기(Sleep)를 유지하지 못하는 현상

언제부터인가 맥이 잠자기를 유지하지 못하는 듯한 느낌이 있어서(HDD가 멈췄다가 돌아가는 소리가 자주 들리는 듯 했다) 분석을 좀 해 보니 가관이었다. 맥이 잠자기를 유지하지 못하고 1분정도 주기로 계속 깨어나고 있었다.

아래 로그를 보면 Network 인터럽트로 인해서 맥이 깨어났다는 것을 확인할 수 있다. 로깅 시간을 보면 거의 1분 마다 한번씩 로그가 나온다. 로그에 보이는 초단위의 시간이 잠자기를 유지한 시간이다. -_-

imac:~ cky$ pmset -g log | grep "Entering Sleep state"
2017-03-24 07:19:53 +0900 Sleep               	Entering Sleep state due to 'Maintenance Sleep': Using AC 9 secs    
2017-03-24 07:20:47 +0900 Sleep               	Entering Sleep state due to 'Maintenance Sleep': Using AC 12 secs   
2017-03-24 07:21:45 +0900 Sleep               	Entering Sleep state due to 'Maintenance Sleep': Using AC 12 secs   
2017-03-24 07:22:43 +0900 Sleep               	Entering Sleep state due to 'Maintenance Sleep': Using AC 11 secs   
2017-03-24 07:23:40 +0900 Sleep               	Entering Sleep state due to 'Maintenance Sleep': Using AC 13 secs   
2017-03-24 07:24:39 +0900 Sleep               	Entering Sleep state due to 'Maintenance Sleep': Using AC 13 secs   
2017-03-24 07:25:38 +0900 Sleep               	Entering Sleep state due to 'Maintenance Sleep': Using AC 12 secs   
2017-03-24 07:26:36 +0900 Sleep               	Entering Sleep state due to 'Maintenance Sleep': Using AC 12 secs   
2017-03-24 07:27:34 +0900 Sleep               	Entering Sleep state due to 'Maintenance Sleep': Using AC 11 secs   
2017-03-24 07:28:31 +0900 Sleep               	Entering Sleep state due to 'Maintenance Sleep': Using AC 15 secs   
2017-03-24 07:29:32 +0900 Sleep               	Entering Sleep state due to 'Maintenance Sleep': Using AC 11 secs   
2017-03-24 07:30:29 +0900 Sleep               	Entering Sleep state due to 'Maintenance Sleep': Using AC 12 secs   
2017-03-24 07:31:26 +0900 Sleep               	Entering Sleep state due to 'Maintenance Sleep': Using AC 12 secs   
2017-03-24 07:32:24 +0900 Sleep               	Entering Sleep state due to 'Maintenance Sleep': Using AC 17 secs   
2017-03-24 07:33:27 +0900 Sleep               	Entering Sleep state due to 'Maintenance Sleep': Using AC 13 secs   
2017-03-24 07:34:26 +0900 Sleep               	Entering Sleep state due to 'Maintenance Sleep': Using AC 13 secs   
2017-03-24 07:35:25 +0900 Sleep               	Entering Sleep state due to 'Maintenance Sleep': Using AC 15 secs   
2017-03-24 07:36:25 +0900 Sleep               	Entering Sleep state due to 'Maintenance Sleep': Using AC 8 secs    
2017-03-24 07:37:19 +0900 Sleep               	Entering Sleep state due to 'Maintenance Sleep': Using AC 7 secs

먼저 시스템 환경 설정에서 Network 요청에 의한 깨우기를 꺼봤다. 그랬더니 역시나 잠자기가 유지가 된다. 뭔가 Network 패킷에 의해서 깨어나는 것은 확실해 보였다.

시스템 환경 설정 > 에너지 절약

다음으로 tcpdump를 실행해보았다. 그랬더니 이상한 IP로부터 ssh 연결이 끊임없이 들어오고있는 것이 아닌가. ssh 연결을 위한 22번 포트는 내가 외부에서 사용할 목적으로 열어둔 포트다. 그런데 이 포트로 요청이 계속 들어오니 맥은 깨어날 수밖에 없는 것이었다.

IP를 차단할 수 있는지를 타임캡슐에서 살펴보았는데 firewall 기능이 거의 없다시피해서 따로 설정하는 메뉴가 없는 것 같았다. iptime같은 공유기를 쓴다면 IP를 걸러낼 수 있지 않을까 싶다.

도통 패킷이 멈출 기미가 안 보여서 포트를 변경하기로 했다. 외부 포트를 22번이 아닌 다른 것을 쓰고 그 포트를 내부 22번으로 연결시켰다.

Airport 유틸리티 > IPv4 포트 매핑

ssh 연결 요청이 맥에 도착하지 않으니 맥이 잠자기를 잘 유지한다. 로그를 보니 두시간 마다 한번씩 깨는데, 이는 요청시 깨우기 및 Bonjour 잠자기 프록시에 의한 정상적인 동작이다. (https://support.apple.com/ko-kr/HT201960)

아래는 ssh 포트 변경 후 어젯밤 상황을 잡은 로그다. 잠자기가 길게 유지되는 것을 명확히 확인할 수 있다. Idle sleep(아무것도 하지 않아 잠자기에 들어가는 것)으로 잠자기에 진입 후 아침까지 계속 잠자기가 유지되었다. 🙂

imac:~ cky$ pmset -g log | grep "Entering Sleep state"
2017-03-24 17:41:57 +0900 Sleep               	Entering Sleep state due to 'Software Sleep pid=104': Using AC 566 secs  
2017-03-24 18:10:31 +0900 Sleep               	Entering Sleep state due to 'Idle Sleep': Using AC 5446 secs 
2017-03-24 19:42:02 +0900 Sleep               	Entering Sleep state due to 'Maintenance Sleep': Using AC 5315 secs 
2017-03-24 21:11:23 +0900 Sleep               	Entering Sleep state due to 'Maintenance Sleep': Using AC 4558 secs 
2017-03-24 23:49:20 +0900 Sleep               	Entering Sleep state due to 'Idle Sleep': Using AC 4793 secs 
2017-03-25 01:09:59 +0900 Sleep               	Entering Sleep state due to 'Maintenance Sleep': Using AC 6443 secs 
2017-03-25 02:58:08 +0900 Sleep               	Entering Sleep state due to 'Maintenance Sleep': Using AC 6443 secs 
2017-03-25 04:46:17 +0900 Sleep               	Entering Sleep state due to 'Maintenance Sleep': Using AC 6443 secs 
2017-03-25 06:34:26 +0900 Sleep               	Entering Sleep state due to 'Maintenance Sleep': Using AC 6443 secs 
2017-03-25 08:22:35 +0900 Sleep               	Entering Sleep state due to 'Maintenance Sleep': Using AC 5109 secs

댓글 남기기