Skip to content

Repository files navigation

myNetwork

myNetwork

Cross-platform LAN & port scanner with a Windows XP–style desktop GUI.

Discovers hosts on your segment, resolves names, MAC and vendor, and reports open TCP + UDP ports — with live monitoring and export.

Electron Node No root Platforms License

myNetwork screenshot

Screenshot shows synthetic demo data.

Download

Download for Windows Download for macOS Download for Linux

Direct download of the latest release — Windows .exe, macOS .dmg, Linux .AppImage or .deb.


✨ Features

  • Auto-detected segment. Interfaces and their subnets are listed automatically; the one holding the default gateway is first (★). If an interface has several addresses, Range is pre-filled as a comma-separated list.
  • Comma-separated ranges10.0.0.0/24, 192.168.1.0/24, single IPs or a.b.c.d-a.b.c.e.
  • Layered scanning: first ICMP (discovery), then popular ports (fast feedback), then all TCP (1–65535) and UDP. Hosts and ports stream in as they are found; the progress bar reflects the layers.
  • Modes: Fast (default) — ICMP + popular; Full — TCP + UDP + ICMP, all ports; Custom — separate TCP and UDP ranges.
  • Colour = protocol: TCP green, UDP blue, ICMP yellow (legend in the status bar).
  • Vendor by MAC — full offline IEEE OUI database (~39,700 entries).
  • Monitoring: pings known hosts every minute with online/offline notifications and re-checks ports every 5 minutes; unreachable hosts fade out.
  • Preserve (default) — results from previous scans are kept and merged by IP. A Clear button sits next to it.
  • Copy from a row: click IP → IP, click MAC → MAC, click anywhere else → the whole host record as JSON. Export to CSV / JSON from the File menu.
  • Cache — the last scan is restored on the next launch.
  • Windows XP (Luna) GUI — frameless window, menu bar, sortable ListView and a status bar.

🚀 Run

npm install
npm start          # or: make start   (background, no sudo)

make help lists the targets (start / stop / restart / status).

On Linux, Electron needs its Chromium sandbox configured. If you hit a chrome-sandbox error, use npm run start:nosandbox (or make start), or run once: sudo chown root node_modules/electron/dist/chrome-sandbox && sudo chmod 4755 ….

📦 Build installers

npm run dist:linux   # AppImage + deb
npm run dist:win     # NSIS installer
npm run dist:mac     # dmg

Releases are built automatically: pushing a v* tag triggers GitHub Actions, which builds installers for Windows/macOS/Linux and attaches them to the GitHub Release.

🧭 How it works

Layer File Purpose
CIDR / interfaces net-utils.js target parsing, comma ranges, interface detection
Discovery discovery.js ping, ARP table, reverse DNS, default route
Ports ports.js TCP connect, UDP probes, service names
OUI vendors oui.js · oui-db.txt vendor by MAC
Orchestration index.js layers, socket pool, streamed events
Electron / IPC main.js · preload.js window, monitoring, export, notifications
Renderer renderer/ UI, table, filter

Everything runs on plain Node — no native dependencies and no root — so it builds identically on Linux, macOS and Windows.

⚠️ Responsible use

This tool is meant for auditing your own networks. Only scan segments you are authorised to.

License

MIT

About

Cross-platform network & port scanner with a desktop GUI.

Topics

Resources

Security policy

Stars

28 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages