Lição 02 · Unit 1 · Networking for a Backend Engineer & Application Support
The Triage Ladder
The ticket says: "service A can't reach service B." The worst response is to guess. The best response is a fixed sequence of questions, asked in order, each answered by one tool. That sequence is the triage ladder, and it's the skeleton of this whole course.
The four stages become five questions — each one only worth asking if the previous rung passed:
| # | Question | Tool | Healthy answer |
|---|---|---|---|
| 1 | Does the name resolve? | dig | An IP address comes back |
| 2 | Is the port reachable? | curl -v / nc | "Connected to … port …" |
| 3 | Does TLS complete? | openssl s_client | "Verify return code: 0 (ok)" |
| 4 | Does the app answer? | curl -v | An HTTP status code — any code |
| 5 | Is the path sane? | mtr / traceroute | Hops reach the destination |
Two rules make the ladder powerful:
- Climb in order. "Is TLS broken?" is meaningless if the name doesn't even resolve. Every rung assumes the ones below it passed.
- A passing rung rules things out. If
curl -vsays "Connected", the network path, firewall, and listener are all fine — whatever is wrong lives above rung 2. Elimination is the diagnosis.
Climb the ladder — click the questions in triage order:
curl -v shows "Connected to b.internal (10.0.4.12) port 443" then hangs on
"TLS handshake". Which rungs have PASSED?
Which tool owns rung 1 of the ladder?
Service B returns HTTP/1.1 503 Service Unavailable. What kind of problem is
this, per the ladder?
Keep the printable version handy: Triage Ladder reference.
Networking! ACK! — Julia Evans (paid zine, one page per tool: dig, nc, curl, tcpdump). The friendliest tool-per-question map of this exact ladder.
Sou seu professor — traga suas perguntas difíceis de “mas por quê”. Exporte seu progresso na página do curso e cole no /teach.