How this course works
SpatiumDDI Academy teaches you to run SpatiumDDI, the open-source DNS, DHCP and IPAM platform, by building one realistic network in a lab on your own machine. This page takes ten minutes. It tells you which parts to take, what’s inside a module, how the labs grade your work, and the conventions the rest of the course relies on.
Who it’s for
Section titled “Who it’s for”The Academy is for the people who run DDI day to day:
- NOC technicians and help-desk leads who allocate addresses, publish records and answer “why doesn’t this resolve?”
- LAN and network engineers who own the address plan, the zones and the scopes
- System administrators who run the platform itself: access, sign-in, backups and upgrades
- MSP engineers who run SpatiumDDI for client networks
You should already know the networking basics: IP addressing and CIDR, subnets, and what DNS and DHCP do. You don’t need to know SpatiumDDI, and you don’t need to know Kubernetes. The labs need a computer that can run Docker; Set up your lab lists the requirements.
Choose your path
Section titled “Choose your path”Pick the row that matches your job. Each path includes everything in the row above it.
| Your role | Take | You’ll be able to |
|---|---|---|
| Operator | Start here, Part 1 · Foundations and the Field guide | Build and run the address plan, DNS zones, DHCP scopes and hosts |
| Administrator | The operator path, plus Part 2 · Administration | Run SpatiumDDI for a team: access, API, audit, monitoring, backups and upgrades |
| Architect or MSP engineer | The administrator path, plus Part 3 · Architecture & operations | Design, harden and migrate real deployments |
| Part | Modules | Hands-on | Time |
|---|---|---|---|
| Start here | 4 | Lab 0 | About 50 min |
| Part 1 · Foundations | 1.1–1.8 | 7 videos, Labs 1–6 | About 3 h 30 min |
| Part 2 · Administration | 2.1–2.6 | 6 videos, Labs 7–12 | About 3 h |
| Part 3 · Architecture & operations | 3.1–3.6 | Diagrams and decision helpers, no labs | About 2 h 45 min |
| Field guide | 4 reference pages | Tips, troubleshooting, quick reference, glossary | Dip in as needed |
Take the modules in order. Each lab builds on the network the previous labs left behind, and its checks look for that state: Lab 3 needs the zone from Lab 2, and several of Part 2’s labs use the subnet you build in Part 1.
How a module works
Section titled “How a module works”Modules in Parts 1 and 2 follow the same pattern. Module 1.1 has no video or lab, module 1.3 has no lab, and Part 3 has no videos or labs.
- The header strip shows the module’s level and time, and what it contains: a narrated video, an interactive walkthrough, a lab, a knowledge check.
- The introduction and “What you’ll learn” name the job the module prepares you for.
- A narrated video shows the whole flow on a real SpatiumDDI
1.0.0-beta.3. Captions are on by default. Click a chapter to jump to it, or open the transcript and click a timestamp. - A walkthrough replays the same flow as still screens. Start it with Try it yourself, then click the highlighted control to move on, exactly as you would in the product. ← Back, Skip → and the arrow keys move between steps. Use it to rehearse before the lab.
- Concept sections explain why things work the way they do. Two kinds of note stand out: From the field notes describe pitfalls operators really hit, with their source, and architecture notes explain what happens underneath.
- A hands-on lab lists its objectives and steps. Tick each step as you go; the ticks are remembered. Then run the lab’s check.
- A knowledge check asks six questions. Check answers shows an explanation and a docs reference for every question, and Try again resets it. Aim for 80% or better.
- Go deeper links to the official SpatiumDDI documentation.
- Mark complete, at the bottom of the page, records the module as done.
Labs and the checker
Section titled “Labs and the checker”Every lab runs against the same lab environment: a real SpatiumDDI on your machine, with a BIND9 DNS server and a Kea DHCP server attached. When you finish a lab’s steps, run its check from the course folder, the folder that contains lab/:
./lab/check.sh 1The checker reads the lab’s database without changing anything and asks BIND9 for live answers. It prints ✓ or ✗ for each check, with a hint under every ✗:
Lab 1 · First sign-in and platform settings ✓ The default admin password has been replaced password changed ✗ The environment banner is on banner is off or has no text hint: Settings → Branding & URL → Environment banner: turn it on and give it a label such as “RIDGELINE COLLEGE — TRAINING LAB”.
1/2 checks passedFix what the hint points at and run the check again. When everything passes, tick I finished this lab and the checks pass on the lab card. ./lab/check.sh 2,5 grades several labs, and ./lab/check.sh all grades all of them.
Your progress stays in your browser
Section titled “Your progress stays in your browser”- The Academy has no account and sends nothing anywhere. Completed modules, knowledge-check scores, lab ticks and practice-exam results are kept in your browser’s local storage.
- A completed module gets a ✓ in the sidebar, and Your progress shows Parts 1–3 in one table. The Start here pages aren’t tracked.
- Use the same browser on the same computer to keep your record. A private window starts empty, and clearing this site’s data erases your progress. Reset my progress on the progress page does the same on purpose.
Conventions
Section titled “Conventions”| You see | It means |
|---|---|
| Add Zone | An exact label in the interface: a button, tab, field or menu item |
| Settings → Branding & URL | A path through menus or pages |
corp.example.edu |
Something you type or run, or a value you’ll see |
<your-token> |
A placeholder: replace it, angle brackets included, with your own value |
| Ctrl/⌘+K | A keyboard shortcut: Ctrl on Windows and Linux, ⌘ on macOS |
Commands have no prompt character, so you can copy them as they are. Run ./lab/… commands from the course folder, and docker compose commands from inside lab/. On Windows, run everything from a WSL 2 shell.
The running example: Ridgeline College
Section titled “The running example: Ridgeline College”Every lab, video and question uses one fictional network: Ridgeline College, the one-campus college from SpatiumDDI’s own Getting Started guide. You build it module by module.
| Thing | Value |
|---|---|
| DNS and DHCP server groups | default (the lab’s BIND9 and Kea servers register into them) |
| Forward zone | corp.example.edu |
| IP space and block | Campus, block 10.20.0.0/16 “Ridgeline campus” |
| Staff subnet | 10.20.21.0/24 “Staff VLAN 21” (one /24 per VLAN: 10.20.<VLAN>.0/24) |
| Reverse zone | 21.20.10.in-addr.arpa, which SpatiumDDI creates with the staff subnet |
| First host | print-01 = 10.20.21.10 |
| Lab addresses | Web UI and REST API http://localhost:8077 (the API under /api/v1/…), DNS dig @127.0.0.1 -p 1053 … |
One product version
Section titled “One product version”The course is version 2026.11 and targets SpatiumDDI 1.0.0-beta.3, a pre-release of 1.0, recorded during the project’s feature freeze ahead of 1.0.0. The lab pins that exact version (SPATIUMDDI_VERSION in lab/.env), and every video, screenshot and check was recorded against it.
- A beta is a GitHub pre-release. The
latestimage tag doesn’t point at it and SpatiumDDI never offers it as an update, so you install it by naming its version, as the lab does. - Releases were numbered by date up to 2026.10.02-1. From the 1.0 betas on, they use semantic versions such as
1.0.0-beta.3, and every one of them is newer than every dated release. - SpatiumDDI is still beta software, so a newer release can move a button or change a default. Keep the lab on the pinned version while you take the course.
A note marked “Verified in the Academy lab, 1.0.0-beta.3” describes behavior seen on that release, including a few bugs. Check the release notes before you rely on it with a newer one. If you took the 2026.9 edition of the course, which targeted 2026.09.04-1, What’s new in this edition lists what changed.
Certification
Section titled “Certification”The course prepares you for the SpatiumDDI Certified Operator exam:
- Exam blueprint: what the exam covers, its six weighted domains, and which module teaches each objective.
- Practice exam: 30 questions drawn from a bank and weighted like the real exam, with a score per domain. The pass mark is 80%, and every attempt draws a new set.
- Certificate of completion: when you pass the practice exam, add your name to print a certificate. It’s self-assessed and says so. It records that you finished the course and passed its practice assessment.
The proctored Certified Operator exam isn’t part of this site. SpatiumNorth issues that credential; the blueprint describes the exam’s format.