Network OS CLI
A familiar JunOS/VyOS-style command-line interface built for network engineers.
Overview
AthenaBNG ships with abng-cli, a purpose-built CLI that feels like a proper network OS. If you've used JunOS, VyOS, or RouterOS, you'll be productive in minutes. No learning curve, no web GUIs, no YAML editing in production.
Operational Mode
View system state, subscriber sessions, and real-time statistics:
abng> show subscribers
ID Username IP Address Interface Speed Down Speed Up Uptime
1 user@example.com 203.0.113.10 ppp0 50 Mbps 20 Mbps 2h 15m
2 aa:bb:cc:dd:ee:ff 10.100.0.5 trunk0.200.100 25 Mbps 10 Mbps 45m
3 user2@example.com 203.0.113.11 ppp1 100 Mbps 40 Mbps 5h 30m
abng> show vlans
Interface Type Outer Inner State Sessions
trunk0.100 802.1Q 100 - up 3
trunk0.200.100 QinQ 200 100 up 1
trunk0.200.101 QinQ 200 101 up 0 (idle: 45s)
Key Commands
| Command | Description |
|---|---|
show subscribers | List all active sessions |
show subscribers detail <id> | Detailed session info |
show vlans | Dynamic VLAN interfaces |
show qos interface <name> | QoS statistics |
show radius statistics | RADIUS counters |
monitor subscribers | Real-time session events |
request subscriber disconnect <id> | Terminate a session |
Configuration Mode
Full commit/rollback configuration management:
abng> configure
abng# set qos default-down 100mbit
abng# set qos default-up 40mbit
abng# show | compare
+ qos default-down 100mbit
+ qos default-up 40mbit
abng# commit
Configuration committed.
abng# exit
abng>
Safety Features
- commit confirmed — Auto-rollback if not confirmed within N minutes (prevents lockouts)
- rollback — Revert to any previous configuration from the archive
- show | compare — See exactly what will change before committing
- discard — Throw away candidate changes without applying
Shell Features
- Tab completion at every level of the command hierarchy
?help shows available commands with descriptions- Command history with up/down arrows (persisted across sessions)
- Pipe filters —
| match <regex>,| count,| no-more,| save <file> - Ctrl+C cancels current input (doesn't exit)
Non-Interactive Mode
Script-friendly for automation:
# Single command
abng -c "show subscribers"
# Multiple commands
abng -c "show subscribers" -c "show vlans"
# Pipe-friendly (machine-readable output)
abng -c "show subscribers" | grep ppp0
Why It Matters
Network engineers manage routers and switches via CLI every day. AthenaBNG's CLI means:
- No context switching — Same workflow as managing your Juniper or Cisco gear
- Scriptable — Automate common tasks with shell scripts
- Auditable — Configuration changes are committed and archived
- Safe — Commit confirmed prevents accidental lockouts