Skip to main content

Quick Start

Get AthenaBNG running in 10 minutes with a minimal configuration.

5-Minute Setup

1. Install

git clone https://gitlab.athenanetworks.com.au/athenanetworks/athena-bng.git
cd athena-bng
make install-all

2. Configure

# Copy base config
sudo cp config/AthenaBNG.yaml.base /opt/athena-bng/etc/running-config.yaml

# Edit with your interface names and IPs
sudo nano /opt/athena-bng/etc/running-config.yaml

Minimum edits:

system:
hostname: "AthenaBNG-01"
router_id: "10.255.0.1"

interfaces:
management: "eth0" # Your management interface
subscriber_trunk: "eth1" # Your subscriber trunk
upstream: "eth2" # Your upstream interface

3. Start

sudo systemctl start AthenaBNG.target
sudo systemctl status AthenaBNG.target

4. Verify

/opt/athena-bng/bin/abng -c "show version"
/opt/athena-bng/bin/abng -c "show system"

Enable PPPoE (10 More Minutes)

1. Enter CLI

/opt/athena-bng/bin/abng

2. Configure PPPoE

abng> configure
abng# set demux enabled true
abng# set demux profiles[0] name "residential"
abng# set demux profiles[0] trunk_interface "eth1"
abng# set demux profiles[0] outer_vlans [111]
abng# set demux profiles[0] stag_range "100-999"
abng# set demux profiles[0] ctag_range "1-4094"
abng# set demux profiles[0] services ["pppoe"]

abng# set pppoe enabled true
abng# set pppoe ac_name "AthenaBNG"

abng# set radius servers[0] host "10.255.0.10"
abng# set radius servers[0] secret "your-radius-secret"
abng# set radius nas_identifier "AthenaBNG"

abng# show | compare
abng# commit
abng# exit

3. Verify

/opt/athena-bng/bin/abng -c "show subscribers"
/opt/athena-bng/bin/abng -c "show vlans"

Enable QoS (5 More Minutes)

abng> configure
abng# set qos enabled true
abng# set qos default_down "100mbit"
abng# set qos default_up "40mbit"
abng# set qos default_overhead_profile "pppoe_ethernet"
abng# commit
abng# exit

Verify:

/opt/athena-bng/bin/abng -c "show qos"

Enable DHCP/IPoE (Optional)

abng> configure
abng# set dhcp enabled true
abng# set dhcp lease_time 3600
abng# set dhcp allocation_mode "radius"
abng# set dhcp pools[0] network "10.100.0.0/23"
abng# set dhcp pools[0] gateway "10.100.0.1"
abng# set dhcp pools[0] dns_servers ["1.1.1.1", "8.8.8.8"]
abng# commit
abng# exit

Monitor Sessions

# View all sessions
/opt/athena-bng/bin/abng -c "show subscribers"

# View session summary
/opt/athena-bng/bin/abng -c "show subscribers summary"

# Monitor in real-time
/opt/athena-bng/bin/abng
abng> monitor subscribers

Common Commands

CommandPurpose
show subscribersList active sessions
show interfacesShow network interfaces
show vlansShow dynamic VLAN interfaces
show qosShow QoS status
show systemShow system info
show configurationShow running config
request subscriber disconnect <id>Disconnect a session

Troubleshooting

No sessions appearing

  1. Check demux is enabled: show configuration | match demux
  2. Check VLAN interfaces are created: show vlans
  3. Check logs: sudo journalctl -u abng-demux -f

Sessions not getting IP

  1. Check RADIUS is reachable: radtest testuser testpass <radius-ip> 1812 <secret>
  2. Check DHCP is enabled: show configuration | match dhcp
  3. Check logs: sudo journalctl -u abng-dhcpd -f

QoS not applying

  1. Check QoS is enabled: show configuration | match qos
  2. Check CAKE is available: tc qdisc show
  3. Check logs: sudo journalctl -u abng-qos -f

Next Steps