Skip to main content

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

CommandDescription
show subscribersList all active sessions
show subscribers detail <id>Detailed session info
show vlansDynamic VLAN interfaces
show qos interface <name>QoS statistics
show radius statisticsRADIUS counters
monitor subscribersReal-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