Skip to main content

AthenaBNG Documentation

Welcome to the AthenaBNG documentation — a comprehensive guide to the software-based Broadband Network Gateway for Australian ISPs and telcos.

What is AthenaBNG?

AthenaBNG is a cost-effective, software-based Broadband Network Gateway (BNG) built on Debian 13 Linux. It terminates PPPoE and IPoE/DHCP subscriber sessions, dynamically creates QinQ VLAN sub-interfaces, applies per-subscriber QoS via CAKE, integrates with RADIUS for AAA (including Change of Authorization), supports CGNAT VRF steering, delivers native IPv6 dual-stack to subscribers, and participates in routing via IS-IS, iBGP, and OSPF.

Designed for small-to-medium Australian ISPs and telcos (1,000–50,000 subscribers) as a cost-effective alternative to hardware BNGs like Juniper MX or Cisco ASR.

Key Features

  • PPPoE Termination — Full PPPoE session lifecycle with accel-ppp integration
  • DHCP/IPoE — RADIUS-driven IP address assignment with Option 82 support
  • IPv6 Dual-Stack — Native dual-stack for PPPoE subscribers via RA + DHCPv6-PD, RADIUS-driven (Framed-IPv6-Prefix WAN /64 + Delegated-IPv6-Prefix), announced upstream as an aggregate (IPoE DHCPv6 in development). See Routing
  • Dynamic VLAN Creation — Automatic QinQ VLAN interface creation from subscriber packets
  • Per-Subscriber QoS — CAKE qdisc with per-subscriber rate limiting and overhead profiles
  • RADIUS AAA — Authentication, authorization, accounting with Change of Authorization (CoA) support
  • CGNAT — Carrier-Grade NAT with VRF steering via nftables
  • Routing — IS-IS IGP, iBGP (native IPv4 + IPv6 sessions), and OSPF for subscriber route advertisement. See Routing
  • Monitoring & Alerting — Prometheus + Alertmanager + frr_exporter stack in the management VRF for BGP and daemon-liveness alerting. See Monitoring
  • REST API — FastAPI-based management interface with JWT authentication
  • SNMP Monitoring — Custom MIB for integration with existing NOC tools
  • CLI — JunOS-style interactive shell with tab completion and pipe filters

Architecture at a Glance

Quick Navigation

System Requirements

  • OS: Debian 13 (Trixie) with Linux 6.x kernel
  • Rust: 1.82+ toolchain (for building from source)
  • Python: 3.12+ (for REST API and SNMP agent)
  • RAM: Minimum 4GB, recommended 8GB+ for 10,000+ subscribers
  • Storage: 50GB+ for logs and session database

Technology Stack

ComponentTechnologyVersion
Core DaemonsRustEdition 2024
Async RuntimeTokio1.x
REST APIPython FastAPI3.12+
PPPoEaccel-ppp1.13+
DHCP/IPoEabng-dhcpd (built-in)
RoutingFRRouting10.x
QoSCAKE qdiscKernel built-in
FirewallnftablesKernel built-in
SNMPnet-snmp + AgentX

Getting Help

License

Proprietary — Athena Networks Pty Ltd.