Discover and analyze devices on your local network with no ads, no tracking, and no internet required.
- π Ping Sweep - Parallel ICMP ping sweep with TCP fallback for devices that block ICMP (e.g. Windows with firewall)
- π ARP Cache - Reads the ARP table to pick up devices without sending any traffic
- π‘ mDNS / Bonjour - Discovers services like AirPlay, Chromecast, printers, SSH, SMB, HomeKit, and more
- πΊ SSDP / UPnP - Finds UPnP devices and fetches their full description (friendly name, manufacturer, model number)
- πͺ NetBIOS - Resolves hostnames and workgroups for Windows and Samba devices
- π Port Heuristics - Identifies Cast-enabled TVs and other devices via targeted port probes when other methods come up empty
- π·οΈ MAC Address & Vendor - Shows MAC address with OUI vendor lookup, including detection of randomized (private) MAC addresses
- π₯οΈ OS Fingerprinting - Detects Windows, Linux, macOS, router firmware, and printer OS from open ports and banners
- π± Device Type Icons - Automatically identifies smartphones, laptops, desktops, TVs, routers, printers, NAS, and more
- π Deep Port Scan - Scans common ports, grabs service banners, and extracts software versions
- π§© Full Port Scan - Optional sweep of all 65,535 ports via a fast worker pool
- βοΈ Configurable Ports - Customize which ports are probed during scans
-
π·οΈ Custom Devices - Rename devices and assign your own icons for easy identification
-
πΆ Interface Selection - Choose which network interface to scan (Wi-Fi, Ethernet, VPN)
-
π¨ Material Design 3 - Modern interface following latest design guidelines
-
π Privacy First - No ads, no tracking, no analytics
-
π Lightweight - Minimal permissions, efficient battery usage
-
π‘ Offline - Works completely offline, no internet required
Download the latest APK from the Releases page.
- Android 8.0 (Oreo) or higher
- WiFi connection to scan local network
NetScan requests only essential permissions:
- INTERNET - For network communication
- ACCESS_NETWORK_STATE - To check network connectivity
- ACCESS_WIFI_STATE - To get WiFi information
- CHANGE_WIFI_MULTICAST_STATE - For network device discovery
- NEARBY_WIFI_DEVICES (Android 13+) - To discover nearby WiFi devices
- ACCESS_FINE_LOCATION / ACCESS_COARSE_LOCATION - Required by Android for WiFi scanning (not used for location tracking)
- Android Studio Hedgehog (2023.1.1) or later
- JDK 17
- Android SDK with API level 35
- Clone the repository:
git clone https://github.com/usamaiqb/network-scanner.git
cd network-scanner- Open in Android Studio or build from command line:
./gradlew assembleRelease- The APK will be in
app/build/outputs/apk/release/
- Open the app and grant necessary permissions
- Tap the scan button to discover devices
- Tap any device to view detailed information
- Use the deep scan option for port scanning, or run a full port scan for all 65,535 ports
- Rename devices or assign custom icons to keep track of your network
Contributions are welcome! Please read CONTRIBUTING.md for guidelines.
This project is licensed under the GNU General Public License v3.0 - see the LICENSE file for details.
NetScan:
- β Does NOT collect any personal data
- β Does NOT require internet connection
- β Does NOT contain ads or tracking
- β Does NOT share data with third parties
- β All scanning happens locally on your device
For full details, see the Privacy Policy.
- Issues: GitHub Issues
- Discussions: GitHub Discussions
Built with:
- Kotlin - Modern programming language for Android
- AndroidX - Android Jetpack libraries
- Material Design 3 - Modern design system
- Kotlin Coroutines - Asynchronous programming
See CHANGELOG.md for version history and changes.
Made with β€οΈ for the open source community




