Adds all 6 ROOT 02 modules (Linux system administration, storage & filesystems, the Networking Mental Model, Linux network inspection, DNS & HTTP, Linux troubleshooting) — 37 activities, each with a real lesson, demonstration/guided exercise, knowledge check, hands-on Lab, and reflection. The Networking Mental Model module (M3) gets deliberately extra depth per its "critical module" designation, with no lab by design — conceptual mastery via knowledge check and guided exercise, matching root-05-m00's own precedent. Adds 6 new hands-on Linux/networking scenarios plus 2 MCQs: linux-service-inspection (inspects the platform's own real nginx without touching it — a genuinely safe, real service-inspection target that avoids ever risking the Lab's own connectivity), linux-service-lifecycle (start/ verify/stop a fully controllable service), linux-storage-inspection, linux-network-inspection (ip/ss/getent/curl, each framed as answering one specific diagnostic question), linux-dns-http-diagnosis (a genuine DNS-resolves-but-wrong-port failure, diagnosed and fixed), and linux-troubleshooting-framework (a real missing-config-file failure, resolved via the RootNode Observe/Evidence/Hypothesis/Test/Repair/Validate/Prevent framework). All tested end-to-end via the real scenario-validation API, including negative tests confirming they fail when unsolved. Wires rootnode-linux-networking-assessment (2 required + 4 random-draw scenarios) using the existing Phase 3B assessment engine. Co-Authored-By: Claude Sonnet 5 <[email protected]>
46 lines
1.5 KiB
Markdown
46 lines
1.5 KiB
Markdown
# Knowledge Check: Networking Mental Model
|
|
|
|
---
|
|
|
|
**1. What's the actual difference between an IP address and a port?**
|
|
|
|
*Answer:* An IP address identifies a specific machine on a network; a port identifies WHICH
|
|
service on that machine, since one IP can host many services simultaneously.
|
|
|
|
---
|
|
|
|
**2. `curl` reports "Could not resolve host." Which layer failed?**
|
|
|
|
*Answer:* DNS — the name never got translated into an IP address, so no connection attempt was
|
|
even made.
|
|
|
|
---
|
|
|
|
**3. `curl` reports "Connection refused" instead. What does that specifically tell you?**
|
|
|
|
*Answer:* The name resolved fine and the destination was reachable, but nothing is listening on
|
|
the port you tried — the connection attempt was actively rejected, not silently ignored.
|
|
|
|
---
|
|
|
|
**4. What is a default gateway for?**
|
|
|
|
*Answer:* It's where your machine sends traffic whose destination ISN'T in its own local subnet
|
|
— effectively "ask this router to figure out how to get there."
|
|
|
|
---
|
|
|
|
**5. True or false: `0.0.0.0` is a real destination address you could `curl`.**
|
|
|
|
*Answer:* False (in the way most students initially assume) — when a SERVICE binds to
|
|
`0.0.0.0`, it means "listen on every interface," a bind convention, not a real host you'd
|
|
connect to as a destination.
|
|
|
|
## Instructor Notes
|
|
|
|
**Facilitation:** Questions 2-3 are worth spending real time on together — the point isn't
|
|
memorizing the exact error text, it's the underlying "which layer does this rule out" reasoning.
|
|
|
|
**Approximate timing:** 8 minutes (slightly longer than a typical knowledge check, given this
|
|
module's weight).
|