Official Documentation

AMPNM Deployment &
Operations Manual

Learn how to install, configure, manage, and scale the Advanced Multi-Protocol Network Monitor (AMPNM) across Linux and Windows environments.

Introduction

AMPNM (Advanced Multi-Protocol Network Monitor) is a robust network topology mapping and telemetry platform designed to monitor routing nodes, servers, switch stacks, and client endpoints in real-time. By combining lightweight ICMP and TCP port scanners with dedicated system monitoring agents, AMPNM delivers deep diagnostic insights inside a single unified dashboard.

Real-Time Telemetry

Stream hardware statistics directly from Windows nodes using the telemetry helper daemon.

Topology Mapping

Interactive Canvas UI utilizing Vis.js to draw customized connections and animations between nodes.

License Guard

Secure automated offline-first license verification through the official licensing gateway portal.

Docker Hub Installation (Linux Server)

The primary way to deploy AMPNM is using the official pre-built image from Docker Hub. The environment requires Docker Engine and is optimized to run as a non-privileged user within the host container, with self-healing Docker socket authorization for updates.

1. Pull the Docker Image

Version 1.16 (Stable Release)
docker pull itsupportbd/ampnm:V1.16
Latest Build (Development / Rolling)
docker pull itsupportbd/ampnm:latest

2. Run the Container

Run the container on port 2266. Note the Docker socket bind mount (-v /var/run/docker.sock:/var/run/docker.sock) which is necessary if you intend to use the live Docker Hub update feature directly from the admin panel.

docker run -d \
  --name ampnm_server \
  -p 2266:2266 \
  -v /var/run/docker.sock:/var/run/docker.sock \
  -v ampnm_uploads:/var/www/html/uploads \
  --restart unless-stopped \
  itsupportbd/ampnm:latest

Windows Docker Setup

To run AMPNM on Windows servers or desktops, install Docker Desktop with the WSL 2 backend. Launch a PowerShell window as Administrator and run:

docker run -d `
  --name ampnm_server `
  -p 2266:2266 `
  -v /var/run/docker.sock:/var/run/docker.sock `
  -v ampnm_uploads:/var/www/html/uploads `
  --restart unless-stopped `
  itsupportbd/ampnm:latest

App Management & Administration

Once deployed, visit http://your-server-ip:2266 to access the dashboard.

  • First-time Credentials: The default administrator login is admin@itsupport.com.bd / admin123 (change this immediately under users profile).
  • Licensing: Go to the License panel and input your key purchased from portal.itsupport.com.bd. The software allows a 30-day offline grace period.
  • User Management: Administrators can add new users and group them into isolated tenant groups, letting coworkers collaborate on specific network maps while hiding others.

Adding Devices & Monitoring Methods

Under the Devices section, click Add Device to register a new host:

ICMP Ping Checks

Sends periodic ping echoes to monitor host availability, latency metrics, and packet loss. Customizable latency thresholds dynamically label hosts as Online, Warning, or Critical.

TCP Port Checks

Validates service state on specific TCP ports (e.g. port 80 for HTTP, 443 for HTTPS, 22 for SSH, 8728 for MikroTik API). Useful when hosts discard ICMP packets due to firewall rules.

Conflict Avoidance

The duplicate detector validates hostname and IP uniqueness against all active hosts in your group during registration or updates to prevent duplicate polling data.

Interactive Network Map Topology

The map topology utilizes HTML5 Canvas rendering to layout devices dynamically. You can:

  • Drag-and-Drop Positioning: Left-click and drag devices to customize their visual placement. Positions are saved automatically in real-time.
  • Edge Connections: Link devices together. Edit edge attributes to add custom labels, connection styles (solid, dashed, dotted), color definitions, and arrowheads.
  • Universal Line Thickness: Manage default connection widths globally from the Map Settings form. The slider updates all uncustomized links dynamically.
  • Scrollable Settings: The Settings panel adjusts to fit mobile or low-resolution screens with smooth vertical scrolling to guarantee usability.
  • Flow Animations: Enable packet flow animations on specific lines to visually represent active data throughput.

Windows Telemetry Agent & Token

To monitor hardware performance (CPU, Memory, Disk) on remote Windows hosts, deploy the lightweight PowerShell collector batch script.

Create a batch script on the Windows host (e.g. C:\ampnm-agent.bat) and configure it to run periodically in Windows Task Scheduler:

@echo off
set SERVER_URL=http://<YOUR_DOCKER_HOST>:2266/api/agent/windows-metrics
set AGENT_TOKEN=your-random-token-here

powershell -NoProfile -Command "
$metrics = @{
  hostname = [System.Net.Dns]::GetHostName()
  cpu = (Get-CimInstance Win32_Processor | Measure-Object -Property LoadPercentage -Average).Average
  ram = [math]::round(((Get-CimInstance Win32_OperatingSystem).TotalVisibleMemorySize - (Get-CimInstance Win32_OperatingSystem).FreePhysicalMemory) / (Get-CimInstance Win32_OperatingSystem).TotalVisibleMemorySize * 100, 2)
  disk = [math]::round(((Get-CimInstance Win32_LogicalDisk -Filter 'DeviceID="C:"').Size - (Get-CimInstance Win32_LogicalDisk -Filter 'DeviceID="C:"').FreeSpace) / (Get-CimInstance Win32_LogicalDisk -Filter 'DeviceID="C:"').Size * 100, 2)
}
$json = ConvertTo-Json $metrics
Invoke-RestMethod -Uri $SERVER_URL -Method Post -Body $json -Headers @{ 'X-Agent-Token' = $AGENT_TOKEN } -ContentType 'application/json'
"

Ensure the X-Agent-Token header matches the token configured inside the AMPNM server environment. This token restricts endpoint writes to authenticated agents only.

Notifications System

AMPNM alerts administrators immediately when devices transition between status states.

  • SMTP Integration: Set up outgoing SMTP servers (e.g. Gmail SMTP using App Passwords, Office 365, Mailgun) directly from the settings panel.
  • Rule Subscriptions: Subscribe users to individual hosts or global notifications. Emails are dispatched automatically on Online / Warning / Critical / Offline transitions.

Dual Update Systems (Git vs Docker Hub)

Keep your application up to date using the dual updater panel:

Git Update

Runs git pull locally inside the code directory. Perfect for updating user-facing frontend code templates and scripts without restarting the core server daemon or Apache service.

Docker Hub Update

Communicates with the host's Docker socket to pull the latest image layers from Docker Hub, reconstructs run parameters (ports, mounts, envs) dynamically, and cleanly recreates the container on the fly.

Automated System Backups (FTP & NAS)

Prevent data loss by configuring recurring cron schedules to back up the SQLite/MariaDB database schema and all uploaded maps/icons.

  • Local NAS Backups: Dump compressed tarballs directly to directories mounted locally on the container (e.g. /backups/nas).
  • FTP Server Backups: Securely upload archives to external network storage using passive mode (PASV). The compiled Docker image features native FTP support to avoid dependency failures.

Integration REST API

Verify license keys or telemetry health programmatically from third-party clusters:

HTTP Verification specs:

  • Method: POST
  • Path: https://portal.itsupport.com.bd/api/license/verify
  • Content-Type: application/json
Request curl template:
curl -X POST https://portal.itsupport.com.bd/api/license/verify \
  -H "Content-Type: application/json" \
  -d '{"key": "AMPNM-DEVC-8F2B-9A4E-4321"}'