A command-line interface tool for managing Cisco Catalyst 9800 Wireless Network Controllers.
π‘ This CLI provides a lightweight and efficient alternative to certain features of Cisco Catalyst Center.
Cisco Catalyst 9800 Wireless Network Controller running Cisco IOS-XE 17.12.x
.
There are two ways to install this CLI:
docker run ghcr.io/umatare5/wnc
Download binaries from the release page.
Supported Platforms: linux_amd64
, linux_arm64
, darwin_amd64
and darwin_arm64
First, activate RESTCONF on the WNC. This CLI requires RESTCONF to communicate with the WNC.
Tip
Programmability Configuration Guide, Cisco IOS XE is a good reference for enabling RESTCONF.
You must create a Basic Auth token using your Cisco WNC credentials before using the CLI.
# Create token for username:password echo -n "admin:your-password" | base64 # Output: YWRtaW46eW91ci1wYXNzd29yZA==
Start with this simple example to verify your WNC connection and credentials.
# Generate authentication token wnc generate token -u <username> -p <password> # View controller overview wnc show overview --controllers "https://wnc1.example.internal:$WNC_ACCESS_TOKEN"
Customize CLI behavior using command-line flags to optimize for your specific environment and requirements.
# Increase timeout for slow networks wnc show overview --controllers "https://wnc1.example.internal:$WNC_ACCESS_TOKEN" --timeout 30 # Skip certificate verification (development only) wnc show overview --controllers "https://wnc1.example.internal:$WNC_ACCESS_TOKEN" --insecure
Caution
The --insecure
flag disables TLS certificate verification. This should only be used in development environments or when connecting to controllers with self-signed certificates. Never use this option in production environments as it compromises security.
This CLI provides following commands for interacting with Cisco Catalyst 9800 WNC subsystems.
Note
Currently, this CLI do not support enough APIs. This will be implemented by the future release v1.0.0
.
Generate secure authentication tokens for CLI operations.
Command | Description | Documentation |
---|---|---|
wnc generate token |
Generate basic auth token from username/password | π GENERATE_TOKEN.md |
Extend and enhance the native show - summary
commands of C9800 WNC.
Command | Description | Documentation |
---|---|---|
wnc show overview |
Display the summary of 2.4 GHz, 5GHz and 6GHz. | π SHOW_OVERVIEW.md |
wnc show ap |
Display the summary of associated APs. | π SHOW_AP.md |
wnc show ap-tag |
Display the summary of tag names with the status. | π SHOW_AP_TAG.md |
wnc show client |
Display the summary of associated clients. | π SHOW_CLIENT.md |
wnc show wlan |
Display the summary of configured WLANs. | π SHOW_WLAN.md |
Please use telee as an alternative for executing commands on the WNC.
Note
As of June 2025, the exec
command is not yet implemented.
Reset an AP:
telee -H wnc1 -C "ap name <apName> reset"
Deauthenticate a client:
# By MAC address telee -H wnc1 -C "wireless client mac-address <clientMac> deauthenticate" # By IP address telee -H wnc1 -C "wireless client ip-address <clientIpAddr> deauthenticate" # By username telee -H wnc1 -C "wireless client username <userName> deauthenticate"
This repository includes comprehensive unit and integration tests to ensure reliability and compatibility with Cisco Catalyst 9800 controllers. For detailed testing information, please see TESTING.md.
If you encounter issues, please see the TROUBLESHOOTING.md for common problems and solutions.
I welcome contributions to improve this CLI. Please follow these guidelines to ensure smooth collaboration.
main
To release a new version:
VERSION
fileVERSION
fileOnce merged, the GitHub Workflow will automatically:
VERSION
fileAfter that, manual release using GitHub Actions: release workflow.
This code was developed with the assistance of GitHub Copilot Agent Mode. I extend our heartfelt gratitude to the global developer community who have contributed their knowledge, code, and expertise to open source projects and public repositories.
Please see the LICENSE file for details.
Owner
Contributors
Categories
Products
Catalyst Access PointsProgramming Languages
GoLicense
Code Exchange Community
Get help, share code, and collaborate with other developers in the Code Exchange community.View Community