A Windows CLI and GUI tool for discovering and managing HTTP-enabled devices on your local network.
- Auto-Discovery - Automatically scans for new devices on startup
- Port Scanning - Detects common services (HTTP, HTTPS, SSH, RDP, etc.) on each device
- Device Identification - Automatically detect device types (routers, switches, servers, etc.)
- Clickable Links - Quick access to device web interfaces and services
- Credential Management - Securely store and recall login credentials per device
- Dual Interface - Full functionality via both command line and graphical interface
- Windows 10 or later
- .NET 10.0 Runtime
git clone https://github.com/HerbHall/IPScan.git
cd IPScan
dotnet buildDownload the latest release from the Releases page.
# Launch GUI (no arguments)
ipscan
# Scan for new devices on the local network
ipscan scan
# Scan a specific subnet
ipscan scan --subnet 192.168.1.0/24
# Rescan all devices (update existing device info)
ipscan scan --rescan
# Scan and then open GUI
ipscan scan --gui
# List saved devices
ipscan list
# Show device details including open ports
ipscan show <device-name>
# Open a device's web interface
ipscan open <device-name>
# View/modify settings
ipscan settings get # Show all settings
ipscan settings get scanOnStartup # Show specific setting
ipscan settings set splashTimeoutSeconds 3
# Explicitly launch GUI
ipscan gui
# View all commands
ipscan --helpLaunch the GUI by running ipscan without arguments, or explicitly:
ipscan guiOr run from the Start Menu after installation.
Access help documentation via File > Help in the menu.
Configuration and data files are stored in:
%APPDATA%\IPScan\
├── devices.json # Saved device information
└── settings.json # Application settings
Device credentials are securely stored using Windows Credential Manager.
- .NET 10.0 SDK
- Visual Studio Code (recommended) or Visual Studio 2022
# Restore dependencies
dotnet restore
# Build all projects
dotnet build
# Run tests
dotnet test
# Publish release build
dotnet publish -c ReleaseIPScan/
├── src/
│ ├── IPScan.Core/ # Shared business logic
│ ├── IPScan.CLI/ # Command line interface
│ └── IPScan.GUI/ # WPF application
├── tests/
│ ├── IPScan.Core.Tests/
│ └── IPScan.CLI.Tests/
└── docs/
Contributions are welcome! Please read the REQUIREMENTS.md for project specifications.
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
- .NET 10.0
- WPF (Windows Presentation Foundation)
- SharpPcap for network scanning
- System.CommandLine for CLI