Android 시스템에 핑을 보내다가 신기한 사실을 알아냈다

나는 집에서 라즈베리 파이를 이용해 음악을 틀어 두는데 내 핸드폰을 향해 주기적으로 핑을 보내다가 일정 시간동안 응답이 없으면 내가 집에 없는 것으로 판단하고 음악을 멈추게 해 놓았다. 그런데 핸드폰을 가만히 두면 배터리를 아끼기 위해(충전기에 꽂혀 있는데도) 시스템이 잠든 상태에 빠지고 핑에 대한 응답을 하지 않아 음악이 멈추는 일이 자주 발생했다.

그래서 Android 시스템이 화면이 꺼진 후 얼마나 시간이 지나야 잠드는지 확인하고 싶어서 Wi-Fi monitor를 통해 와이파이 신호를 살펴보고 있었는데 놀라운 사실을 발견했다. 핑에 대한 응답은 안 하지만 내 핸드폰의 맥 어드레스가 발신지인 와이파이 패킷이 잡히고 있었다.
혹시나 내가 핑을 보내는 패킷의 목적지 주소까지 스캔해서 그렇게 잘못 뜨는 건가 싶어 핸드폰의 와이파이를 꺼 봤는데 그 상태에서는 패킷이 잡히지 않았다. 핑에 대한 응답은 없는데 패킷은 발생하는 이 상황을 좀 더 살펴봐야겠다.

결론적으로 음악을 꺼 주는 스크립트는 주기적으로 핑을 보내는 부분은 그대로 두고 Wi-Fi monitor로부터 해당 맥어드레스가 발신지인 패킷이 최근에 있었는지를 확인하도록 바꿨다. 뭔가 하찮은 일에 과한 노력을 쏟은 거 아닌가 싶지만 애초에 이 프로젝트가 그러라고 만든 프로젝트니 상관 없겠지.