Est-il possible d'obtenir l'adresse MAC des périphériques clients qui se trouvent dans la plage de points d'accès wifi?

Je souhaite obtenir une liste de tous les périphériques (qui ont leur wifi allumé) qui se situent dans la gamme de points Wi-Fi. Cependant, il peut ou non être connecté au point d'accès. Je reçois la liste des périphériques connectés en utilisant cette bibliothèque, mais je ne suis pas sûr de savoir s'il est possible d'obtenir les périphériques qui ne sont pas connectés au point d'accès Wi-Fi et qui se situent juste dans sa gamme. Ce serait vraiment agréable que quelqu'un puisse clarifier la possibilité. Merci.

  • Comment calculer une distance spécifique à l'intérieur d'une image?
  • MotionEvent GetY () et getX () renvoient des valeurs incorrectes
  • Comment remplir l'image dans ImageView par les coordonnées gauche et supérieure personnalisées | Android
  • Android Google Maps: Comment obtenir la zone qui s'affiche actuellement dans un périphérique d'écran?
  • Cachez les superpositions en arrondissant les rectangles de coordonnées - comment?
  • Polygon Touch detection Google Map API V2
  • 6 Solutions collect form web for “Est-il possible d'obtenir l'adresse MAC des périphériques clients qui se trouvent dans la plage de points d'accès wifi?”

    Non, ce n'est pas possible, la seule façon de voir les périphériques non connectés est d'aller sur le panneau d'administration de la boîte (et vous ne verrez que les périphériques précédemment connectés). Donc, vous ne pourrez pas les voir si vous n'êtes pas administrateur sur la boîte.

    De plus, je vous suggère d'examiner l' outil nmap pour découvrir tous les clients d'un réseau. Vous avez également Fing sur Android, ce qui est un bon outil.

    Il n'est pas difficile d'obtenir une liste de tous les périphériques connectés à la Wi-Fi, par exemple, effectuer un ping tous les hôtes possibles de votre réseau, puis lisez la table ARP cache pour obtenir les adresses Mac des périphériques. La partie difficile est que les périphériques non connectés avec leur Wi-Fi, c'est presque impossible sur les téléphones Android généraux (BTW, Linux avec adaptateur sans fil approprié est le plus approprié pour faire une telle chose), mais il y a quelques exceptions, la théorie est votre téléphone Continuera à envoyer les demandes de sonde ( balayage actif ) qui contiennent BSSID, SSID (spécifier le réseau connu, le cas échéant) et l'adresse MAC de votre téléphone pour obtenir la liste Wi-Fi, par exemple ci-dessous un paquet de demande de sonde que j'ai capturé:

     Frame 15: 290 bytes on wire (2320 bits), 290 bytes captured (2320 bits) Radiotap Header v0, Length 25 802.11 radio information IEEE 802.11 Beacon frame, Flags: ........C Type/Subtype: Beacon frame (0x0008) Frame Control Field: 0x8000 .000 0000 0000 0000 = Duration: 0 microseconds Receiver address: ff:ff:ff:ff:ff:ff Destination address: ff:ff:ff:ff:ff:ff Transmitter address: f4:6a:92:23:30:c0 Source address: f4:ff:92:23:30:c0 BSS Id: f4:fa:92:23:30:c0 .... .... .... 0000 = Fragment number: 0 1010 0011 1101 .... = Sequence number: 2621 Frame check sequence: 0x7037cad2 [correct] [FCS Status: Good] IEEE 802.11 wireless LAN management frame Fixed parameters (12 bytes) Tagged parameters (225 bytes) Tag: SSID parameter set: someSSID Tag: Supported Rates 1(B), 2(B), 5.5(B), 11(B), 6, 9, 12, 18, [Mbit/sec] Tag: DS Parameter set: Current Channel: 11 Tag: Traffic Indication Map (TIM): DTIM 0 of 0 bitmap Tag: ERP Information Tag: Extended Supported Rates 24, 36, 48, 54, [Mbit/sec] Tag: HT Capabilities (802.11n D1.10) Tag: HT Information (802.11n D1.10) Tag: RSN Information Tag: Vendor Specific: 00:50:f2: WPA Information Element Tag: Vendor Specific: 00:50:f2: WMM/WME: Parameter Element Tag: Vendor Specific: 00:0a:eb Tag: Vendor Specific: 00:50:f2: WPS 

    Pour capturer ces paquets, votre adaptateur Wi-Fi nécessite un mode de surveillance de support qui est rare sur Android, mais pas aucun, voir ce projet pour connaître les périphériques pris en charge et comment. Notez qu'en réponse à ces violations de la vie privée, certains systèmes d'exploitation (Andord 6+, iOS 8+ AFAIK) ont maintenant implémenté différentes variantes de la randomisation de l'adresse MAC.

    C'est possible. Vous pouvez vérifier https://github.com/rorist/android-network-discovery

    Oui, il est possible de répertorier les périphériques WiFi dans la gamme de WiFi AP. Je ne suis pas certain que la façon dont nous pouvons le faire dans Android, mais vous pouvez jeter un oeil à l'application Aircrack-ng . Vous pouvez répertorier tous les périphériques proches, car tous les périphériques sans fil recherchent leur AP déjà connecté et, à ce moment-là, ils fournissent leur adresse MAC (peut-être). Il vous sera utile de jeter un coup d'oeil au compte Github d'Aircrack-ng.

    WifiManager wifiManager = (WifiManager) getSystemService (Context.WIFI_SERVIE);
    WifiInfo wInfo = wifiManager.getConnectionInfo ();

    String macAddress = wInfo.getMacAddress ();

    Essayez ceci.

     WifiManager wm = (WifiManager) getSystemService(Context.WIFI_SERVICE); wm.startScan(); List<ScanResult> scanResult = wm.getScanResults(); for (ScanResult result : scanResult) { System.out.println("Access Point MacAddr:" + result.BSSID); } 
    coAndroid est un fan Android de Google, tout sur les téléphones Android, Android Wear, Android Dev et Android Games Apps.