명령줄에서 핫스팟 연결된 장치의 이름을 어떻게 찾을 수 있나요?

명령줄에서 핫스팟 연결된 장치의 이름을 어떻게 찾을 수 있나요?

내 데비안 컴퓨터에서 핫스팟(hostapd)을 만들었고 일부 장치는 Wi-Fi를 사용하여 연결되었습니다. ex: xyz iphone, apple tv, john pc명령줄에서 연결된 장치의 이름을 얻는 방법은 무엇입니까 ?

노트:현재 MAC 및 IP 주소를 가져오기 위해 다음 명령을 사용하고 arp있지만장치 이름.

답변1

관련된 계층에 대해 간단히 알려드립니다. LAN과 WLAN은 MAC 주소(OSI 레벨 2)를 사용하여 통신합니다. ARP 프로토콜은 어떤 MAC 주소가 어떤 IP 주소(OSI 레벨 3)에 속하는지 알려줍니다. 머신의 이름은 DNS에 의해 처리됩니다. 일반적으로 홈 라우터는 어떤 이름이 어떤 MAC 주소에 속하는지 입력할 수 있는 DNS 서버를 실행하거나 DHCP에서 제공하는 이름을 자동으로 사용합니다.

그래서:

  1. 을 사용하여 연결된 스테이션의 MAC을 가져옵니다 . 여기서 핫스팟의 IF는 iw wlan0 station dump다음 과 같습니다. wlan0이는 다음을 포함하지 않는 arp 캐시보다 더 안정적입니다.모두연결된 기계에는 다음이 포함될 수 있습니다.다른다른 LAN에 있는 시스템 등도 arp-scanWLAN을 통해 ARP 응답을 얻으려고 시도하지만 핫스팟은 이미 이를 정확히 알고 있으므로 안정성이 떨어집니다.어느기계가 연결되었습니다.

  2. 각 MAC에 대해 해당 IP 주소를 찾습니다. 제가 생각할 수 있는 유일한 명령줄 도구는 이지만 arping아마도 더 좋은 방법이 있을 것입니다.

  3. 각 IP에 대해 홈 라우터에서 DNS 역조회를 수행합니다(예: ) host <ip-addr>.

네, 그렇게 어렵습니다. 잘하고 싶다면 지름길을 택할 수 없습니다. 이 작업을 수행하는 몇 가지 도구가 있을 수 있지만 저는 그런 도구를 알지 못하므로 스크립트를 작성해야 합니다.

관련 정보