Getting Started

Resources and Prerequisites

This page lists the main resources and target deliverables for this learning path. Detailed references are linked from their relevant chapters.

Content Sources

SourceWhat It Provides
eBPFHub exercisesHands-on coding exercises with an in-browser editor and server-side runner
iximiuz labsInteractive networking and Linux fundamentals courses (especially Computer Networking Fundamentals)
xdp-tutorialOfficial XDP tutorial repo with progressive exercises from basic to advanced packet processing

Reference Projects

SourceDescription
KatranFacebook L4 load balancer (XDP). Read README.md now; study xdp_root.c in later chapters.
lb-from-scratchLiz Rice’s load balancer built from scratch - you must complete this
reuseport-ebpf-goRead after completing lb-from-scratch
DnsTraceDNS tracing project
eBPFeXPLOITeBPF exploit examples
bngBNG project

Target Deliverables

These are the projects you should produce by the end of this learning path:

  1. L4 Load Balancer - eBPF/XDP based (challenge)
  2. DDoS Engine - XDP ingress filtering
  3. DNS Policy Filter - DNS query-based filtering
  4. DNS Resolver (optional) - challenge
  5. DNS Forwarder (optional) - challenge