Khi tôi sử dụng arping
để gửi yêu cầu ARP (Tôi biết một chiếc iPhone đang ngủ không trả lời ICMP ping) cho iPhone/Android đang ngủ (có nghĩa là họ đang bật nhưng màn hình là tối) kết nối trên cùng một wifi, iPhone trả lời cho tôi như thế này:Chiến lược của iPhone/Android phản hồi yêu cầu ARP
ARPING 10.109.201.139
Timeout
Timeout
Timeout
42 bytes from e0:ac:cb:b0:22:5b (10.109.201.139): index=0 time=20.201 msec
Timeout
Timeout
Timeout
Timeout
Timeout
Timeout
Timeout
Timeout
Timeout
Timeout
42 bytes from e0:ac:cb:b0:22:5b (10.109.201.139): index=1 time=65.401 msec
Timeout
nhưng thỉnh thoảng, iPhone trả lời liên tục. Đôi khi nó không trả lời arping cả. Câu trả lời Android như vậy:
ARPING 10.109.201.119
Timeout
42 bytes from c0:ee:fb:01:f4:fd (10.109.201.119): index=0 time=78.345 msec
42 bytes from c0:ee:fb:01:f4:fd (10.109.201.119): index=1 time=148.228 msec
42 bytes from c0:ee:fb:01:f4:fd (10.109.201.119): index=2 time=217.777 msec
42 bytes from c0:ee:fb:01:f4:fd (10.109.201.119): index=3 time=84.933 msec
Timeout
42 bytes from c0:ee:fb:01:f4:fd (10.109.201.119): index=4 time=174.140 msec
42 bytes from c0:ee:fb:01:f4:fd (10.109.201.119): index=5 time=78.559 msec
Có vẻ như Android là tích cực hơn. Vậy chiến lược của iPhone/Android đáp ứng yêu cầu ARP (This bài đăng có thể liên quan) là gì? Bộ định tuyến trang chủ có thể liên quan đến điều này?
Thực ra tôi đang viết một máy quét ARP với libpcap (Tôi có thể cung cấp mã golang nếu có ích), vậy làm thế nào tôi có thể phát hiện điện thoại càng nhiều càng tốt?
ps: Tôi biết câu hỏi này không thuộc chủ đề, nhưng nó thực sự làm phiền tôi nên đặt câu hỏi này, Super User không cho phép câu hỏi về điện thoại, Hỏi khác nhau không phù hợp với câu hỏi này không chỉ về phần cứng hoặc phần mềm của Apple. Tôi đặt nó trên networkengineering, nhưng nó được giữ như là off-topic.
Cảm ơn cho các liên kết. Có vẻ như nó thay đổi tùy theo điện thoại/bộ định tuyến. – jfly