Is there a way to get the MAC Address and signal strength of nearby wireless devices from something like a phone or a laptop, or by using an access-point?
Well Everybody answered the Question for Windows Platform only. So, I thought It would be useful to answer for Linux Platform too. On Linux you can do the following:
Getting MAC Address of Devices connected in your network
You can Use a number of tools for thus task such as Netdiscover, arp-scan, nmap and even WireShark. These tools are basically used in Penetration Testing of Wireless Networks and can be used to get to know who is in the Network by knowing their IP Address and MAC Address.
ARP (Address Resolution Protocol) is used to map MAC addresses to IP addresses on an internal network. The router and switches send out broadcast ARP requests to all the MAC addresses on the network asking them to respond with their IP addresses. Each system will then respond with their IP address and the switch or other device will then create a small database that maps the MAC to the IP address, so that it it knows "who is who". Both the tools Uses ARP Packets to get this information.
Netdiscover is used for the active or passive scanning of those wireless networks without the DHCP server. It can also be used for scanning hub/switched networks.
netdiscover -i eth0 -r 192.168.2.0/24
-idenotes the interface (Here eth0) &
-rdenotes the `IP Range to be tested.
arp-scan (also called ARP Sweep or MAC Scanner) is a very fast ARP packet scanner that shows every active IPv4 device in the network. Since ARP is non-routable, it only works in local LAN (local subnet or network segment). It shows all active devices even if they have firewalls.
arp-scan --interface=wlan0 [ --localnet ] 192.168.0.1/24
Getting MAC Address of Devices NOT connected in your network
Well this part is an exact answer to your Question about both MAC Address and Signal of nearby devices. For this we can use Airmon-ng tool to setup a Wireless Monitor and then use Airodump-ng to dump the wireless signals from Monitor to Sreen. Both tools are part of Aircrack-ng, again a set of tools used for Penetration Testing of Wireless Networks. This is a prefect tool for what you want.
Using Aircrack-ng Suite is not quite easy but It's worth the time and effort. Writing all commands in the answer will make it quite boring, So A short steps of commands goes like this
Check Interface Status:
Check any Processes that can be troublesome to Airmon-ng & killing them:
airmon-ng check kill
Enable monitor mode (start) on the given wireless interface (wlan0)
airmon-ng start wlan0
wlan0is the name of wireless interface. Type
iwconfigat terminal to get the wireless interface name of wireless device on your machine.
Start Airodump-ng to dump the packets from Wireless Monitor
mon0is the monitor initiated on the interface
wlan0. Now You will clearly see all the devices nearby you and everyone's MAC Address and signal Strength also. When done press Ctrl+C to stop Monitoring.
Finally stop the Monitor mode on Interface
airmon-ng stop wlan0
Note : It doesn't matters whether you are connected or not to a wireless Network for Using Airmon-ng. The only problem is that Using Airmon-ng commands need to put the Wireless Interface (on your device) into Monitor mode, as a result of which you will get disconnected to any Wireless Network, but the rest of all works perfect for what you need.
Google Nearby can be used to find WiFi and Bluetooth devices. There are other utilities that perform a scan for any WiFi enabled device.
Nirsoft's "Wireless Network Watcher is a small utility that scans your wireless network and displays the list of all computers and devices that are currently connected to your network," showing MAC address and other information, and there are other alternatives.
For Linux, try LinSSID. N.B., it must be run as superuser. e.g. in Ubuntu, you can create a startup file as:
gnome-terminal -e "sudo linssid"
How can I get the MAC Address and signal strength of nearby wireless devices?
From a Windows PC you can:
WifiChannelMonitor is a utility for Windows that captures wifi traffic on the channel you choose, using Microsoft Network Monitor capture driver in monitor mode, and displays extensive information about access points and the wifi clients connected to them. WifiChannelMonitor also allows you to view the information about wifi clients that are not connected to any access points, including the list of SSIDs (network names) that they are trying to connect.
- This application requires the installation of Microsoft Network Monitor
WifiInfoView scans the wireless networks in your area and displays extensive information about them, including: Network Name (SSID), MAC Address, PHY Type (802.11g or 802.11n), RSSI, Signal Quality, Frequency, Channel Number, Maximum Speed, Company Name, Router Model and Router Name (Only for routers that provides this information), and more...
When you select a wireless network in the upper pane of this tool, the lower pane displays the Wi-Fi information elements received from this device, in hexadecimal format.
WifiInfoView also has a summary mode, which displays a summary of all detected wireless networks, grouped by channel number, company that manufactured the router, PHY type, or the maximum speed.
netsh from a
netsh wlan show networks mode=bssid
> netsh wlan show networks mode=bssid Interface name : Wireless Network Connection There are 19 networks currently visible. SSID 1 : TP-LINK_6A7CD0 Network type : Infrastructure Authentication : WPA2-Personal Encryption : CCMP BSSID 1 : e8:94:f6:6a:7c:d0 Signal : 24% Radio type : 802.11g Channel : 4 Basic rates (Mbps) : 1 2 5.5 11 Other rates (Mbps) : 6 9 12 18 24 36 48 54 SSID 2 : Virgin Media Network type : Infrastructure Authentication : WPA2-Enterprise Encryption : CCMP BSSID 1 : d2:05:c2:fb:7d:89 Signal : 26% Radio type : 802.11g Channel : 6 Basic rates (Mbps) : 1 2 5.5 11 Other rates (Mbps) : 6 9 12 18 24 36 48 54 BSSID 2 : 52:0d:10:91:50:d9 Signal : 18% Radio type : 802.11g Channel : 6 Basic rates (Mbps) : 1 2 5.5 11 Other rates (Mbps) : 6 9 12 18 24 36 48 54 ...
- An A-Z Index of the Windows CMD command line
- A categorized list of Windows CMD commands
- Netsh Commands for Wireless Local Area Network (WLAN)
I am not affiliated with Nirsoft in any way, I am just an end user of their software.
You can do that by using a tool called kismet. You will be able to discover all the devices with wifi enabled and even get information like MAC ID, RSSI and other useful information. TO perform a scan in kismet you need to put your card into monitor mode first. You can do that by using the command:
airmon-ng start wlan0
Wlan0 is the name of your interface Then you can launch kismet using the command:
kismet -c wlan0mon
wlan0mon is your interface name after enabling monitor mode Then you can point your web to the address that kismet specifies to see the devices. You can extract the list of devices by using REST endpoints that kismet provides.