Skip to content

d4nilpzz/NetAnalyzer

Repository files navigation

NetAnalyzer

A desktop network scanning tool built with Kotlin and Swing.

Features

  • Network Interface Detection — Lists all available IPv4 network interfaces with IP and subnet mask
  • Ping Sweep — Multi-threaded ping scan to discover live hosts on the selected network
  • MAC Address Resolution — Retrieves MAC addresses via ARP table lookup
  • Vendor Identification — Identifies device vendors from MAC OUI prefixes (built-in database with 100+ vendors)
  • Port Scanning — Scans 25 common ports (HTTP, SSH, FTP, RDP, etc.) on each discovered device
  • Device Type Guessing — Attempts to classify devices (Router, Printer, Phone, Server, IoT, etc.) by hostname
  • Gateway & DNS Detection — Reads gateway and DNS server addresses from system configuration
  • SSID Detection — Shows connected Wi-Fi SSID (Windows)
  • Import / Export — Save scan results as JSON and reload them later
  • Real-time Results — Devices appear in the table as they are discovered during scanning

Requirements

  • Java 24 (JDK 24)

For the portable version no requirements are required.

Build & Run

./gradlew build
./gradlew run

Or run the generated JAR:

java -jar build/libs/NetAnalyzer-1.0-SNAPSHOT.jar

Export Format

Scan results are exported in JSON format matching the structure defined in src/main/resources/template.json:

{
  "interfaceName": "Wi-Fi",
  "network": "192.168.1.0/24",
  "gateway": "192.168.1.1",
  "dns": "8.8.8.8, 1.1.1.1",
  "ssid": "MyNetwork",
  "devices": [
    {
      "ipv4": "192.168.1.1",
      "ipv6": "",
      "hostname": "router.home",
      "type": "Router",
      "mac": "00:11:22:33:44:55",
      "vendor": "Cisco",
      "ports": [80, 443]
    }
  ],
  "totalDevices": 1
}

Tech Stack

  • Kotlin (JVM)
  • Gradle 9.0
  • FlatLaf (FlatMacDarkLaf dark theme)
  • Gson (JSON serialization)
  • Java Swing (UI)

About

This is my custom net tool analyzer build with kotlin.

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages