User-defined Playground

Ubuntu eBPF Playground

Experimental playground with out of the box eBPF support through BTF

Startup configuration
box-01
box-02
box-03
Ubuntu eBPF playground: Experimental playground with out of the box eBPF support through BTF

Ubuntu 24.04 eBPF Playground

eBPF development environment on Ubuntu 24.04 with Linux 6.18-dev kernel.

Pre-Installed Packages & Tools

  • Compilers & Toolchain: clang, llvm, binutils, build-essential, golang-go
  • eBPF: libbpf-dev, bpftrace, bcc, python3-bpfcc
  • CLI Tools:
    • bpftool (v7.7.0)
    • bpftop (v0.9.0)
    • bpfvet (v0.2.1)
  • Diagnostics: gdb, strace, clangd

Workspace & vmlinux.h

Files in /home/laborant/eBPF/:

  • bpf_helpers.h: Official libbpf helper macros.
  • vmlinux.h: Automatically dumped at boot via bpftool btf dump file /sys/kernel/btf/vmlinux format c > /home/laborant/eBPF/vmlinux.h for CO-RE kernel compatibility.

Use Cases

1. XDP Packet Filtering

Filter or redirect packets at driver level before reaching the network stack

2. Kernel Tracing (Kprobes & Tracepoints)

Trace system call invocations (execve, openat) and monitor I/O latency.

3. Userspace Tracing (Uprobes)

Trace functions in user-space programs without binary modification.

4. Monitoring & Analysis

Run bpftop for live eBPF metrics and bpfvet for verifier analysis.

Every playground includes
Learn more about playgrounds
Start
Settings