NetScan
A terminal-based network scanner built with Go. Discovers devices on your local network and shows their IP, MAC address, vendor, OS, open ports, and latency in a real-time TUI.
Install
go install github.com/aitmiloud/netscan@latest
sudo netscan
Root access is required for ARP lookups and ICMP ping.
Build from source
git clone https://github.com/aitmiloud/netscan.git
cd netscan
go build -o netscan .
sudo ./netscan
What it does
- Scans all hosts in your local subnet using TCP and ICMP probes
- Resolves MAC addresses to vendor names via OUI lookup
- Fingerprints the operating system from TTL values and open port patterns
- Shows a network topology graph (gateway as root, devices as branches)
- Sends Wake-on-LAN magic packets to sleeping devices
- Displays scan progress with a live progress bar
- Sorts and filters the device table in real time
Keybindings
| Key |
Action |
r |
Rescan |
s |
Cycle sort mode |
/ |
Filter devices |
g |
Toggle table / graph view |
w |
Wake-on-LAN |
Enter |
Device details |
Esc |
Close overlay / back to table |
q |
Quit |
Requirements
- macOS or Linux
- Go 1.21+ (for
go install)
License
MIT