Сканирование сети на предмет определенного MAC-адреса - Android - PullRequest
3 голосов
/ 14 ноября 2010

Я разрабатываю приложение для управления многозонными усилителями звука.Для этого мне нужно создать сокет-соединение, пока все работает нормально.Я хотел бы, чтобы вместо того, чтобы пользователь вручную вводил IP-адрес, я хотел бы, чтобы мое приложение автоматически сканировало сеть, проверяло все MAC-адреса. Сопоставьте его с базой данных NIC, если оно соответствует корпусу моего усилителязатем сохраните IP-адрес.Это возможно, если да, то как?Или есть более простой способ сделать это?

1 Ответ

7 голосов
/ 15 ноября 2010

Я сделал это для своего приложения «Обнаружение сети» следующим образом: переберите диапазон ip, затем просто пропингуйте ip, чтобы получить MAC-адрес, который я получаю, анализируя / proc / net / arp. Возможно, есть лучший способ, но он работает для меня.

Вот диапазон сканирования: https://github.com/rorist/android-network-discovery/blob/master/src/info/lamatricexiste/network/DnsDiscovery.java начало и конец ip addr как долго.

А вот разбор / proc / net / arp: https://github.com/rorist/android-network-discovery/blob/master/src/info/lamatricexiste/network/Network/HardwareAddress.java#L60

...