Skip to content

sedegah/NetScope

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

65 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

NetScope

NetScope is a lightweight, read-only network visibility and health monitoring tool for learners and entry-level network engineers.

Features

  • Automatic subnet discovery and device monitoring
  • ICMP availability (up/down)
  • Latency and packet loss metrics
  • CLI monitoring mode
  • Optional web dashboard (/api/status + simple UI)
  • Cross-platform operation (Linux and Windows)

Prerequisites

  • Go 1.22+

Linux/macOS setup

1) Run monitor

go run ./cmd/netscope monitor \
  -auto-subnet 192.168.0.0/24 \
  -auto-method auto \
  -auto-refresh 30s \
  -interval 5s

2) Run web dashboard

go run ./cmd/netscope web -auto-subnet 192.168.0.0/24 -auto-refresh 30s -listen :8080

3) Build binaries

./build.sh

Windows setup

1) Run monitor

PowerShell (one line):

go run .\cmd\netscope monitor -auto-subnet 192.168.0.0/24 -auto-method auto -auto-refresh 30s -interval 5s

PowerShell (multiline):

go run .\cmd\netscope monitor `
  -auto-subnet 192.168.0.0/24 `
  -auto-method auto `
  -auto-refresh 30s `
  -interval 5s

CMD:

go run .\cmd\netscope monitor -auto-subnet 192.168.0.0/24 -auto-method auto -auto-refresh 30s -interval 5s

2) Run web dashboard

PowerShell:

go run .\cmd\netscope web -auto-subnet 192.168.0.0/24 -auto-refresh 30s -listen :8080

3) Build binaries

PowerShell:

./build.ps1

Build outputs:

  • dist/netscope-linux-amd64
  • dist/netscope-windows-amd64.exe

4) Check available flags

go run ./cmd/netscope monitor -h

Open http://localhost:8080 for web mode.

Notes

  • NetScope only performs read-only checks.
  • ICMP may require firewall permissions.

Troubleshooting

-auto-refresh / -interval "not recognized" in PowerShell

Cause: PowerShell does not use \ for line continuation.

Fix:

  • Use one line, or
  • Use PowerShell backtick ` at line end for multiline.

syntax error in cmd\netscope\main.go (line 159/174)

Cause: local file differs from current repository code.

Fix from repo root:

git pull
go clean -cache
go build ./...

If your local file was manually edited and broken, restore it:

git checkout -- cmd/netscope/main.go cmd/netscope/discovery.go
go build ./...

&& is not valid in older PowerShell

Use either separate lines or ; to chain commands.

About

Read-only network visibility and health monitoring tool for learners and entry-level network engineers.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors