Open
Conversation
681f511 to
bbcdd05
Compare
eBPF/XDP-based BNG that requires only NET_ADMIN and BPF capabilities. Uses if-wait.sh (shared with fdio_vpp) to wait for veth interfaces before starting the BNG binary. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Three-node topology: BNG Blaster (subscriber simulator) → BNG → FRR (core router). Includes both untagged (config.json) and QinQ 802.1ad (qinq.json) subscriber configs. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
bbcdd05 to
4958d59
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
codelaboratory_bngas a new containerlab kind for Code Laboratory's eBPF/XDP-based Broadband Network GatewayNET_ADMIN+BPFcapabilities (much lighter than VPP/DPDK-based BNGs which needSYS_ADMIN,IPC_LOCK,SYS_NICE,SYS_RAWIO)What is Code Laboratory BNG?
An eBPF/XDP-based BNG designed for ISP edge deployment on OLT hardware. It uses a two-tier DHCP architecture:
Image:
ghcr.io/codelaboratoryltd/bng:latestFiles
nodes/codelaboratory_bng/codelaboratory_bng.gocore/register.go(+2 lines)lab-examples/bng01/(topology + configs)docs/manual/kinds/codelaboratory_bng.md,docs/lab-examples/bng01.mdmkdocs.yml,docs/manual/kinds/index.mdTest plan
make buildsudo clab deploy -t lab-examples/bng01/bng01.clab.ymldocker logs clab-bng01-bng1docker exec clab-bng01-corerouter1 vtysh -c "show ip route"docker exec clab-bng01-subscribers bngblaster -C /config/config.json -bsudo clab destroy -t lab-examples/bng01/bng01.clab.ymlTested end-to-end on Ubuntu 24.04 arm64 (Lima VM) with BNG Blaster 0.9.31 built from source. Also verified via CI workflow in bng-edge-infra.
🤖 Generated with Claude Code