deviceFinder is a lightweight PHP web application for helpdesk and network operations teams to quickly look up endpoint details from Cisco Catalyst Center (DNA Center).
It supports searching by MAC address or IPv4 address, automatically resolving IPs to MACs via the Assurance Host API, then displaying rich client details using the client-detail API.
- Search by MAC or IPv4
- MAC → direct
client-detaillookup - IP → Assurance
/api/assurance/v1/host→ resolve MAC →client-detail
- MAC → direct
- Displays key helpdesk-relevant fields:
- IP, MAC, VLAN
- Connection status
- Switch, switch port, port description
- Device vendor & form factor
- Link speed (human-readable)
- Location
- Last seen (local timezone + relative time)
- Copy Device Details (client-side, no POST)
- Secure token handling with cached Catalyst Center auth token
- Fully containerized with Docker & Docker Compose
- Environment-based configuration (
.env)
CatalystCenter-deviceFinder/
├── index.php
├── dnac_api.php
├── assurance_host_api.php
├── resolver.php
├── config.php
├── assets/
│ ├── style.css
│ └── app.js
├── Dockerfile
├── docker-compose.yml
├── .env.example
└── README.md
git clone https://github.com/serverwrangler/CatalystCenter-deviceFinder.git
cd CatalystCenter-deviceFinderCopy the example environment file:
cp .env.example .envEdit .env:
DNAC_BASE_URL=https://catalystcenter.domain.local
DNAC_USERNAME=apiuser
DNAC_PASSWORD=strongpassword
DNAC_VERIFY_TLS=true
DNAC_TOKEN_CACHE_FILE=/tmp/dnac_token_cache.jsondocker compose build
docker compose up -dOpen your browser:
http://localhost:8080
- MAC input → directly queries
client-detail - IPv4 input → Assurance host lookup → resolves MAC → queries
client-detail
- Credentials stored only in
.env - Auth token cached and auto-refreshed
- TLS verification configurable
ServerWranger