RADIUSdesk

logo

This is an old revision of the document!


Accel-ppp on OpenWrt with MESHdesk

Background

  • One of the main goals of MESHdesk is to enable fast WiFi deployment with commercial off-the-shelf (COTS) hardware and open source firmware.
  • Another goal is the ability to manage network usage.
  • For bandwidth and data usage management we include a captive portal.
  • An alternative to a captive portal is PPPoE.
  • In 2021 we introduced PPPoE client support in MESHdesk and APdesk.
  • PPPoE is used by most WISPs.
    • In South Africa (and probably in most other countries) the PPPoE server of choice is provided by Mikrotik's RouterOS.
    • This is combined with the CPE of choice (usually Ubiquiti).
  • There is already a solid and feature-rich open source PPPoE server called Accel-ppp for Linux.
  • As we strongly believe in open source we want to offer a completely open source system for Internet providers.
  • We just had to compile Accel-ppp and get it running under OpenWrt.
  • Then we had to integrate it with MESHdesk and APdesk.
  • This was no easy task but thanks to the work that others have done in the past we were able to draw on this knowledge and develop this last missing piece of the puzzle.
  • Now that this part is complete we can offer Internet providers a managed alternative that could serve as a drop-in replacement for their current vendor-specific PPPoE servers.

POC using a $15 AP

  • When fishing, it is much more fun to catch a big fish with a light line.
  • For this Proof Of Concept (POC), we decided to go light on the hardware too.
  • The Xiaomi 4C was on special offer, so we grabbed a couple of them.
  • The price of the special offer was equivalent to ~15USD per device.

  • MESHdesk and APdesk support WiFi 6 and hardware with up to three radios.
  • We have deliberately chosen entry-level hardware for this POC to prove a point.

POC networks

Jhb-South (Main Mesh)

  • We used the Wizard in RADIUSdesk to create a cloud called Jhb-South.
  • We edit the Jhb-South mesh Exit Points:
    • Remove the bridge exit point
    • Add a PPPoE server exit point.
    • This connects then with the Jhb-South Wireless SSID

  • Jhb-South will be our main mesh network to which various APs will connect via WiFi and PPPoE.

Client Mesh Networks

  • We create two client mesh networks named Jhb-South-Unit1 and Jhb-South-Unit2.
  • These can typically be a unit in a gated community.

PPPoE RADIUS users

  • We create Permanent Users which will be used by the gateway AP of the Client Mesh Networks.
  • Since Accel-ppp can serve as a drop in replacement to Mikrotik we can use the old Mikrotik attributes as is.
  • Accel-ppp will interpret them and apply the desired shaping.
  • Accel-ppp also support advanced shaping features that the Mikrotik PPPoE server do like bursting.
  • Again no need to change any of the current Mikrotik reply attributes from RADIUS. It will interpret and apply even the advanced Mikrotik reply values.

Add gateway nodes to client networks

  • We add gateway nodes to out client networks.
  • We specify their Internet Connection as WiFi Client - PPPoE and give the required detail.

Up and running overview

  • Once the client gateway nodes have been added we can now view all everything in one grid.

  • A few important points on the sceenshot above.
  • The Jhb-South mesh has two nodes: PPPoE-GW and Node-2.
  • The Internet connection for PPPoE-GW is using Ethernet (LAN).
  • The Internet connection for Node-2 is the mesh.
  • The Nodes in the client networks are using WiFi for Internet (WiFi with PPPoE)
  • Although not shown here, the one client AP is connected to PPPoE-GW's WiFi. The other client AP is connected to Node-2's WiFi.

Should the need arise to expand the coverage of the client networks (Unit1 and Unit2), you can simply add more mesh nodes to the client networks.

RADIUS Activity

  • Finally we show the active sessions of Unit1 and Unit2 in RADIUS