Your personal trainer for NSSA-241

Networking from zero,
in the order your brain wants it.

Your course slides contain everything you need — but shuffled across eleven decks from four different textbooks, with topics repeated, used before they're defined, and a few genuine errors. This guide is the same syllabus re-sequenced so every concept lands on one you already have, corrected where the slides slip, and rebuilt where the extraction lost the worked examples.

How this guide works

I'll talk to you like a trainer at a whiteboard, not a textbook. Every section follows the same rhythm: why this exists → how it works → a worked example with real numbers → check yourself. Read in order the first time — the sequence is the whole point. After that, use it as your library and jump around with the sidebar.

Trainer's tipShortcuts, memory hooks, and the "here's how I'd think about it" moments.
⚠ Exam trapPlaces where your slide deck is wrong or self-contradicting — with the correct, examinable fact. All twelve are also collected in Appendix A.
Worked exampleFull arithmetic, every step shown. Do these with a pen before reading the solution.
Slide mapChips like s6 · 23–27 under each heading tell you exactly which slides in which deck this section replaces — so you always know your exam coverage.

Why the order is different from your decks

Networking is a stack: each layer uses the one below it. So we learn bottom-up, and we never use a word before defining it. Your decks teach NAT before ports exist and DHCP before UDP exists; here, everything waits its turn:

PhaseYou learnReplaces (your decks)
0Binary · decimal · hex — the arithmetic under every addresss2 30–31, s6 23–27
1What a network is, topologies, the layered models, encapsulations1 (all), s2 1–28 & 42–48
2Layer 2: MAC addresses, Ethernet frames, media access, errors, ARPs2 29–34 & 49–56, s3-p1, s3-p2, s4 2–13 & 47–55
3Layer 3 as one story: IP → addressing → subnetting → ICMP → routing → IPv6s4 14–46, s6, s5 1–14, s9, s10
4Layer 4: ports, TCP, UDPs8
5DNS & DHCP — now ports 53/67/68 mean somethings7
6NAT — last on purpose: it needs L3 addresses and L4 portss5 15–32
🧭
One rule for the whole course: when you feel lost, ask "which layer am I standing on?" Every heading in this guide carries a colored layer tab — L2 · LINK L3 · NETWORK L4 · TRANSPORT L7 · APPLICATION — and every diagram uses the same colors. Copper for cables, green for routing, blue for transport, violet for applications. Let the colors do half your remembering.

Phase 0 · Foundations

Number systems TOOLKIT

Slide maps2 · 30–31s6 · 23–27, 42
By the end of this phase you can: convert any octet between binary and decimal in your head, and read hex like a second language. Every IP address, subnet mask, and MAC address in this course is just these three notations for the same bits — master this and half of subnetting is already done.

Bits, and why 8 of them matter

Computers store everything as bits — a bit is a single 0 or 1. Eight bits make a byte (networking people say octet, same thing). An IPv4 address is exactly 4 octets = 32 bits. A MAC address is 6 octets = 48 bits. So the entire addressing game is played 8 bits at a time.

The only table you need to memorize

Each bit position in an octet has a fixed weight — a power of 2, doubling right to left:

bit 7bit 6bit 5bit 4bit 3bit 2bit 1bit 0
1286432168421

Chant it left to right until it's automatic: 128 · 64 · 32 · 16 · 8 · 4 · 2 · 1. All eight together sum to 255 — the biggest value one octet can hold.

Binary → decimal: add the weights under the 1s

Worked example

Convert 10010101 to decimal.

  1. Line the bits up under the weights: 1s sit under 128, 16, 4, 1.
  2. Ignore every 0. Add what's left: 128 + 16 + 4 + 1 = 149.

Two more, do them yourself first: 11100100 → 128+64+32+4 = 228.   11000000 → 128+64 = 192 (you will see this one constantly in subnet masks).

Decimal → binary: subtract the biggest weight that fits

Worked example

Convert 94 to binary.

  1. Does 128 fit into 94? No → write 0.
  2. Does 64 fit? Yes → write 1, subtract: 94 − 64 = 30.
  3. 32 into 30? No → 0.
  4. 16 into 30? Yes → 1, remainder 14.
  5. 8 into 14? Yes → 1, remainder 6.   4 into 6? Yes → 1, remainder 2.   2 into 2? Yes → 1, remainder 0.   1? No → 0.

Read the answers top to bottom: 01011110. Sanity-check by converting back: 64+16+8+4+2 = 94 ✓

Trainer's tip

Always sanity-check by converting back the other way. It costs ten seconds and catches almost every exam slip. Also learn the "landmark" octets cold — they are the subnet-mask values: 128 = 10000000, 192 = 11000000, 224 = 11100000, 240 = 11110000, 248 = 11111000, 252 = 11111100, 254 = 11111110, 255 = 11111111. Notice the pattern: 1s fill in from the left, and each new 1 adds the next weight.

Hexadecimal: binary in groups of four

Hex (base 16) exists because writing 48-bit MAC addresses in binary would be torture. One hex digit represents exactly 4 bits (a "nibble"), so one octet is always exactly 2 hex digits. The digits run 0–9 then A=10, B=11, C=12, D=13, E=14, F=15.

DecBinHexDecBinHex
000000810008
100011910019
200102101010A
300113111011B
401004121100C
501015131101D
601106141110E
701117151111F
Worked example

Decimal → hex via binary (the safe route): convert 178.   178 = 128+32+16+2 = 1011 0010. Read the nibbles from the table: 1011=B, 0010=2 → 0xB2.

Hex → decimal directly (from your s6 slide 26): 0x4B7C. Each hex position weighs a power of 16: 4×4096 + 11×256 + 7×16 + 12×1 = 16384 + 2816 + 112 + 12 = 19,324.

⚠ Exam trap · notation damage

In your extracted notes, every superscript was flattened: "27 or 128 networks" became "27 or 128 networks", "224−2 hosts" became "224 −2", and "2128" became "2128". Whenever a bare number in your notes makes no sense, mentally re-insert the ^. In this guide every power is written explicitly.

Check yourself — Phase 0
Convert 11101010 to decimal.

128+64+32+8+2 = 234.

Convert 200 to binary.

200−128=72 → 72−64=8 → 8−8=0. Bits at 128, 64, 8: 11001000.

What is 0x6C in binary and decimal? (First octet of the MAC 6C:F0:49:68:95:68 from your slides.)

6 = 0110, C = 110001101100 = 64+32+8+4 = 108.

Why does a subnet mask octet of 224 mean "3 bits borrowed" in that octet?

224 = 11100000 — exactly three leading 1s. Mask 1s mark network/subnet bits; you'll use this in Phase 3.3 daily.


Phase 1 · Foundations

The big picture MODELS

Slide maps1 · all 74s2 · 1–28, 42–48
By the end of this phase you can: define a network and its five components, classify links, topologies and network sizes, explain why we layer protocols, name every OSI and TCP/IP layer with its job and its PDU, and narrate encapsulation from application data down to bits on a wire.

What is data communication?

Data communication is the exchange of data between two devices over some transmission medium. For it to be worth anything, the system must deliver to the right destination (delivery), unchanged (accuracy), on time (timeliness), and with even spacing between packets (low jitter — jitter is variation in packet arrival time; it's why a video call stutters even when the average speed is fine).

Every data communication system has exactly five components — this is a classic exam list:

  1. Message — the information itself (text, numbers, images, audio, video).
  2. Sender — the device that sends it.
  3. Receiver — the device that gets it.
  4. Medium — the physical path (twisted pair, coax, fiber, radio waves).
  5. Protocol — the agreed rules. Without a protocol, devices are connected but not communicating — like an Arabic speaker and a Japanese speaker in the same room.

Data flow: three traffic patterns

ModeWho can talkAnalogyExample
SimplexOne direction only, everOne-way streetKeyboard → computer, computer → monitor
Half-duplexBoth directions, one at a timeSingle-lane bridgeWalkie-talkies ("over!")
Full-duplexBoth directions simultaneouslyTwo-way streetTelephone call; modern switched Ethernet

Judging a network: performance, reliability, security

Networks are judged on three criteria. Reliability = how rarely it fails and how fast it recovers. Security = protecting data from unauthorized access and damage, plus having a recovery plan. Performance needs more care, because four similar-sounding words get mixed up:

TermWhat it really meansThink of it as
BandwidthThe capacity of the link — how many bits could cross per second, in theoryWidth of the pipe
ThroughputHow many bits actually cross per second, measuredWater actually flowing
GoodputThroughput counting only useful application data (headers and retransmissions removed)Water that reaches your glass
Latency / delayHow long data takes to get from A to BLength of the pipe

Bandwidth ≥ throughput ≥ goodput, always. And here's the tension your slides call "contradictory": pushing more traffic into a network (chasing throughput) creates queues, which increases delay. High throughput and low latency fight each other under load.

⚠ Exam trap · s1 slide 29

Your slide says performance "is evaluated by two contradictory networking metrics" and then lists four. The intended pair is throughput vs delay — those two are the contradictory ones. Bandwidth and goodput are just refinements of throughput.

Connections and topologies

A link connects devices in one of two ways: point-to-point (a dedicated link between exactly two devices — full capacity reserved, like a TV remote to a TV) or multipoint (more than two devices share one link — capacity shared in space or in time). The physical topology is the geometric layout of links and nodes. Four classics:

Meshn(n−1)/2 links Starcentral hub/switch Busone backbone, taps Ringone direction, repeaters
The four base topologies. Real networks mix them (hybrid), e.g. a star backbone with bus branches.
TopologyStrengthsWeaknesses
Mesh — every pair directly linkedNo traffic sharing, robust, private, faults easy to isolateHuge cabling & port cost: n(n−1)/2 links, n−1 ports per device. Used only in limited backbones.
Star — everyone to a central deviceCheap (1 link + 1 port each), easy install/reconfigure, one cable failing affects one nodeThe center is a single point of failure — it dies, everything dies. Today's LAN standard (the center is a switch).
Bus — one shared backbone cableLeast cable, easy first installHard to add/troubleshoot; a break kills the whole segment and reflects noise both ways. Historic (early Ethernet).
Ring — each node to its two neighborsEasy install, simple fault isolationUnidirectional; one broken device can disable the ring. Historic (Token Ring).
Worked example

Mesh with 8 devices: links = 8×7/2 = 28; ports per device = 8−1 = 7. This exact calculation is on s1 slide 43 — practice it with n = 5 and n = 10.

Sizing networks: LAN, MAN, WAN — and the Internet

LAN: privately owned, one office/building/campus, a few kilometers at most, built to share resources. WAN: long-distance — country, continent, world; think leased lines and the internet backbone. MAN: in between — a town or city (e.g., the telco network delivering DSL across a city). Connect two or more networks and you have an internetwork, or "internet" with a small i. The Internet (capital I) is the famous internetwork: hundreds of thousands of interconnected networks, glued together by ISPs arranged in tiers (international → national → regional → local), meeting at exchange points.

Brief history worth knowing for the exam: mid-1960s ARPA (US DoD) wants to connect research mainframes → 1969 ARPANET goes live with four university nodes talking through IMPs → 1972 Vint Cerf & Bob Kahn invent TCP, which later splits into TCP and IP — the two protocols this whole course orbits.

Protocols and standards

A protocol is a set of rules governing communication — it defines what is communicated, how, and when. Every protocol has three elements:

  • Syntax — the structure/format of the data (e.g., "first 8 bits are the sender address").
  • Semantics — what each part means (is that address the next hop, or the final destination?).
  • Timing — when to send and how fast (a 100 Mbps sender will drown a 1 Mbps receiver).

Standards are agreed-upon rules that make an open, interoperable market possible. Two flavors: de facto ("in fact") — adopted through widespread use without official blessing; de jure ("by law") — ratified by a recognized body (ISO, ITU-T, ANSI, IEEE, EIA…). Internet standards start life as an Internet Draft (6-month working document), then get published as an RFC (Request for Comments), numbered and public. When you see "RFC 791" in this guide, that's the actual law of IP.

Layering — the single most important idea in this course

Why it exists

Building "a network" as one giant program is impossible to design, debug, or upgrade. So we divide and conquer: split the job into layers, each solving one part of the problem, each providing a service to the layer above and consuming services from the layer below through a clean interface. You can then swap out one layer (say, WiFi for Ethernet) without touching the others. Human analogy: a CEO dictates a letter (application), a secretary formats and envelopes it (presentation/transport), the mailroom addresses it (network), the courier drives it (link/physical). The CEO neither knows nor cares which road the courier takes.

Two models to know. The OSI model (ISO, 1984) is the 7-layer reference model — a thinking tool; almost nothing implements it exactly, but everyone uses its vocabulary. The TCP/IP model is what the Internet actually runs — commonly drawn with 5 layers (this course's convention), collapsing OSI's top three into one:

OSI — 7 layers
7 · Application user interface
6 · Presentation translate · encrypt · compress
5 · Session establish · manage · end
4 · Transport process ↔ process
3 · Network host ↔ host, routing
2 · Data Link node ↔ node on a link
1 · Physical bits on the medium
TCP/IP — 5 layers
Application HTTP · DNS · FTP · SMTP
Transport TCP · UDP
Network / Internet IP · ICMP
Data Link Ethernet · 802.11 · ARP
Physical cables · radio · signals
PDU & devices at each layer
data clients / servers
segment (datagram for UDP)
packet routers · L3 switches
frame switches · bridges · NICs
bits hubs · repeaters · cables

PDU = Protocol Data Unit, the name of "one chunk" at each layer. Memorize the column: data → segment → packet → frame → bits.

Trainer's tip

Layer mnemonics, bottom-up: "Please Do Not Throw Sausage Pizza Away". Top-down: "All People Seem To Need Data Processing". And keep this jobs-in-five-words table taped to your brain:

LayerJob in five wordsAddress / example protocols
L7 ApplicationWhat the user actually wantsURLs, email addresses · HTTP, DNS, FTP, SMTP
L6 PresentationTranslate, encode, compress, encryptASCII/UTF-8, JPEG, MPEG, TLS
L5 SessionOpen, manage, close dialogsSIP
L4 TransportProcess-to-process delivery, reliabilityPort numbers · TCP, UDP
L3 NetworkHost-to-host across networks (routing)IP addresses · IP, ICMP, RIP/OSPF
L2 Data LinkNode-to-node on one linkMAC addresses · Ethernet 802.3, 802.11, ARP
L1 PhysicalBits become signals on media— · cabling specs, Manchester encoding

Encapsulation: how the layers actually cooperate

When you send anything, each layer wraps the layer above's output with its own header (and, at L2, also a trailer) — like nesting envelopes. The receiver unwraps in reverse (de-encapsulation). Here's an FTP file transfer leaving Device A, exactly as on your s2 slide 43:

FTP header your file data L7 — data
TCP header ( FTP + data ) L4 — segment
IP header ( TCP + FTP + data ) L3 — packet
802.3 header ( IP + TCP + FTP + data ) CRC trailer L2 — frame
1 0 1 0 1 0 1 1 0 1 0 1 0 0 1 0 1 0 1 … L1 — bits on the medium

Three facts to internalize now, because Phases 2–3 lean on them constantly: (1) a frame carries a packet, which carries a segment — never the other way around; (2) each layer only reads its own header; (3) routers unwrap to L3 and re-wrap in a fresh L2 frame at every hop — remember this, it becomes the star of the Phase 2 finale.

Check yourself — Phase 1
Name the five components of a data communication system.

Message, sender, receiver, medium, protocol.

A walkie-talkie conversation is which data-flow mode, and why isn't it full-duplex?

Half-duplex — both sides can transmit but only one at a time; the whole channel capacity goes to whoever holds the button.

Your ISP sells you "100 Mbps" but a download runs at 74 Mbps and only 68 Mbps of that is file content. Name each number.

100 Mbps = bandwidth (capacity), 74 Mbps = throughput (actual bits), 68 Mbps = goodput (useful data after headers/retransmissions).

How many links does a full mesh of 6 devices need?

6×5/2 = 15 links, and each device needs 5 ports.

What is the PDU at layers 4, 3, and 2? Which device natively lives at each?

L4 segment (hosts' TCP/UDP software), L3 packet (routers), L2 frame (switches/NICs).

De facto vs de jure standard — which is Ethernet's story?

De facto = adopted by widespread use; de jure = ratified by an official body. Ethernet began de facto (DEC-Intel-Xerox "DIX") and became de jure as IEEE 802.3.


Phase 2 · The stack, bottom-up

Ethernet & the link layer L2 · DATA LINK

Slide maps2 · 29–34, 49–56s3-p1 · alls3-p2 · alls4 · 2–13, 47–55
By the end of this phase you can: read and write MAC addresses, dissect an Ethernet frame field-by-field, explain how many devices share one medium without chaos (CSMA/CD vs CSMA/CA vs the rest), catch transmission errors with parity/checksum/CRC, run ARP in your head, and — the finale — trace a packet across two networks watching MAC addresses change while IP addresses don't.

The link layer's one job

Layer 2 moves a datagram from one node to the physically adjacent node, over a single link. That's it. Not across the world — just this one hop. Terminology: hosts and routers are nodes; the channels between adjacent nodes are links; the L2 packet is a frame, and it encapsulates the L3 datagram. A datagram crossing the Internet may ride WiFi on the first link, fiber Ethernet on the next, and something else after that — a different L2 protocol per link, like a traveler using taxi → plane → train on one trip. Each link protocol offers its own services:

  • Framing — wrap the datagram with a header and trailer; add MAC addresses.
  • Link access — decide who may transmit when the medium is shared (the "MAC protocol" — Section below).
  • Error detection — spot bits flipped by noise/attenuation; usually drop the bad frame.
  • Error correction — some links can even fix bit errors without retransmission.
  • Reliable delivery & flow control — used on high-error links like wireless; rarely on clean wired links (TCP handles end-to-end reliability anyway).

Where does L2 live in your machine? On the NIC (network interface card) — a mix of hardware, firmware and driver software. The NIC implements the link and physical layers.

The two sublayers: LLC and MAC

IEEE splits the data-link layer in two. Get this right — your slides contradict themselves here one slide apart:

SublayerStandardActually responsible for
LLC — Logical Link Control (upper)IEEE 802.2The bridge between networking software above and hardware below: identifies which L3 protocol is inside the frame; can offer optional flow/error services to upper layers.
MAC — Media Access Control (lower)part of 802.3Framing (data encapsulation), MAC addressing, the FCS/CRC error check, and media access — who talks and when.
⚠ Exam trap · s3-p2 slides 8 vs 9

Slide 8 claims "LLC handles framing, addressing and error control (CRC)". Slide 9 — one slide later — correctly assigns encapsulation and media access to the MAC sublayer. Slide 9 is right. Per IEEE 802.3: framing, addressing and the FCS belong to MAC; LLC's job is protocol identification and the software/hardware interface. If asked, answer with slide 9's version.

MAC addresses: the L2 identity

Every interface on a LAN has a 48-bit MAC address ("physical address"), written as 12 hex digits in pairs: 6C:F0:49:68:95:68. Two hex digits = one octet, so 6 groups = 6 octets = 48 bits. The address splits in half:

  • First 24 bits: OUI (Organizationally Unique Identifier) — the vendor code, assigned by IEEE. AA-00-00 was DEC, 08-20-00 was Sun.
  • Last 24 bits: a vendor-assigned unique serial number.

MAC addresses are flat — they carry no location information. Analogy from your slides: MAC is like a national ID number (unique to you, follows you anywhere), IP is like a postal address (tells the world where you currently are). That flatness is exactly why MAC alone can't route between networks — hold that thought for Phase 3.

Three kinds of destination MAC:

TypeRuleExample
UnicastOne specific NIC. The I/G bit — the least-significant bit of the first octet — is 0.02:00:00:00:00:00 · fe:fe:fe:fe:fe:fe
MulticastA group of NICs. I/G bit is 1 (first octet is odd).01:00:5E:… (IPv4 multicast) · 49:aa:bb:cc:dd:ee
BroadcastEvery NIC on the LAN. All 48 bits set.FF:FF:FF:FF:FF:FF
⚠ Exam trap · s2 slide 34 / s3-p2 slide 16

Those slides annotate unicast as "(begin with 00)" and broadcast as "(begin 11)". That's muddled — the same slides state the real rule two lines lower: it's the least-significant bit of the most-significant octet that decides. 0 → unicast, 1 → multicast/group. Test: is the first octet's value even or odd? 49 hex = 01001001 → odd → multicast, even though it doesn't "begin with" anything special. Broadcast is simply all Fs.

Trainer's tip · the weird bit-order slide

s2 slide 33 shows a MAC's binary looking "reversed". Decoded: on the wire, classic Ethernet transmits each octet least-significant bit first. So F0 = 11110000 in memory goes out as 00001111. You'll never compute this in an exam — just recognize what that slide was trying (and failing) to say.

Assignment methods: overwhelmingly static (burned in by the vendor, uniqueness guaranteed). Dynamic/random selection exists too — modern phones randomize their MAC per WiFi network for privacy (they set the "locally administered" bit).

Ethernet: the LAN that won

Ethernet is a family of LAN technologies standardized as IEEE 802.3, operating at Layers 1 and 2. It defeated every rival (Token Ring, FDDI, AppleTalk's LANs…) by being simple, cheap, and relentlessly upgraded: 10 Mbps → 100 Mbps ("Fast") → 1 Gbps → 10 / 40 / 100 Gbps, all keeping the same frame format. Decoding the old names: 10Base5 = 10 Mbps, Baseband signaling, 500 m thick coax ("Thicknet"); 10Base2 = thin coax; 10BaseT = twisted pair; 100BaseT, 100BaseFX (fiber), and so on — the prefix is speed, the suffix is the medium.

Character sheet: Ethernet is connectionless (no handshake between NICs) and unreliable (no ACKs at L2 — if a frame fails the CRC it's silently dropped; recovery, if any, is TCP's problem). Modern Ethernet on a switch runs full-duplex point-to-point links, so today's frames essentially never collide — but the CSMA/CD story below is both exam material and the reason the protocol looks the way it does.

The Ethernet frame, byte by byte

8 bytes6 bytes6 bytes246 – 1500 bytes4 bytes
Preamble10101010…× sync Destination MAC Source MAC Type Data + padding the L3 packet lives here FCSCRC-32

Ethernet II framing — what virtually all traffic uses today. Colors: gray = physical sync, copper = L2 fields, green = the L3 payload being carried.

  • Preamble — 8 bytes of alternating 1010… so receiver and sender clocks lock. (In the 802.3 variant it's 7 bytes of preamble + a 1-byte SFD, 10101011, whose final 11 says "the frame starts now".)
  • Destination / Source MAC — 6 bytes each. A NIC accepts a frame only if the destination matches its own address, a group it joined, or broadcast; otherwise it discards it.
  • Type (Ethernet II) — which L3 protocol is inside, used to hand the payload upward: 0x0800 IPv4, 0x0806 ARP, 0x86DD IPv6. The legacy 802.3 format puts a Length here instead — the trick: values ≤ 1500 are lengths, values ≥ 0x0600 (1536) are types. One field, never both.
  • Data + padding — 46 to 1500 bytes. Under 46? Ethernet pads it up. 1500 is the famous MTU you'll meet again in Phase 3 fragmentation and Phase 4 MSS.
  • FCS — a 4-byte CRC-32 over the frame. Receiver recomputes; mismatch → drop, no apology.
Trainer's tip

Minimum frame = 6+6+2+46+4 = 64 bytes (preamble not counted). That minimum isn't arbitrary — it guarantees a station is still transmitting when a collision signal from the far end of the cable could arrive, which is what makes collision detection possible. Everything in Ethernet's design traces back to CSMA/CD.

Media access: sharing one channel without chaos

Why it exists

Put several stations on one shared medium (old coax Ethernet, WiFi's air) and two may transmit at once — their signals mix into garbage: a collision. A multiple-access (MAC) protocol is the distributed algorithm deciding who talks when — and here's the elegant difficulty: the stations can only coordinate using the very channel they're fighting over. There's no side channel, no referee.

Every MAC protocol ever invented falls into three families:

1 · Channel partitioning

Pre-slice the channel and give each node its own slice. TDMA slices time: rounds of N fixed slots, one per station — your slot, your turn, even if you're silent (idle slots are wasted). FDMA slices frequency: each station gets a private band forever. (CDMA slices by code — mentioned for completeness.) Fair and collision-free at high load; wasteful at low load — a lone busy station still gets only R/N of the capacity.

2 · Random access

No slicing: when you have data, blast at the full rate R and accept that collisions happen; the protocol defines how to detect and recover (random-delay retransmissions). Family members: ALOHA, slotted ALOHA, CSMA, CSMA/CD (Ethernet), CSMA/CA (WiFi). Brilliant at low load — one station can use everything; degrades under heavy load as collisions mount.

3 · Taking turns

Best of both, in theory. Polling: a master invites each node in turn (Bluetooth) — no collisions, but polling delay and the master is a single point of failure. Token passing: a special token frame circulates; hold the token, you may transmit (Token Ring, FDDI) — decentralized, but a lost token or one dead node can stall everyone.

CSMA/CD — Ethernet's classic algorithm

CSMA = Carrier Sense Multiple Access: listen before transmitting; if the channel is busy, wait — don't interrupt. /CD = Collision Detection: listen while transmitting too. The full recipe:

  1. Sense the carrier. Busy → defer.
  2. Idle → transmit the frame, ears still open.
  3. Collision heard mid-transmission → abort immediately (why waste the channel finishing a corpse?), send a short jam signal so everyone notices.
  4. Wait a random backoff, then retry. The delay is drawn by binary exponential backoff: after the n-th collision, pick randomly from a window that doubles each time — the network self-calms under load.

CSMA/CA — why WiFi must avoid instead of detect

A radio can't hear a whisper of a collision while it's shouting — its own transmission drowns everything (and the hidden node problem means two senders may not hear each other at all, only the poor receiver between them hears the mess). So 802.11 switches strategy from detect to avoid: wait when the channel is busy, back off before transmitting, get link-level ACKs, and optionally reserve the channel first with a tiny RTS/CTS (request-to-send / clear-to-send) exchange.

CSMA/CDCSMA/CA
StrategyDetect collisions after they start; abort fastAvoid collisions before they happen
WhereWired — IEEE 802.3 Ethernet (legacy shared media)Wireless — IEEE 802.11 WiFi
Why thereOn a wire, detection is cheap and reliableIn radio, detection is essentially impossible
EfficiencyHigher (recovers quickly)Lower (pays avoidance overhead every time)

Error detection: catching flipped bits

Noise and attenuation flip bits. The sender adds redundant EDC bits computed from the data; the receiver recomputes and compares. No scheme is perfect — bigger EDC fields catch more — and there are three techniques on your syllabus:

Parity

Single-bit parity: append one bit so the total count of 1s is even (even parity) or odd (odd parity). Receiver counts 1s; wrong count → error. It detects any odd number of flipped bits — and can only detect, never fix, and two flips slip through invisibly.

Two-dimensional parity: arrange the data in a grid and compute parity per row and per column. Now a single flipped bit trips exactly one row parity and one column parity — their intersection locates the bad bit, so you can flip it back: detection and correction, no retransmission needed.

⚠ Exam trap · s3-p1 slide 13

The extracted slide's layout makes "can detect and correct errors (without retransmission!)" look like a property of single-bit parity. It belongs to two-dimensional parity only. Single-bit parity = detect only.

Worked example · 2-D parity

Sender arranges 3 rows × 4 data bits, adds row + column parity (even):

data          row parity
1 0 1 1   →   1
0 1 0 1   →   0
1 1 1 0   →   1
↓ ↓ ↓ ↓
0 0 0 0       ← column parity

Now bit (row 2, col 2) flips in transit: row 2 sums odd ✗ and column 2 sums odd ✗. The crosshair points at exactly one cell — flip it back. Fixed.

Internet checksum

Used at the transport layer (UDP/TCP) but taught here as the second technique: treat the data as a sequence of 16-bit integers, add them with one's-complement arithmetic (any carry out of the top wraps around and is added back in), then take the complement — that's the checksum. The receiver sums everything including the checksum: a result of all 1s means "probably fine". Cheap and software-friendly, but weak — two errors can cancel out.

CRC

The heavyweight, done in NIC hardware: Cyclic Redundancy Check treats the frame as one huge binary number, divides it by an agreed generator polynomial, and appends the remainder. Ethernet's FCS is a CRC-32. Far stronger than parity or checksum — which is why L2, where errors are born, uses it.

ARP: gluing L3 names to L2 names L2→L3 bridge

Why it exists

Your machine wants to send an IP packet to 137.196.7.14 on its own LAN. But the Ethernet frame that will carry it needs a destination MAC, and IP addresses say nothing about MACs. ARP (Address Resolution Protocol, RFC 826) answers exactly one question: "I know the IP — what's the MAC?"

Every IP node keeps an ARP table (cache) of <IP address, MAC address, TTL> mappings for nodes on its own subnet; entries expire (typically ~20 minutes) so stale hardware changes age out. When the answer isn't cached:

Host A137.196.7.23 Host B137.196.7.14 Host C(same LAN) Host D(same LAN) ① ARP REQUEST — broadcast to FF:FF:FF:FF:FF:FF "Who has 137.196.7.14? Tell 137.196.7.23" — every NIC must process it ② ARP REPLY — unicast, only B answers "137.196.7.14 is at 58:23:D7:FA:20:B0" ③ A caches <137.196.7.14 , 58:23:D7:FA:20:B0 , TTL> and sends the real frame
ARP in action: one broadcast question, one unicast answer, then cache and go.

Mechanics worth exam marks:

  • ARP messages ride directly inside Ethernet frames — there's no IP header on an ARP packet. The frame Type is 0x0806.
  • The request is broadcast (dest FF:FF:FF:FF:FF:FF), so a switch floods it out every port and every NIC interrupts its OS to check "is that my IP?" — one reason big flat LANs get noisy. Routers do not forward broadcasts: ARP stops at the subnet edge.
  • The reply is unicast straight back to the asker. Only the owner of the target IP answers; if nobody does, the packet that needed the MAC is dropped.
  • Handy commands: arp -a (show table), arp -d (clear), arp -s (add a static entry — rare). Related species: gratuitous ARP (announce your own mapping, detect IP conflicts), proxy ARP (a router answers on behalf of someone else). In IPv6 the same job is done by ICMPv6 Neighbor Discovery (neighbor solicitation/advertisement) — no ARP.
⚠ Security note your exam loves

ARP spoofing / poisoning: ARP has zero authentication — anyone can shout "the gateway's IP is at my MAC!", and victims will happily cache the lie and send their traffic to the attacker (man-in-the-middle). Mitigations live in enterprise switches: Dynamic ARP Inspection, IP Source Guard, plus end-to-end encryption so intercepted traffic is useless.

The Phase-2 finale: one packet, two networks

This walkthrough is the exam scenario — it appears twice in your decks (s3-p2 22–27 and s4 2–13) and it's the hinge between Layer 2 and Layer 3. Host A (network 111.111.111.0) sends to Host B (network 222.222.222.0) through router R. A already knows B's IP, knows its default gateway is R (how? configuration/DHCP — Phase 5), and knows R's MAC (how? ARP, which you just learned).

network 111.111.111.0/24 network 222.222.222.0/24 A.11174-29-9C-E8-FF-55 R .110 | E6-E9-00-17-BB-4B .220 | 1A-23-F9-CD-06-9B B.22249-BD-D2-C7-56-2A frame 1 frame 2 R strips frame 1 to reach the packet, routes it, and builds a brand-new frame 2
Router interfaces each have their own IP and MAC — R is a member of both networks.
HopSrc MAC → Dst MAC changesSrc IP → Dst IP constant
Frame 1 · A → R74-29-9C-E8-FF-55 → E6-E9-00-17-BB-4B (R's near side!)111.111.111.111 → 222.222.222.222
Frame 2 · R → B1A-23-F9-CD-06-9B → 49-BD-D2-C7-56-2A111.111.111.111 → 222.222.222.222

Read the story in the table: A addresses the frame not to B's MAC (A couldn't ARP for it — ARP doesn't cross routers) but to its default gateway's MAC, while the IP header keeps the true final destination. R de-encapsulates to L3, decides the exit interface, ARPs for B on the far side if needed, and re-encapsulates the untouched packet in a fresh frame. Hence the golden rule:

🥇
L2 addresses change at every hop; L3 addresses stay the same end-to-end. MAC is local (this link only). IP is global (the whole journey). If an exam question shows you frame contents mid-path, you can now reverse-engineer where in the network the capture was taken.
Check yourself — Phase 2
Is 3B:2C:10:00:00:07 unicast or multicast?

First octet 0x3B = 00111011 — LSB is 1 (odd value) → multicast. The "begins with" heuristic from the slides would have misled you.

An Ethernet II frame arrives with Type = 0x0806 and destination FF:FF:FF:FF:FF:FF. What is it, almost certainly?

An ARP request — ARP's EtherType, broadcast to everyone. (This exact combination appears in your s2 slide 56 Wireshark trace.)

Why does WiFi use collision avoidance while wired Ethernet used collision detection?

A radio can't detect a collision while transmitting (its own signal drowns others out, and hidden nodes may be inaudible to each other), so 802.11 must avoid up front — sense, back off before sending, use ACKs and optionally RTS/CTS. On a wire, detection is cheap, and aborting early wastes less channel time.

Single-bit parity vs 2-D parity: who detects, who corrects?

Single-bit: detects odd numbers of bit errors, corrects nothing. 2-D: detects and corrects any single-bit error (row × column crosshair), and detects (but can't fix) two-bit errors.

A packet from A crosses two routers to reach B. How many different frames carried it, and did the packet's IP addresses change?

Three frames (A→R1, R1→R2, R2→B), each with fresh MAC src/dst. The IP source and destination never changed. (One exception exists — NAT — and it's Phase 6.)

Host A ARPs for a host on a different network. What happens?

Nothing useful — ARP requests are L2 broadcasts and routers don't forward them. That's exactly why A must instead ARP for its default gateway and send remote-bound frames there.


Phase 3 · The stack, bottom-up

The network layer L3 · NETWORK

Slide maps4 · 14–46s6 · alls5 · 1–14s9 · alls10 · all
This is the heart of a routing course, taught as one continuous arc instead of five scattered decks: what IP promises (3.1) → how addresses work (3.2) → how to carve networks with subnetting, CIDR and VLSM (3.3) → the network's error-and-echo system, ICMP (3.4) → how routers choose paths (3.5) → and the future, IPv6 (3.6).

3.1 · The Internet Protocol and its header

Slide maps4 · 14–32
Why IP exists

Phase 2 ended on the limit of MAC addresses: they're flat, tied to Ethernet, and say nothing about where a device is — useless for reaching another network, let alone the Internet. Layer 3 adds a logical, hierarchical, hardware-independent address (network part + host part) and the machinery to move packets between networks. Its four operations: addressing end devices, encapsulation (wrap the L4 segment in a packet), routing, and de-encapsulation at the destination.

IP's personality — three adjectives, each an exam answer:

  • Connectionless — no call setup, no handshake; every packet is launched independently and may take its own path. Need a connection? That's TCP's job, one layer up.
  • Best effort (unreliable) — IP does not guarantee delivery, order, or duplication-freedom; it never acknowledges, never retransmits. It drops packets for a reason (checksum failure, TTL expiry) and moves on. Low overhead is the whole point.
  • Media independent — IP doesn't care whether the link below is copper, fiber, or radio. The only thing it must respect is each link's MTU (maximum transmission unit — 1500 bytes on Ethernet), and when a packet is bigger than the next link's MTU, IPv4 can fragment it (below).

The IPv4 header — 20 to 60 bytes, read four bytes per row

bits 0–78–1516–2324–31
Version4 = IPv4IHL÷4 rule!Type of Servicepriority/DSCPTotal Lengthheader + data, bytes
Identificationsame for all fragments of one packetFlags–, D, MFragment Offset×8 rule!
TTLhop countProtocol6 TCP · 17 UDP · 1 ICMPHeader Checksum
Source IP Address (32 bits)
Destination IP Address (32 bits)
Options + padding (0–40 bytes, rarely used)

Blue row = the fragmentation trio. The two most important fields, per your slides: source and destination address.

The fields your exams actually compute with:

  • IHL (header length), the ÷4 rule. Four bits can only count to 15, but the header is 20–60 bytes — so the field stores length ÷ 4. Read it, multiply by 4. 0101 = 5 → 20 bytes (no options). 0110 = 6 → 24 bytes → 4 bytes of options. 0100 = 4 → 16 bytes — impossible (minimum is 20), so the packet is corrupt: drop it. That's the answer to s4 slide 30's "explain why a router dropped a packet".
  • Total Length — header + data, in bytes; 16 bits caps a packet at 65,535 bytes. Data size = Total Length − (IHL × 4).
  • TTL — despite the name, a hop counter: every router decrements it by 1; at 0 the packet is destroyed (and an ICMP message goes back — see 3.4). It exists so lost packets can't loop forever.
  • Protocol — who gets the payload upstairs: 6 = TCP, 17 = UDP, 1 = ICMP. (This is L3's version of Ethernet's Type field — every layer needs a "what's inside" pointer.)
  • Flags (3 bits) — bit 0 reserved (always 0); bit 1 = D, don't-fragment; bit 2 = M, more-fragments-follow.
Worked example · fragmentation, the full ritual

A 4,020-byte packet (20 B header + 4,000 B data) must cross an Ethernet link, MTU 1,500. Fragment data lengths must be multiples of 8 (except the last), because the offset field stores position ÷ 8.

  1. Max data per fragment = 1500 − 20 = 1480 bytes.
  2. Fragment 1: data bytes 0–1479. Offset = 0 ÷ 8 = 0, M = 1.
  3. Fragment 2: data bytes 1480–2959. Offset = 1480 ÷ 8 = 185, M = 1.
  4. Fragment 3: data bytes 2960–3999 (1,040 B). Offset = 2960 ÷ 8 = 370, M = 0 — last one.

All three carry the same Identification so the destination can group them, and each gets its own 20-byte header. Reassembly happens only at the final destination. Reading practice (your s4 slide-26 teasers): a packet with M = 0 and Offset = 0 was never fragmented — it's whole. A packet with M = 0 and Offset = 5 is the last fragment, and its data begins at byte 5 × 8 = 40.

Trainer's tip

Remember the two magic multipliers as a pair: IHL ×4, Offset ×8. Both exist for the same reason — a small field forced to describe a big number. Also note for 3.6: IPv6 routers never fragment; the source must size packets to fit.

3.2 · IPv4 addressing — prefix first, classes as history

Slide maps4 · 33–46s2 · 35–41s6 · 8–16, 29–31, 35–36

An IPv4 address is 32 bits, written as four decimal octets: 117.149.29.234 = 01110101 10010101 00011101 11101010. That gives 232 ≈ 4.3 billion addresses — which sounded infinite in 1981 and ran out in our lifetime (the "why" of NAT and IPv6, coming later).

Every address has two parts: a network portion (which network — like the street) and a host portion (which device on it — like the house number). The split point isn't visible in the address itself; a companion number declares it:

The mask, and the AND operation

The network mask is 32 bits of contiguous 1s followed by 0s: a 1 marks a network bit, a 0 marks a host bit. Written either dotted (255.255.255.0) or as a slash/CIDR prefix (/24 = "24 ones"). To extract the network a host belongs to, bitwise-AND the address with the mask — 1 AND x = x, 0 AND x = 0, so network bits survive and host bits are zeroed:

Worked example · ANDing
address 192.168.100.23  11000000.10101000.01100100.00010111
mask /24                     11111111.11111111.11111111.00000000
AND = network             11000000.10101000.01100100.00000000  = 192.168.100.0

Second rep, non-octet numbers (your s6 slide 36): 192.240.33.91 /24 → AND with 255.255.255.0 → network 192.240.33.0.

The four landmarks of any network

Given a network and its mask, four addresses matter. For 192.168.100.0/24 (8 host bits → 28 = 256 addresses):

LandmarkRuleHere
Network addressAll host bits = 0. Names the network itself — not assignable.192.168.100.0
First usable hostNetwork + 1 (often given to the gateway by convention)192.168.100.1
Last usable hostBroadcast − 1192.168.100.254
Directed broadcastAll host bits = 1. Reaches every host on that network — not assignable.192.168.100.255
🔢
The formula of the course: usable hosts = 2h − 2, where h = host bits. Minus two because the all-zeros (network) and all-ones (broadcast) patterns are reserved. /24 → 2⁸−2 = 254. You will use this fifty times in section 3.3.

Classful addressing — the history you must still know

Before masks were flexible (pre-1993), the first bits of an address hard-wired its class, and the class dictated a default mask. It was catastrophically wasteful — a company needing 300 hosts had to take a Class B block of 65,534 — which is exactly why CIDR (Classless Inter-Domain Routing) replaced it. But exams (and legacy configs) still speak classful fluently, so learn the chart cold:

ClassFirst bits1st octet rangeDefault maskNetworksHosts each
A0…1 – 126255.0.0.0 = /82⁷ = 128 defined (126 usable)2²⁴−2 = 16,777,214
B10…128 – 191255.255.0.0 = /162¹⁴ = 16,3842¹⁶−2 = 65,534
C110…192 – 223255.255.255.0 = /242²¹ = 2,097,1522⁸−2 = 254
D1110…224 – 239Multicast — destination-only group addresses, no masks/hosts
E1111…240 – 255Reserved / experimental — never assigned
⚠ Exam trap · the chart drifts across your decks

s2 slide 37 and s4 slide 40 print Class A as "1–127"; s6 slide 29 prints "1–126". 1–126 is the safe answer: network 0 is reserved, and the entire 127.0.0.0/8 block is loopback — 127 is not usable Class A space. Similarly, "128 networks" for Class A is the theoretical 2⁷; only 126 are usable.

Trainer's tip

Recognize class from the first octet alone, instantly: below 128 → A. 128–191 → B. 192–223 → C. Landmarks: 126 | 128 | 191 | 192 | 223 | 224. In binary it's even cleaner — count leading 1s before the first 0: none→A, one→B, two→C, three→D.

Special and reserved addresses

Address / blockWhat it is
127.0.0.0/8 (127.0.0.1)Loopback — packets to it never leave the machine; it tests your local TCP/IP stack. ⚠ Trap (s2/41, s4/45): your slides say it "tests the local NIC" — it does not; loopback traffic never reaches the NIC. If ping 127.0.0.1 works but pinging your own real IP fails, that difference implicates the NIC.
255.255.255.255Limited broadcast — every host on the local network; routers never forward it. (Contrast with the per-network directed broadcast, host-bits-all-1.)
169.254.0.0/16APIPA — a host that got no answer from DHCP self-assigns here (65,534 usable). Seeing 169.254.x.x on a machine = "my DHCP failed".
10.0.0.0/8 · 172.16.0.0/12 · 192.168.0.0/16Private ranges (RFC 1918) — free for anyone's internal network, not routable on the Internet. Sizes: 2²⁴, 2²⁰, 2¹⁶ addresses. These are the raw material of NAT (Phase 6). Careful: 172.16–172.31 only — 172.168.x.x (an address your s6 practice uses!) is public.
224.0.0.0 – 239.255.255.255Multicast (Class D) — destination-only group addresses. Routing protocols love them: RIPv2 announces to 224.0.0.9, OSPF to 224.0.0.5/6. ⚠ Trap (s2/40): your slide's "244.0.0.9" is a typo — 244.x is reserved Class E; the real address is 224.0.0.9.

And the three delivery types at L3, mirroring what you learned for MACs: unicast (one-to-one, source or destination), multicast (one-to-group, destination only), broadcast (one-to-all on a network, destination only — and IP broadcasts are not routable; they die at the router, same as ARP).

Check yourself — 3.1 & 3.2
An IPv4 header has IHL = 0111 and Total Length = 100. Options size? Data size?

Header = 7 × 4 = 28 bytes → options = 28 − 20 = 8 B; data = 100 − 28 = 72 B. (This is the exact exercise in your s4 slide-29 speaker notes.)

A fragment arrives: M = 1, Offset = 185. What do you know?

More fragments follow it, and its data starts at byte 185 × 8 = 1480 of the original payload — so it's a middle fragment, and the fragment before it carried exactly 1,480 data bytes.

Classify and give the default mask: 88.21.25.1 · 129.121.23.1 · 192.168.100.1 · 230.1.1.1

88 → Class A, /8.  129 → B, /16.  192 → C, /24.  230 → D, multicast — no mask, no hosts.

For 172.30.40.0/24 give the four landmarks and the usable-host count.

Network 172.30.40.0 · first 172.30.40.1 · last 172.30.40.254 · broadcast 172.30.40.255 · hosts 2⁸−2 = 254. Bonus: 172.30 is inside 172.16–172.31 → a private address.

Your laptop shows 169.254.13.7. Diagnose.

APIPA self-assignment — the machine asked DHCP and nobody answered. Check the DHCP server / connectivity to it.

3.3 · Subnetting, CIDR and VLSM — the skill of this course

Slide maps6 · all 85 (40 arrived blank — rebuilt here)
Why subnet at all

One flat network doesn't scale. Every ARP request and every broadcast hits every host — 1,000 machines on one network means 1,000 machines interrupted by each broadcast. Subnetting splits one address block into smaller networks so you can: shrink broadcast domains (performance), group by department/floor/function (organization), apply rules at the boundaries (security — routers between subnets are natural checkpoints), and waste fewer addresses. The price: routers must route between the pieces.

The one move behind everything: borrow host bits

Subnetting is a single idea wearing many costumes. You take an address block, and you extend the mask to the right — converting some host bits into subnet bits. Each borrowed bit doubles your subnets and halves each subnet's size:

192.168.10.0 /24 — the block you were given              11000000.10101000.00001010.hhhhhhhh ← 8 host bits
borrow 2 → /26 — four subnets of 62 hosts each   11000000.10101000.00001010.sshhhhhh ← 2 subnet + 6 host bits

The two formulas that drive every problem — memorize them as a pair:

2borrowed = number of subnets created  ·  2h − 2 = usable hosts per subnet (h = host bits left; −2 pays for the network and broadcast addresses of each subnet).

Two directions the exam asks from, same machinery either way:

  • "I need N subnets" → borrow the smallest b with 2b ≥ N.
  • "I need N hosts per subnet" → keep the smallest h with 2h − 2 ≥ N; borrowed = (old host bits) − h.

The magic number — subnet math without binary

Once the new mask is chosen, you need the subnet boundaries. You could count in binary; in an exam you shouldn't. Find the interesting octet (the octet where the mask is neither 255 nor 0) and compute:

Magic number = 256 − (mask value in the interesting octet). Subnets start at multiples of the magic number in that octet: 0, magic, 2×magic, … Each subnet's broadcast = next subnet's start − 1.

Your landmark-octet table from Phase 0 now pays off: mask octet 128→magic 128 · 192→64 · 224→32 · 240→16 · 248→8 · 252→4 · 254→2. Notice magic number = block size = 2(host bits in that octet).

Worked · split 192.168.10.0/24 into 2
  1. 2 subnets → borrow 1 bit → /25 = 255.255.255.128. Host bits left h = 7 → 2⁷−2 = 126 hosts each.
  2. Interesting octet = 4th. Magic = 256 − 128 = 128 → subnets start at .0 and .128.
SubnetNetworkFirst hostLast hostBroadcast
1192.168.10.0/25.1.126.127
2192.168.10.128/25.129.254.255
Worked · split 192.168.4.0/24 into 4
  1. 4 subnets → borrow 2 → /26 = 255.255.255.192. h = 6 → 62 hosts each.
  2. Magic = 256 − 192 = 64 → starts at .0, .64, .128, .192.
SubnetNetworkHostsBroadcast
1192.168.4.0/26.1 – .62.63
2192.168.4.64/26.65 – .126.127
3192.168.4.128/26.129 – .190.191
4192.168.4.192/26.193 – .254.255

Spot-check with binary intuition: .63 = 00111111 — subnet bits 00, host bits all 1s = broadcast of subnet 1. The magic method and binary always agree.

Worked · your s6 slide 48–49 problem, rebuilt

"Network 192.168.15.0. You need at least 50 hosts per subnet and at least 4 subnets." Two constraints — satisfy both:

  1. Hosts: 2h−2 ≥ 50 → h = 6 (62 ✓; h=5 gives 30 ✗).
  2. Subnets: with 8−6 = 2 borrowed → 2² = 4 subnets ✓ — both constraints land on the same split.
  3. Answer: /26 = 255.255.255.192, subnets at .0 / .64 / .128 / .192, 62 usable hosts each.
Worked · subnetting a Class B — 142.14.0.0/16, 16 subnets
  1. 16 subnets → borrow 4 → /20 = 255.255.240.0. Host bits h = 12 → 2¹²−2 = 4,094 hosts each.
  2. Interesting octet = 3rd. Magic = 256 − 240 = 16 → subnets: 142.14.0.0, 142.14.16.0, 142.14.32.0 … 142.14.240.0.
  3. Landmarks of the second subnet: network 142.14.16.0 · hosts 142.14.16.1 – 142.14.31.254 · broadcast 142.14.31.255. The host range spills across the 4th octet — that's normal whenever the interesting octet isn't the last one.
Worked · Class A scale — 10.0.0.0/8, 200–225 hosts per subnet
  1. Hosts: 2h−2 ≥ 225 → h = 8 (254 ✓). So the mask is /24 = 255.255.255.0.
  2. Borrowed = 24 − 8 = 16 bits → 2¹⁶ = 65,536 subnets: 10.0.0.0, 10.0.1.0, 10.0.2.0 … 10.255.255.0.

Feel the scale: one private Class A block comfortably numbers a corporation of tens of thousands of LANs.

⚠ Exam trap · s6's "Rules for subnets" are legacy, and the deck contradicts itself

Slide 44 declares: subnet count "must be a power of 2", all subnets "must be equal size", and "/30 is the largest usable mask". Those are the rules of classful FLSM only — and the deck's own VLSM section then breaks rule 2 on purpose. Modern truth: powers of 2 happen automatically (you borrow whole bits), VLSM makes unequal sizes the whole point, and beyond /30 there is /31 (RFC 3021, standard on router-to-router links: 2 addresses, no network/broadcast reserved) and /32 (a host route to exactly one address). If the exam asks classful questions, answer classful — but know which world you're in.

CIDR — the same slash, pointed outward

Classless Inter-Domain Routing (1993) made the prefix length explicit and free-moving: an ISP can hand you 203.0.113.0/23 (two Class-C-sized blocks fused, 510 hosts) with no class implied. Pointed inward, a longer prefix = subnetting. Pointed outward, a shorter prefix = supernetting / route aggregation: a router advertising 172.16.0.0/16 replaces 256 separate /24 routes with one line — this is what keeps the Internet's routing tables survivable. One prefix, two directions.

VLSM — subnetting the subnets

Variable-Length Subnet Masking drops FLSM's "equal sizes" straitjacket: carve each department a block that fits it, from the same parent. The algorithm is rigid — follow it in order, every time:

  1. Sort demands largest-first. (Placing big blocks first is what prevents overlap — big blocks can only start on their own large alignment boundaries.)
  2. For each demand, pick the smallest mask that fits: 2h−2 ≥ need.
  3. Allocate it at the next free boundary, which is always the previous subnet's broadcast + 1.
  4. Repeat. Whatever remains is your growth reserve.
Worked · the VLSM example your deck lost (s6 slides 70–83 arrived blank) — rebuilt in full

Parent block 192.168.10.0/24. Demands: Sales 100 hosts · Engineering 50 · Operations 25 · one router-to-router WAN link (2).

Dept (sorted)Needh → sizeMaskNetworkUsable hostsBroadcast
Sales1007 → 126/25 · .128192.168.10.0.1 – .126.127
Engineering506 → 62/26 · .192192.168.10.128.129 – .190.191
Operations255 → 30/27 · .224192.168.10.192.193 – .222.223
WAN link22 → 2/30 · .252192.168.10.224.225 – .226.227
— free —.228 – .25528 addresses in reserve
Sales /25
.0–.127
Eng /26
.128–.191
Ops /27
.192–.223
free
.228–.255

The whole /24 as a strip of 256 addresses. Each block is exactly a power of 2 wide and starts on a multiple of its own width — that alignment is why largest-first packing never overlaps. The thin violet sliver is the /30 WAN link.

Why FLSM fails here: four subnets FLSM-style forces /26 across the board — 62 hosts max. Sales needs 100: doesn't fit at all. And the WAN link would burn 62 usable addresses to connect two router interfaces. VLSM fits everything and banks 28 spares.

Trainer's tip · the three errors that kill VLSM answers

(1) Forgetting to sort largest-first — smaller blocks planted early leave misaligned gaps big blocks can't use. (2) Starting a subnet at the previous last host instead of broadcast + 1. (3) Sizing with 2h instead of 2h−2 — "need 64 hosts" requires h=7 (126), not h=6 (62). Exam writers set these traps deliberately: 50 needs /26 not /27, 100 needs /25 not /26, 2 needs /30.

Check yourself — 3.3
Subnet 172.16.0.0/16 so each subnet holds ≥ 1,000 hosts. Mask? Subnets? Hosts each?

2h−2 ≥ 1000 → h = 10 (1,022). Mask = 32−10 = /22 = 255.255.252.0. Borrowed 6 → 64 subnets, magic 4 in the 3rd octet: 172.16.0.0, 172.16.4.0, 172.16.8.0 … 1,022 hosts each.

Which subnet does host 192.168.4.137/26 live in, and what's its broadcast?

Magic = 64 → boundaries .0/.64/.128/.192. 137 falls in the .128 block → network 192.168.4.128, broadcast .191. (Fast method: largest multiple of 64 that's ≤ 137 = 128.)

142.14.0.0/16 was split /20. A host is configured 142.14.32.0 — legal?

Legal! Looks alarming (ends .0) but with /20 the interesting octet is the 3rd: 32 is a multiple of magic 16, so 142.14.32.0 is a subnet's network address — not assignable. Careful reading: as a host address it's illegal, and that's the trick — .32.0 is exactly a boundary. If they'd asked about 142.14.33.0 instead: 33 is inside the .32 subnet, host portion ≠ all-zeros → a perfectly valid host. Addresses ending in .0 are only forbidden when the whole host portion is zero.

VLSM 10.20.30.0/24 for: A=60, B=28, C=12, D and E = 2 each (two WAN links). Allocate.

Sorted: A /26 → .0 (.1–.62, bc .63) · B /27 → .64 (.65–.94, bc .95) · C /28 → .96 (.97–.110, bc .111) · D /30 → .112 (.113–.114, bc .115) · E /30 → .116 (.117–.118, bc .119) · free .120–.255.

An ISP aggregates 200.10.0.0/24 through 200.10.7.0/24 into one route. What prefix?

8 consecutive /24s = 2³ blocks → shorten by 3 bits → 200.10.0.0/21. That's CIDR pointed outward: supernetting.

3.4 · ICMP — the network's error voice and echo

Slide maps5 · 1–14
Why ICMP exists

IP is deliberately mute: best-effort means it drops packets and tells no one. ICMP (Internet Control Message Protocol) is the voice bolted onto IP — a reporting-and-diagnostics channel that says "your packet died, here's why" or answers "are you alive?". It travels inside IP packets (Protocol field = 1) yet counts as a Layer 3 protocol — the network layer talking about itself. Crucial limit: ICMP reports errors, it never fixes them; recovery is the sender's problem (usually TCP's, one layer up).

Every ICMP message carries a Type (which message) and a Code (which flavor). Two families:

Family 1 — query pairs (a question and its answer)

PairTypesWhat it does
Echo request / reply8 / 0"Are you there?" / "Yes." The engine of ping. Memorize 8 & 0 cold.
Timestamp request / reply13 / 14Clock-difference and transit-time probing between machines.
Router Advertisement / Solicitation9 / 10Hosts ask "any routers here?" (solicitation, 10); routers announce themselves (advertisement, 9) — router discovery without manual config.
⚠ Exam trap · s5 slide 3 swaps the numbers and misfiles the family

Your slide prints "Router Solicitation (IPv6) (9) · Router Advertisement (IPv6) (10)". Two errors: in ICMPv4 the assignments are Advertisement = 9, Solicitation = 10 (swapped on the slide), and the "(IPv6)" tag is wrong — IPv6's Neighbor Discovery uses ICMPv6 types 133 (RS) / 134 (RA), a different protocol with different numbers. If an exam asks for RS/RA types, first check which ICMP it means.

Family 2 — error reports (bad news about a packet)

MessageTypeMeaning & the codes worth knowing
Destination Unreachable3Delivery failed. Code 0 = network unreachable (a router had no route) · code 1 = host unreachable (network found, host silent) · code 3 = port unreachable (host reached, but no process listens on that port — sent by the destination itself, and the sign of a working traceroute finish on Unix).
Source Quench4"Slow down, I'm congested." Deprecated (RFC 6633) — it worsened congestion; TCP handles this now. Historical answer only.
Redirect5A router telling a host "there's a better first-hop router for that destination on your own LAN — use it." Optimizes the host's next choice; the current packet is still forwarded.
Time Exceeded11Code 0: TTL hit zero in transit — the router that decremented it to 0 discards the packet and sends this back. (Code 1: fragment-reassembly timer expired.) This message is the entire mechanism of traceroute.
Parameter Problem12A header field was malformed or an option missing — "your packet is broken", pointer says where.
Sanity rules that stop error loops: an ICMP error is never generated about another ICMP error, never about a broadcast/multicast destination, and only about the first fragment of a fragmented packet. Every error message carries the dead packet's IP header + first 8 data bytes, so the sender can identify which conversation died.

ping — the two-message tool you'll use forever

# "Can I reach 192.168.10.1, and how fast?"
$ ping 192.168.10.1
Reply from 192.168.10.1: bytes=32 time=1.2ms TTL=64
Reply from 192.168.10.1: bytes=32 time=0.9ms TTL=64
#   time = round-trip time (RTT);  TTL = remaining hops at arrival —
#   64/128/255 starting values hint at the OS (Linux/Windows/network gear)

Ping sends Echo Request (8); target answers Echo Reply (0). Diagnostic ladder you already half-know: ping 127.0.0.1 proves the local TCP/IP stack (never touches the NIC — Phase 3.2's trap) → ping your own IP proves the interface → ping the default gateway proves the LAN → ping a remote IP proves routing → ping a name proves DNS. Each rung isolates one failure layer. "Request timed out" = nothing answered (dead host, or a firewall silently eating ICMP — common); "Destination unreachable" = a router actively told you it has no route.

traceroute — abusing TTL to make every router confess

How the trick works
  1. Send a probe with TTL = 1. The first router decrements → 0 → discards it → sends back Time Exceeded (type 11). Its source address = router 1 identified.
  2. Send with TTL = 2: dies at the second router → it confesses. TTL = 3 → third router… each probe reaches one hop further.
  3. The final destination doesn't discard — it answers: Echo Reply (Windows tracert sends pings) or Port Unreachable, type 3/code 3 (Unix traceroute sends UDP to a deliberately absurd port). A different message type = "we've arrived, stop."
$ tracert www.rit.edu
  1    1 ms   192.168.10.1      ← your gateway (TTL=1 died here)
  2    9 ms   100.64.12.7       ← ISP edge (TTL=2)
  3   14 ms   * * *             ← a hop that ignores ICMP: normal, not broken
  4   22 ms   129.21.4.18       ← destination answered differently → done

Three probes per TTL give you three RTT samples per hop. Rising latency between two hops localizes where the slowness lives — this is how you turn "the Internet is slow" into "hop 3 is slow".

Check yourself — 3.4
Ping answers instantly from 127.0.0.1 but "request timed out" from the machine's real IP. What's proven, what's suspect?

Loopback success proves the TCP/IP stack works. Failing on the real IP implicates the NIC / driver / cable — exactly the distinction the slides blurred: loopback never touches the NIC.

A router receives a packet with TTL = 1. Walk the exact sequence.

Decrement → TTL = 0 → discard the packet → send ICMP Time Exceeded (type 11, code 0) to the packet's source, containing the dead packet's IP header + 8 bytes. The router never forwards a TTL-0 packet.

Which single ICMP type/code tells Unix traceroute "you've reached the destination"?

Type 3, code 3 — Port Unreachable, sent by the destination host itself because the probe targeted an unused UDP port. Different from the routers' type-11 chorus → arrival confirmed.

True or false: when congestion builds, routers send Source Quench to slow senders down.

False today. Type 4 is deprecated (RFC 6633) — routers must not send it, hosts ignore it. Congestion control lives in TCP now. (On a purely historical exam question, describe it — then note it's retired.)

3.5 · Routing — how the path gets chosen

Slide maps9 · all 43 (DV intro slides 1–3 were lost — rebuilt here)
Two jobs, don't blur them

Forwarding is per-packet and local: a packet arrives, the router looks up its destination in the table, shoves it out the matching interface. Microseconds, hardware. Routing is the slower, global job of building that table — deciding what the best paths are. Analogy: forwarding is a driver obeying the signs at one intersection; routing is the city planning department deciding what all the signs should say. Your s9 deck is entirely about the second job.

The table being fought over

A routing table is rows of: destination prefixnext hop / exit interface, plus a metric (path cost) and the route's source. Three sources, in the order you'll meet them: directly connected networks (the router sees them on its own interfaces — automatic), static routes (an admin typed them — zero overhead, zero adaptability; fine for stub networks and tiny sites, unmaintainable at scale), and dynamic routes (a routing protocol learned and keeps re-learning them — this section). Two lookup rules to hold on to:

  • Longest prefix match wins. If 10.1.0.0/16 and 10.1.1.0/24 both match, the /24 is used — more specific beats more general, always.
  • 0.0.0.0/0 is the default route — the zero-length prefix that matches everything, hence loses to everything, hence is the "when all else fails, send it that way" row. Your home router's entire table is basically this one line pointing at the ISP.

The two great families

Link-State (LS) — "everyone gets the whole map"

Every router floods a description of its own links to all routers. Each router assembles the identical full topology, then independently runs Dijkstra's algorithm to compute least-cost paths from itself. Global knowledge, local computation. Protocol: OSPF.

Distance-Vector (DV) — "gossip with the neighbors"

No one sees the map. Each router keeps only a vector of "my current distance to every destination", and periodically tells its neighbors. Each router combines neighbors' claims with link costs (Bellman-Ford) and keeps the best. Local knowledge, iterative convergence. Protocols: RIP, EIGRP (advanced DV).

Link-state in action: Dijkstra on the classic six-node network

This is the exact graph your s9 deck uses (it's Kurose & Ross's). Costs sit on the links; we compute every least-cost path from u.

5 3 2 3 5 2 1 1 1 2 u v w x y z source
Green = the least-cost tree from u that Dijkstra will discover below. Gray links exist but lose.
Worked · the full Dijkstra table (your s9 slides 8–15, condensed to one view)

The idea: keep a settled set N′. Each step, (a) move the cheapest not-yet-settled node into N′ — its cost is now final and can never improve; (b) check whether going through that node shortens anyone else: D(n) = min( D(n), D(new) + cost(new→n) ). Notation: D(v), p(v) = current cost to v, and the predecessor on that path.

stepN′D(v),pD(w),pD(x),pD(y),pD(z),p
0u2, u5, u1, u
1ux2, u4, x2, x
2uxy2, u3, y4, y
3uxyv3, y4, y
4uxyvw4, y
5uxyvwzall settled — done
  1. Step 0→1: x is cheapest (1) → settle it. Through x: w = min(5, 1+3) = 4, y = min(∞, 1+1) = 2. (v via x would be 1+2=3 — worse than its direct 2, keep 2,u.)
  2. Step 1→2: tie between v and y at 2 — take y. Through y: w = min(4, 2+1) = 3, z = min(∞, 2+2) = 4.
  3. Step 2→3: settle v (2). Through v: w = min(3, 2+3) — no improvement.
  4. Steps 4–5: settle w (3), then z (4). Through w: z = min(4, 3+5) — no improvement. Finished.

Reading u's forwarding table off the predecessors — walk each p() chain back to u and keep the first hop: to v → link (u,v). To x, y, w, z → every chain funnels back through x → link (u,x). One cheap link carries almost everything; that's typical.

Trainer's tip · exam technique

Dijkstra questions are pure bookkeeping — draw the table, never wing it in your head. Two habits: settle exactly one node per row (the minimum), and only re-examine neighbors of the node you just settled. The classic mark-loser is updating D() from a node that isn't the one just added.

Distance-vector in action: Bellman-Ford and the gossip loop

Each router x maintains Dx(y) for every destination y, computed purely from what neighbors claim:

Dx(y) = min over each neighbor v of [ c(x,v) + Dv(y) ] — "my distance to y = the best of (cost to reach a neighbor + that neighbor's claimed distance to y)". When any of x's estimates change, x sends its updated vector to its neighbors; waves of updates ripple until no one changes: convergence.

It's beautifully simple and it works — when news is good. A new cheap link propagates in one wave per hop: good news travels fast. Bad news is where DV earns its scars:

Worked · count-to-infinity, the A–B–C horror story

Chain A —1— B —1— C. Steady state: B reaches C at cost 1; A reaches C at cost 2 (via B). Now the B–C link dies.

  1. B loses its route to C. But A's routine advert arrives: "I can reach C at cost 2." A never said via whom.
  2. B reasons: "A is 1 away and reaches C at 2 → I can reach C at 3 via A." B installs a route pointing at A — whose route points back at B. A loop is born.
  3. B adverts "C at 3" → A updates to 4 → B to 5 → … they count up forever, forwarding packets in a circle while they argue. Bad news travels slow.

Two standard bandages: poison reverse — if A routes to C through B, A must tell B "my distance to C is ∞", killing step 2's lie; and a finite infinity — RIP defines 16 = unreachable, so the count-up at least terminates. That single constant is why a RIP network can't be more than 15 hops across.

Link-State (OSPF)Distance-Vector (RIP)
Each router knowsthe full maponly neighbors' claims
Messagesflooded to everyone (more overhead up front)to neighbors only
Convergencefast, loop-free once floodedslow; loops & count-to-infinity possible
If a router lies/breakscorrupts only its own advertised linksbad costs propagate through others' tables
Compute costDijkstra per router (heavier CPU)trivial per-update math

Scale forces hierarchy: Autonomous Systems

Neither family survives a billion destinations, and no single protocol can span networks run by different organizations with different interests. So the Internet is split into Autonomous Systems (AS) — regions under one administration (an ISP, a university, a corporation). Inside an AS, an intra-AS protocol (OSPF/RIP/EIGRP — collectively IGPs) optimizes freely. Between ASes, gateway routers speak the one inter-AS protocol, BGP, where policy ("never carry competitor traffic", "prefer the cheap link") outranks raw path cost. When several exits lead to the same destination, routers commonly play hot potato: dump the packet at the nearest gateway (least intra-AS cost) and let the next AS worry about the rest — locally selfish, globally good enough.

The protocol zoo — the table to memorize

TypeMetricSignature facts
RIPv2DVhop count (max 15; 16 = ∞)Full table to neighbors every 30 s over UDP 520 (multicast 224.0.0.9 — the corrected address), ≤ 25 routes per message; a route silent for 180 s is declared dead. Simple, chatty, small networks only.
OSPFLScost (∝ 1/bandwidth)Floods LSAs, every router runs Dijkstra; rides directly in IP, protocol 89 (no TCP/UDP); authenticates messages; supports equal-cost multipath; scales via areas (two-level hierarchy, backbone area 0). The enterprise standard.
EIGRPadvanced DVcomposite (bandwidth + delay)Cisco's (proprietary until 2013). Sends partial, triggered updates instead of periodic full tables; DUAL algorithm keeps precomputed backup routes for near-instant failover. The "hybrid" of your slides.
BGPpath-vectorpolicy, then path attributesThe inter-AS glue of the Internet; advertises entire AS paths (loop detection by seeing your own AS number), runs over TCP 179. Slow, deliberate, political — by design.
Check yourself — 3.5
In the Dijkstra run above, why does z settle at 4 via y and not via w?

Via y: D(y)+c(y,z) = 2+2 = 4. Via w: D(w)+c(w,z) = 3+5 = 8. The min() keeps 4,y — and once z enters N′, that's final.

A packet's destination matches 10.0.0.0/8, 10.1.0.0/16 and 0.0.0.0/0. Which row forwards it?

10.1.0.0/16 — longest prefix match. The default route only ever wins when nothing else matches at all.

Router A reaches network N through router B. What does poison reverse make A tell B, and what lie does it prevent?

A advertises "distance to N = " specifically to B. It prevents B — after losing its own route to N — from believing A has an independent path and looping traffic back (count-to-infinity).

Match: UDP 520 · IP protocol 89 · TCP 179.

UDP 520 = RIP · IP proto 89 = OSPF (its own transport, no ports) · TCP 179 = BGP. A favorite exam one-liner.

Your company's network spans 20 hops end-to-end and needs sub-second failover. Which IGP, and why is RIP disqualified twice?

OSPF (or EIGRP in a Cisco-only shop). RIP fails on diameter — 20 hops > 15 = unreachable — and on convergence: 30-second gossip cycles can't deliver fast failover.

3.6 · IPv6 — the network layer, redesigned

Slide maps10 · all 35
Why IPv6 exists

IPv4's 2³² addresses ran out — the registries exhausted their free pools between 2011 and 2019. NAT (Phase 6) bought decades of time by letting thousands of hosts hide behind one public address, but it breaks end-to-end connectivity and adds state everywhere. IPv6 solves the shortage by brute force: 128-bit addresses — 2¹²⁸ ≈ 3.4 × 10³⁸, enough to address every grain of sand with room to spare — and uses the redesign to simplify the header and bake in autoconfiguration.

⚠ Exam trap · your s10 slide 7 says the header is "16 bytes" — it is 40

The slide's own field list proves it: 4+1+1+2 = 8 bytes of small fields + two 16-byte addresses = 40 bytes, fixed. Likely a typo for "16 bytes per address" or "8 fields". If you write 16 on an exam, that's a lost mark on a fact the header diagram hands you.

The IPv6 header — 8 fields, 40 bytes, never grows

bits 0–78–1516–2324–31
Version6Traffic Classwas: ToSFlow Labelnew — tag related packets
Payload Lengthdata only — header not countedNext Headerwas: ProtocolHop Limitwas: TTL
Source Address — 128 bits (occupies 4 rows of this grid)
Destination Address — 128 bits (4 rows)

Compare with the IPv4 header in 3.1: fewer fields, fixed size, no checksum, no fragment fields, no options block.

Understand it as a diet — what was removed, and why:

  • Header checksum — gone. Ethernet's FCS already guards the frame and TCP/UDP checksum the payload; recomputing a third checksum at every hop (TTL changes each hop!) was pure waste. Routers now forward faster.
  • Fragmentation fields — gone from the header. IPv6 routers never fragment. A too-big packet is dropped and an ICMPv6 "Packet Too Big" goes back; the source discovers the path MTU and sizes packets to fit (a rare fragment-at-source case uses an extension header).
  • IHL — gone, because the header is always 40. Options — gone, replaced by a cleaner idea:

Extension headers. Next Header either names the payload protocol (6 = TCP, 17 = UDP, 58 = ICMPv6) or chains to an extension header, which chains onward — each link naming the next. RFC 2460's recommended order: hop-by-hop options → routing → fragment → authentication/ESP → destination options → payload. Routers only ever parse what concerns them; the rest streams past.

And the renames — same job, new label (instant exam marks): TTL → Hop Limit (honest name: it counts hops, not time) · Protocol → Next Header · ToS → Traffic Class. Genuinely new: Flow Label, tagging packets of one stream so routers can treat them consistently.

Writing IPv6 addresses — the two compression rules

128 bits = 8 groups of 4 hex digits, separated by colons. Nobody writes them raw; two legal shortenings exist (your s10's examples arrived half-blank — rules rebuilt in full):

Worked · compress 2001:0db8:0000:0000:0000:ff00:0042:8329
  1. Rule 1 — drop leading zeros in each group (a group may not be emptied; leave at least one digit):
    2001:db8:0:0:0:ff00:42:8329
  2. Rule 2 — replace one run of consecutive all-zero groups with :: — only once per address (twice would be ambiguous), choose the longest run (leftmost on a tie):
    2001:db8::ff00:42:8329

Second rep: fe80:0000:0000:0000:0202:b3ff:fe1e:8329fe80::202:b3ff:fe1e:8329. Decompressing reverses it: count the groups present (5), so :: stands for 8−5 = 3 zero groups; then re-pad each group to 4 digits.

⚠ Common wrong answers

2001:db8::ff00::8329 — illegal, two ::. Dropping trailing zeros inside a group (ff00ff) — illegal, only leading zeros go. And :: may represent a single zero group, but if two separate runs exist you compress only the longer one.

Address types — and the missing one

IPv6 has no broadcast. The job is done by multicast — chiefly ff02::1, the all-nodes link-local group. Every "broadcast" habit from IPv4 (ARP! DHCP discovery!) is redesigned around multicast in v6.
Type / blockWhat it is
2000::/3Global Unicast (GUA) — the public, Internet-routable space (any address starting 2 or 3). Standard anatomy: 48-bit global routing prefix (your ISP allocation) + 16-bit subnet ID (65,536 internal subnets!) + 64-bit interface ID.
fe80::/10Link-Local (LLA) — mandatory on every IPv6 interface, auto-generated, valid only on its own link; routers never forward it. All the neighbor plumbing (ND, routing-protocol hellos, your default gateway's address) runs on fe80. An interface without a global address still has this.
fc00::/7Unique Local (ULA) — the RFC-1918-of-IPv6: private, not Internet-routable. In practice everything is fd00::/8 (the fd half = locally assigned with a random 40-bit ID; the fc half is unused). Slide fix: s10 prints "fc00::/7 to fdff::/7" — malformed; fc00::/7 is a single block that spans fc00…fdff.
ff00::/8Multicast — anything starting ff. Know ff02::1 (all nodes) and ff02::2 (all routers), both link-scoped.
::1Loopback — the whole of 127.0.0.0/8 compressed into one address.
::Unspecified — "I have no address yet"; the source address of a host mid-autoconfiguration (v6's 0.0.0.0).
Trainer's tip · recognize on sight

First characters classify instantly: 2 or 3 → global unicast · fe8 → link-local · fd → unique local · ff → multicast · ::1 → loopback. Exams love "what type is this address" — it's a free mark if you know these five prefixes.

Subnets and self-configuration

Convention: every LAN is a /64 — half the bits for the network, half for the host, no VLSM agony, no host-count math (2⁶⁴ hosts per subnet is effectively infinite; you subnet in the 16-bit subnet-ID field instead). And a v6 host can number itself: SLAAC — hear a Router Advertisement (ICMPv6 134, from 3.4's trap) carrying the /64 prefix, append a self-generated 64-bit interface ID (classically EUI-64 from the MAC; modern OSes prefer random/privacy IDs), verify uniqueness, done. No DHCP server required — though DHCPv6 exists when admins want central control.

Living with IPv4 meanwhile: the transition runs on three mechanisms — dual stack (hosts run both protocols side by side; the norm), tunneling (v6 packets ride inside v4 packets across v4-only territory), and translation (NAT64 rewrites between the two so v6-only can reach v4-only).

Check yourself — 3.6
Compress fully: 2001:0db8:0000:00a3:0000:0000:0000:57ab

Leading zeros: 2001:db8:0:a3:0:0:0:57ab. Two zero-runs (1 group vs 3) → compress the longer: 2001:db8:0:a3::57ab.

Expand fe80::1 to all 8 groups.

Groups present: 2 → :: hides 6. fe80:0000:0000:0000:0000:0000:0000:0001.

Classify: fd12:3456::1 · ff02::2 · 2a03:2880::9 · fe80::e2d5

fd… → unique local (private) · ff02::2 → multicast, all routers · 2a… → global unicast · fe80 → link-local.

Name three IPv4 header fields that vanished in IPv6, and the compensating mechanism for each.

Checksum → L2 FCS + L4 checksums cover it. Fragmentation trio → source-side path-MTU discovery via ICMPv6 Packet Too Big. IHL/Options → fixed 40-byte header + Next-Header extension chain.

An interface shows only fe80::a1b2:c3ff:fed4:e5f6. Can it browse the Internet over IPv6? Can it talk to its router?

Internet: no — link-local is unroutable; it needs a global (or ULA+NAT66, rare) address. Router on the same link: yes — link-local is exactly what neighbor/router chatter uses.

Phase 4 · The stack, bottom-up

The transport layer L4 · TRANSPORT

Slide maps8 · all 37
Goal: climb from machine-to-machine (IP) to process-to-process delivery — ports, sockets, and the two great transports: TCP (reliable, careful) and UDP (fast, minimal). After this phase, every "port 53 / port 80" you met earlier finally has its foundation.
Why a transport layer

IP delivers a packet to a machine. But a machine runs dozens of network programs at once — browser, mail, SSH, a game. Who gets the packet? Layer 4 adds the last addressing step: a port number naming the process. Sending side merges many conversations onto one IP address (multiplexing); receiving side sorts arrivals to the right program (demultiplexing). Address analogy, completed: MAC = which house on this street · IP = which building in the world · port = which apartment.

Ports and sockets

A port is a 16-bit number (0–65,535), split by IANA into three ranges:

RangeNameWho uses it
0 – 1,023Well-knownStandard server services — HTTP 80, DNS 53… Binding one needs admin/root privileges.
1,024 – 49,151RegisteredVendor-registered applications (e.g. 3389 RDP, 5432 PostgreSQL).
49,152 – 65,535Dynamic / ephemeralHanded out temporarily to clients for the duration of a connection, then recycled.

IP + port = a socket, one end of a conversation: 129.21.4.18:443. A TCP connection is uniquely named by its 4-tuple (src IP, src port, dst IP, dst port) — which is how one server on port 443 holds thousands of simultaneous clients apart, and the fact NAT will exploit in Phase 6.

The well-known ports to know cold (they recur all over this course):

PortServiceTransportPortServiceTransport
20 / 21FTP data / controlTCP69TFTPUDP
22SSHTCP80HTTPTCP
23TelnetTCP110POP3TCP
25SMTPTCP143IMAPTCP
53DNSUDP + TCP161SNMPUDP
67 / 68DHCP server / clientUDP443HTTPSTCP

Plus two from earlier phases: RIP = UDP 520, BGP = TCP 179. DNS's dual listing is deliberate — the trap is settled in Phase 5.

TCP — the careful transport

TCP (Transmission Control Protocol) sells one product: a reliable, ordered, full-duplex byte stream over an unreliable network. Its promises: connection first (handshake below) · every byte accounted for (sequence numbers + acknowledgments + retransmission) · order restored at the receiver · flow control (never drown the receiver) · congestion control (never drown the network). The price: overhead and latency — a 20-byte-minimum header and a round trip before the first data byte.

bits 0–78–1516–2324–31
Source PortDestination Port
Sequence Number position of this segment's first byte in the stream
Acknowledgment Number next byte I expect from you
Offset÷4, like IHLReservedFlagsU·A·P·R·S·FWindow flow control
ChecksumUrgent Pointer
Options (e.g. MSS, SACK-permitted) — why Offset exists

The six classic flags — single bits that define the segment's purpose:

FlagMeaningFlagMeaning
SYNsynchronize — "let's connect", carries my starting sequence numberACKthe Acknowledgment field is valid (set on almost every segment after the first)
FINfinished sending — polite closeRSTreset — abort now / "nothing listens on that port"
PSHpush — deliver to the app immediately, don't bufferURGurgent pointer valid (rare in practice)

The three-way handshake — draw this from memory

Clientactive opener Serverlistening on port ① SYN  ·  seq = x ② SYN + ACK  ·  seq = y, ack = x + 1 ③ ACK  ·  ack = y + 1  (may already carry data) ESTABLISHEDESTABLISHED
Both sides propose a random starting sequence number and each explicitly acknowledges the other's — two SYNs, two ACKs, folded into three segments.

Why not two messages? Because both directions need their starting number acknowledged — the middle segment does double duty. Closing is the same courtesy in reverse, but takes four steps: FIN → ACK, then FIN → ACK the other way. Each direction closes independently (half-close: "I'm done sending, I'll still listen"), so the two FIN/ACK pairs can't always be folded together.

Sequence & acknowledgment numbers — count bytes, not segments

Worked · the arithmetic every TCP question reduces to
  1. Client's ISN x = 4,000 (post-handshake, first data byte is seq 4,001). It sends 500 bytes, seq = 4,001.
  2. Server replies with ack = 4,501 — "I have everything through 4,500; next byte I expect is 4,501." The ack names the next expected byte, not the last received.
  3. Client sends 500 more (seq 4,501). That segment is lost. Server acks… 4,501 again — a duplicate ack, TCP's "I'm missing something" signal.
  4. No ack for the lost data before the retransmission timeout → client resends from 4,501. (Three duplicate acks trigger an even faster resend — fast retransmit.) Reliability = numbering + acks + timers, nothing more magical.

Two throttles ride on every segment: the Window field advertises how many more bytes the receiver can buffer — the sender may never have more than that unacknowledged in flight (flow control; window 0 = "stop, I'm full"). Separately, TCP infers network congestion from loss and throttles itself (congestion control — slow start and friends; know it exists, this course goes no deeper). And a sizing fact tying three layers together: Ethernet MTU 1500 − 20 (IP) − 20 (TCP) = MSS 1460, the biggest data chunk per segment — negotiated in the handshake's options.

UDP — the minimal transport

UDP (User Datagram Protocol) is IP with ports — nothing else. 8-byte header, four fields:

bits 0–78–1516–2324–31
Source PortDestination Port
Length header + data!Checksum
⚠ Exam trap · your s8 slide 31 misdefines Length

The slide says Length is "the length of the UDP header". Wrong — it is the length of the entire datagram, header + data, in bytes. Minimum value 8 (empty payload). A 100-byte payload → Length = 108. This is a one-mark gift if you know it, a guaranteed loss if you learned the slide.

No connection, no handshake, no acks, no ordering, no retransmission, no flow/congestion control. That's not laziness — it's the product: zero setup latency (first packet is data), tiny overhead (8 vs 20+ bytes), no state on the server, and no retransmission delays for data that expires anyway. Who buys it: DNS (one-question-one-answer beats a handshake), DHCP (no address yet — can't hold a connection), VoIP/video/gaming (a late packet is worthless; skip it), SNMP, TFTP, RIP. Reliability, when needed, moves up to the application (or to QUIC, which rebuilds TCP's guarantees over UDP — HTTP/3).

TCPUDP
Connection3-way handshake firstnone — just send
Reliability / orderguaranteed, in orderbest effort, any order
Flow & congestion controlyes / yesno / no
Header20–60 B8 B
Speed profileslower start, steadyinstant, jitter-tolerant
Poster appsHTTP(S), SSH, SMTP, FTPDNS, DHCP, VoIP, SNMP
# see your machine's live sockets — the whole phase in one command
$ netstat -an
Proto  Local Address        Foreign Address      State
TCP    192.168.10.5:52514   140.82.113.26:443    ESTABLISHED   ← you ↔ a web server
TCP    0.0.0.0:22           0.0.0.0:0            LISTENING     ← SSH server awaiting anyone
UDP    0.0.0.0:68           *:*                                ← DHCP client (no state — no connection!)
Check yourself — Phase 4
Fill in segment ② of a handshake where the client's SYN had seq = 812.

SYN + ACK, seq = y (server's own random ISN), ack = 813. And segment ③ will carry ack = y + 1.

A segment carries seq = 9,001 with 1,460 bytes of data. What ack does it earn, and what does that ack mean?

ack = 10,461 — "received through 10,460; send 10,461 next." Next-expected-byte, always.

A UDP datagram shows Length = 512. How much application data is inside?

512 − 8 = 504 bytes. (Length covers header + data — the corrected fact.)

Pick the transport and defend it in one line: (a) a firmware download that must arrive intact; (b) a voice call; (c) a DNS lookup.

(a) TCP — every byte matters, delay doesn't. (b) UDP — timeliness beats completeness; retransmitted audio arrives too late to play. (c) UDP — one tiny exchange; a handshake would triple the cost (TCP only for the big/zone cases — Phase 5).

You telnet to a closed port and instantly get "connection refused". Which TCP flag came back?

RST — the host is alive but nothing listens there, so it resets the attempt. (A firewall silently dropping instead produces a slow timeout — a useful diagnostic difference.)

Phase 5 · Infrastructure applications

DNS & DHCP L7 · APPLICATION

Slide maps7 · all 35 (12 arrived blank — records & packet flow rebuilt)
Goal: the two application-layer services that make networks humane — DNS turns names into addresses; DHCP hands out the addresses in the first place. Both run over UDP (Phase 4's ports 53 and 67/68 — now you know what that meant), and both are the first things you check when "the Internet is down".

DNS — the Internet's phone book

Why names

Humans can't remember 104.18.32.7, and shouldn't: addresses change with hosting moves, and one busy name may need to map to many servers (load balancing). DNS decouples the stable, human name from the volatile, machine address. Every web visit begins with a silent DNS lookup.

One phone book for Earth can't work, so DNS is a distributed, hierarchical database — your s7 deck lists exactly why a single server fails: single point of failure, impossible traffic volume, one location can't be near everyone, and a maintenance monopoly. The hierarchy has three tiers, and a name is read right to left:

root "." .com .edu .ae rit.edu mit.edu 13 root "letters", ~1000 mirrors TLD servers authoritative servers
Root servers know who runs each TLD; TLD servers know each domain's authoritative servers; the authoritative server holds the actual records for www.rit.edu.

What the database stores — resource records (your s7 slide 13 arrived blank; the canonical set, rebuilt):

TypeMapsNotes
Aname → IPv4 addressthe workhorse
AAAAname → IPv6 address"quad-A" — 4 × 32 bits, cute and mnemonic
CNAMEalias → canonical namewww.shop.com → shop.hosting.net; lookup then restarts on the target
MXdomain → mail server namewith a preference number — lowest wins
NSdomain → its authoritative name serversthe glue that builds the hierarchy's referrals
PTRIP → name (reverse DNS)lives under in-addr.arpa; what ping -a consults
SOAzone metadataprimary server, admin email, serial & refresh timers
TXTname → arbitrary texttoday: SPF/DKIM mail policy, domain-ownership proofs

How a lookup travels. Your machine's stub resolver asks its configured local/recursive resolver (ISP, campus, or 8.8.8.8) one recursive question: "get me the final answer." That resolver then works iteratively: ask a root server → referral ("ask the .edu TLD servers, here they are") → ask TLD → referral ("ask rit.edu's authoritative servers") → ask authoritative → answer. Referrals, not delegation-of-labor:

Recursive = "give me the final answer" (client → its resolver). Iterative = "tell me who to ask next" (resolver → root/TLD/authoritative). Real root and TLD servers refuse recursion — they serve referrals only, or they'd melt. If an exam asks "fully recursive vs iterative", describe both models; know that reality is the hybrid above.

What makes this fast in practice is caching: every answer carries a TTL, and your resolver (and your OS) reuse it until expiry. Second lookup of google.com: microseconds, zero packets. The cost: after a server moves, stale cached answers linger for up to a TTL — why DNS changes "take time to propagate".

⚠ Trap resolved · "DNS is UDP 53" vs your s8 table's "UDP, TCP"

Both slides are right — about different jobs. Ordinary queries ride UDP 53 (one packet each way; a handshake would triple the cost). TCP 53 is used for zone transfers (AXFR — a secondary server copying a whole zone needs reliability) and for answers too large for the datagram limit (classically > 512 bytes; the server sets a "truncated" flag and the client retries over TCP). Exam phrasing: "DNS uses UDP for queries and TCP for zone transfers."

# interrogate DNS yourself
$ nslookup www.rit.edu        ← simple: name → address
$ dig www.rit.edu A +short    ← surgical: one record type
$ dig @8.8.8.8 rit.edu MX     ← ask a specific server for mail routes
$ dig -x 129.21.4.18          ← reverse lookup (PTR)

DHCP — plug in, get configured

Why DHCP

Manual IP configuration is a typo factory: duplicate addresses, wrong masks, forgotten gateways — multiplied by every laptop that changes buildings twice a day. DHCP (Dynamic Host Configuration Protocol) centralizes it: a server leases each client, on arrival, everything it needs — IP address, subnet mask, default gateway, DNS servers, lease duration. Addresses return to the pool when leases lapse; a small pool can serve a rotating crowd.

The famous four-step conversation — DORA. The client starts with no address at all, so the whole dance runs on broadcasts over UDP 68 → 67:

Clienthas no IP yet DHCP Serverholds the pool ① DISCOVER — broadcast: "any DHCP server out there?" src 0.0.0.0 : 68 → dst 255.255.255.255 : 67 ② OFFER — "how about 192.168.10.42? lease: 24 h" (+ mask, gw, DNS) ③ REQUEST — broadcast: "I accept 192.168.10.42 from server S" src still 0.0.0.0 — nothing is mine until the ACK ④ ACK — "it's yours; lease timer starts now" configures interface ✓
Discover · Offer · Request · Ack. Steps ① and ③ are broadcasts — which also politely tells every other offering server "I chose someone else."
⚠ Exam trap · your s7 slide 30 gives REQUEST the wrong source address

The slide claims the DHCPREQUEST's source is "the new client address". RFC 2131 says no: during initial DORA the client sources 0.0.0.0 — the address isn't its to use until the server's ACK lands. A client does source its own IP in a REQUEST later — during renewal, unicast straight to its server at ~50% of the lease (falling back to broadcast, then a fresh DORA, if renewals go unanswered). Two different moments; the slide fused them.

Three practicalities your deck raises, answered:

  • Error control: DHCP rides UDP — unreliable — so it protects itself: the UDP checksum guards integrity, and clients simply retransmit with randomized timers if an answer never comes (randomized so a building full of rebooting PCs doesn't stampede in sync).
  • Scope: broadcasts die at routers (Phase 3.2), so plain DHCP is per-LAN. Instead of one server per subnet, a router runs a relay agent (Cisco: ip helper-address) that repackages the broadcast as unicast to a central server — which tells the subnets apart by the relay's stamped-in gateway address.
  • Security — DHCP trusts everyone, and that's the flaw: starvation (an attacker's flood of fake DISCOVERs drains the pool; real users get nothing) and the rogue server (attacker answers DISCOVERs first, handing out itself as gateway/DNS → instant man-in-the-middle). Switch-side defense: DHCP snooping — only sanctioned ports may speak server.
Check yourself — Phase 5
Order the servers a resolver contacts for the first-ever lookup of www.rit.edu, and label each reply.

Root → referral to .edu TLD servers · TLD → referral to rit.edu's authoritative servers · authoritative → the A record answer. Client↔resolver was the one recursive leg; these three were iterative.

Which record type answers each: mail delivery for @rit.edu · the IPv6 of a host · "what name owns 129.21.4.18?"

MX · AAAA · PTR.

Why does a secondary DNS server use TCP 53 when ordinary lookups use UDP 53?

It's performing a zone transfer — copying the entire zone. That's bulk data needing reliable, ordered delivery: TCP's product. Single tiny Q&A packets don't justify a handshake: UDP's product.

In DORA, give the source IP of the DISCOVER, of the REQUEST, and of a renewal REQUEST at 50% lease.

0.0.0.0 · 0.0.0.0 (the corrected trap) · the client's own leased IP, unicast to its server.

Users on one floor suddenly report a "gateway" that sniffs their traffic. Which DHCP attack, and why did it win the race?

Rogue DHCP server. Clients accept the first OFFER to arrive; a rogue on the local LAN answers faster than the relayed real server and hands out itself as default gateway/DNS.

Phase 6 · The finale

NAT — one address, many hosts L3uses L4 ports

Slide maps5 · 15–32 (16 arrived blank — tables rebuilt)
Goal: Network Address Translation. Your slides put this in week 5; it's here at the end because you couldn't fully understand it before now — NAT stands on private addressing (3.2), routing (3.5) and ports (Phase 4). Watch all three snap together.
Why NAT exists

Phase 3.2's private ranges (10/8, 172.16/12, 192.168/16) are free and infinite-feeling — and unroutable on the Internet: any Internet router drops them. So how does your 192.168.10.5 laptop browse the web? A NAT router sits at the border, holds one (or a few) public addresses, and rewrites packet headers in flight: outbound, it swaps your private source address for its public one; inbound, it swaps back — consulting a translation table it builds as connections open. Thousands of hosts, one public IP. This single trick deferred IPv4 exhaustion by ~25 years. Vocabulary (Cisco's, used by your deck): inside local = the private address as seen inside · inside global = what the world sees instead.

The four types, easiest to hardest

TypeMappingUse case
Static NATone private ↔ one public, fixed, foreverAn internal server the outside must reach reliably (mail, web): 10.1.1.10 ↔ 203.0.113.10, both directions, always.
Dynamic NATone private ↔ one public from a pool, first-come-first-servedStill 1:1 while in use — with a 10-address pool, the 11th simultaneous host waits. Rare today; a stepping stone to:
PAT / NAT overloadmany private ↔ one public, told apart by portThe one your home router does. This is where Phase 4 pays off — the table below.
Overlapping NATtranslates both source and destinationTwo merged/VPN-linked sites that both picked the same private range — the corner case at the end.

PAT — the port trick, step by step

With one public address and a thousand hosts, the return traffic all arrives at the same IP. What disambiguates it? The source port. The NAT rewrites source IP and, when needed, source port, recording each mapping. Here is your deck's own scenario (s5's table arrived blank — rebuilt): two hosts who happened to pick the same ephemeral port, both browsing the same web server.

Worked · two hosts collide on port 1050
Inside local(private, pre-NAT)Inside global(public, post-NAT)Destination
Host A10.100.100.3 : 1050200.1.1.1 : 105074.125.226.209 : 80
Host B10.100.100.50 : 1050200.1.1.1 : 105174.125.226.209 : 80
  1. A's SYN leaves: src 10.100.100.3:1050. NAT rewrites → 200.1.1.1:1050, records row 1, forwards.
  2. B's SYN leaves with the same source port 1050. 200.1.1.1:1050 is taken → NAT assigns the next free port: 200.1.1.1:1051, records row 2.
  3. The web server answers two flows, both to 200.1.1.1 — one to :1050, one to :1051. The NAT looks each up and un-rewrites: :1050 → back to A, :1051 → back to B.
  4. The recycled insight: a conversation is a 4-tuple, not an address — so one public IP holds ~64k simultaneous flows per destination. Checksums (IP and TCP/UDP — the L4 checksum covers a pseudo-header containing the IP!) are recomputed on every rewrite.
Trainer's tip · the mental model

PAT is a receptionist with a call log. Outgoing calls all show the office's one public number, but the receptionist notes which extension dialed whom; when the callback arrives, the log routes it inside. Corollary that explains half of home networking: an outsider can't call in first — no log entry exists — until you create one manually (port forwarding: "anything arriving at public :25565 goes to 192.168.10.5:25565").

Overlapping NAT — when both sides picked 10.0.0.0

Two companies merge (or VPN-link Seattle and Denver offices) and discover both numbered themselves 10.0.0.0/24. Now "10.0.0.7" is ambiguous — and worse, a Seattle host trying to reach Denver's 10.0.0.7 concludes it's local and never sends to the router at all. Fix without renumbering: NAT at each end presents its site to the other under a fake range — Seattle appears as 10.1.1.0/24, Denver as 10.2.2.0/24 — translating both source and destination addresses as packets cross the tunnel. Seattle's 10.0.0.7 reaches Denver's 10.0.0.7 by dialing 10.2.2.7. Painful, stateful at both ends — and the strongest argument you'll meet for planning address space before you grow.

The honest cost sheet

  • Breaks end-to-end connectivity — inbound-first connections fail without port forwarding; peer-to-peer and some VoIP need traversal tricks (STUN et al.).
  • Protocols that write IPs inside the payload break (classic FTP, SIP) — the NAT only rewrites headers, so routers need protocol-aware helpers (ALGs) for those.
  • State = fragility: the router must hold a live table; reboot it and every session dies. And purists note NAT makes a router meddle with L3/L4 fields that were supposed to be end-to-end — the "layer violation" your sources grumble about.
  • It's not security by itself — it merely hides structure; a firewall is still a separate job (though the "no unsolicited inbound" side effect does resemble one).

All of which is why IPv6's answer to address scarcity was… enough addresses for no NAT at all.

# the Cisco verbs your deck ends on
R1# show ip nat translations   ← the live table (the PAT rows above, for real)
R1# show ip nat statistics     ← totals, pool usage, hit/miss counts
R1# clear ip nat translation * ← flush the table (sessions will re-create)
R1# debug ip nat               ← watch rewrites happen live (lab only — chatty!)
Check yourself — Phase 6
Why must a PAT router sometimes rewrite the source port, not just the source IP?

Because two inside hosts can pick the same ephemeral port (both :1050 above). After translation both flows share one public IP — only a unique public-side port keeps the return traffic separable.

A return packet arrives at 200.1.1.1:1051. Reconstruct exactly what the NAT does.

Look up 1051 in the translation table → inside local 10.100.100.50:1050 → rewrite destination IP and port to that, fix IP + TCP checksums, forward inside.

Your friend can't host a game server behind their home router though the software runs fine. Explain and fix, in NAT terms.

Inbound-first SYNs find no table entry → dropped. Fix: a port-forward (a manual static entry): public :port → the PC's private IP:port. (Or the blunt "DMZ host" — forward everything — with the risk that implies.)

Which NAT type for: (a) a mail server that must be reachable 24/7; (b) 400 staff sharing one public IP; (c) two VPN-linked offices both using 192.168.1.0/24?

(a) Static · (b) PAT/overload · (c) Overlapping, translating both directions.

Grand-finale synthesis: trace one keystroke of a web request from 192.168.10.5 to a server, naming every translation and lookup from Phases 2–6.

DNS resolves the name (P5, UDP 53) → TCP handshake begins (P4) → packet gets IP header, dest = server, src = 192.168.10.5 (P3) → mask says "not my network" → default gateway → ARP finds the gateway's MAC, frame built (P2) → router de-frames, NAT rewrites src to public IP:port and logs it (P6) → routers forward by longest-prefix match, TTL ticking (3.5, 3.1) → server answers to the public socket → NAT un-rewrites → new frame to your MAC → browser paints. Every phase of this guide, in one round trip.

Appendix A

Slide errata — the corrections in one table

Read this the night before any exam. Every error below was verified against the primary sources (RFCs, Kurose & Ross, IANA registries) and is explained in context in the phases above. If your answer must match the slides for credit, ask your instructor about these — but know the truth, because labs and real equipment follow the truth.
#WhereThe slide saysThe truth
1s10 · 7IPv6 header is "16 bytes"40 bytes, fixed. 8 B of small fields + two 16-B addresses. (§3.6)
2s8 · 31UDP Length = length of the headerLength = entire datagram, header + data; minimum 8. (§4)
3s2 · 40RIP multicasts to "244.0.0.9"224.0.0.9 — 244.x is reserved Class E. (§3.2, §3.5)
4s5 · 3"Router Solicitation (IPv6) (9), Advertisement (IPv6) (10)"ICMPv4: Advertisement = 9, Solicitation = 10 (swapped). ICMPv6 ND uses 133/134. (§3.4)
5s3p2 · 8LLC does framing and CRCFraming, MAC addressing and the FCS belong to the MAC sublayer; LLC identifies the payload protocol and multiplexes. Slide 9 of the same deck has it right. (§2)
6s2 · 41 & s4 · 45127.0.0.1 "tests the local NIC"Loopback never reaches the NIC — it tests the TCP/IP stack. NIC test = ping your real IP. (§3.2, §3.4)
7s2 · 37, s4 · 40 vs s6 · 29Class A range printed as 1–127 in two decks, 1–126 in one1–126: the whole 127/8 block is loopback. (§3.2)
8s2 · 36Octet 00011101 shown as 1700011101 = 16+8+4+1 = 29 (the same address appears correctly as …29… in s4 · 33). (§0)
9s2 · 34, s3p2 · 16MAC unicast "begins 00", broadcast "begins 11"The rule is one bit — the I/G bit (LSB of the first octet): 0 = unicast, 1 = group/multicast; broadcast = all Fs. Prefixes "00"/"11" are not the mechanism. (§2)
10s3p1 · 13Layout implies single-bit parity can correct errorsSingle parity only detects (odd counts of) errors; two-dimensional parity can correct a single bit. (§2)
11s7 · 30DHCPREQUEST source = "new client address"During DORA the source is 0.0.0.0 (RFC 2131) — the lease isn't valid until the ACK. Clients source their own IP only in later renewal unicasts. (§5)
12s7 · 17 vs s8 table"DNS = UDP 53" vs "DNS = UDP, TCP"Both: UDP 53 for queries, TCP 53 for zone transfers and oversized answers. (§5)

Minor fixes worth knowing: there is no "80 Gbps" Ethernet standard (40 and 100 Gb exist — s1's speed list) · s1 · 29 promises "two contradictory metrics" then lists four; the intended tension is throughput vs delay · s6 · 53 double-subtracts ("16,777,214 − 2"; the −2 is already inside 16,777,214) · the practice address 172.168.x.x (s6) is public — private is only 172.16–172.31 · ULA written "fc00::/7 to fdff::/7" (s10) is malformed — fc00::/7 is one block spanning fc00–fdff · s6's "rules" (equal sizes, /30 max) describe legacy FLSM only; VLSM and /31 (RFC 3021) are standard practice. And a fifth of the deck (105 of 516 slides) arrived as blank frames from the file conversion — the missing content (VLSM worked example, DNS record types, DHCP packet flow, NAT tables, DV introduction) is rebuilt in the phases above.

Appendix B

Quick-reference card

The tables to have in your head — or on one printed page — for every lab and exam. Everything here is derived and explained somewhere above; this is the compressed form.
Formulas

usable hosts = 2h − 2
subnets = 2borrowed
magic number = 256 − mask octet
full-mesh links = n(n−1)/2
IPv4 header bytes = IHL × 4
fragment data offset = Offset × 8
MSS = MTU − 20 − 20 (= 1460)

Powers of 2

2¹⁰=1,024 · 2¹¹=2,048 · 2¹²=4,096
2⁸=256 · 2⁹=512 · 2¹⁶=65,536
2⁷=128 · 2⁶=64 · 2⁵=32 · 2⁴=16
octet weights: 128 64 32 16 8 4 2 1
mask octets: 128 192 224 240
  248 252 254 255

Protocol / type numbers

IP Protocol: 1 ICMP · 6 TCP · 17 UDP · 89 OSPF
EtherType: 0x0800 IPv4 · 0x0806 ARP · 0x86DD IPv6
ICMP: 0/8 echo · 3 unreach (code 3 port) · 5 redirect · 9/10 RA/RS · 11 time exceeded
ICMPv6 ND: 133 RS · 134 RA

IPv6 prefixes on sight

2xxx/3xxx → global unicast
fe80 → link-local (unroutable)
fd → unique local (private)
ff → multicast (ff02::1 all nodes)
::1 loopback · :: unspecified
every LAN = /64

CIDR ↔ mask ↔ hosts (the spine of all subnetting)

/MaskUsable hosts/MaskUsable hosts
/8255.0.0.016,777,214/25255.255.255.128126
/16255.255.0.065,534/26255.255.255.19262
/20255.255.240.04,094/27255.255.255.22430
/22255.255.252.01,022/28255.255.255.24014
/23255.255.254.0510/29255.255.255.2486
/24255.255.255.0254/30255.255.255.2522

Pattern: each step right halves the hosts (…and /31 = 2 addresses for point-to-point links, /32 = one host route).

Ports that appear on exams

20/21 FTP22 SSH23 Telnet25 SMTP53 DNS UDP+TCP67/68 DHCP
69 TFTP80 HTTP110 POP3143 IMAP161 SNMP443 HTTPS
179 BGP TCP520 RIP UDPranges: 0–1023 well-known · 1024–49151 registered · 49152–65535 ephemeral

Special IPv4 blocks

10.0.0.0/8 · 172.16.0.0/12 · 192.168.0.0/16private (RFC 1918)127.0.0.0/8loopback (stack, not NIC)
169.254.0.0/16APIPA = DHCP failed224.0.0.0/4multicast (RIP 224.0.0.9 · OSPF .5/.6)
0.0.0.0/0default route255.255.255.255limited broadcast — never routed

Routing protocols in one line each

RIPDV · hops (max 15) · UDP 520 · 30 s full-table · small nets
OSPFLS · Dijkstra · cost ∝ 1/bw · IP proto 89 · areas · the enterprise default
EIGRPadvanced DV (Cisco) · partial triggered updates · DUAL backups
BGPpath-vector · policy > cost · TCP 179 · glue between ASes

The layer cheat-line

L7 dataL4 segment (ports)L3 packet (IP)L2 frame (MAC + FCS)L1 bits  ·  L2 addresses reset every hop, L3 addresses survive end-to-end, ports name the process.


Appendix C · Practice

Practice Q&A — Foundations EXAM SIM

CoversPhase 0 · Number systemsPhase 1 · The big picture
How to use this: exam-simulator format — a scenario, four to five options, then a full explanation that tells you why the right answer is right and why every wrong answer is wrong, with a reference back into the guide. Answer on paper before revealing; treat anything you miss as a pointer to re-read that section. Watch for "(Choose two/three)" — those need every correct choice.
Question 1Phase 0 · Binary → decimal

While documenting a packet capture you must convert the binary octet 10110100 to decimal. What is the correct value?

  1. 45
  2. 75
  3. 164
  4. 180
Answer & explanation
Correct answer: D — 180

Write the weights 128 64 32 16 8 4 2 1 over the bits and add the weights that sit under a 1: the 1s fall on 128, 32, 16 and 4 → 128 + 32 + 16 + 4 = 180.

A (45) is incorrect — that's what you get by reading the octet right-to-left (00101101); bit weights always run 128 → 1 left-to-right. B (75) is incorrect — it sums the weights under the zeros (64+8+2+1). C (164) is incorrect — it drops the 16 from the sum; sanity-check by converting back and it fails.

Reference: Phase 0 — Number systems · s2 30–31 · s6 23–27

Question 2Phase 0 · Decimal → binary

A subnetting exercise requires the decimal value 203 in binary. Which octet is correct?

  1. 10101011
  2. 11001010
  3. 11001011
  4. 11010011
Answer & explanation
Correct answer: C — 11001011

Subtract the biggest weight that fits, left to right: 128 fits (203−128=75) → 1. 64 fits (75−64=11) → 1. 32 no → 0. 16 no → 0. 8 fits (11−8=3) → 1. 4 no → 0. 2 fits (3−2=1) → 1. 1 fits → 1. Result 11001011; check back: 128+64+8+2+1 = 203 ✓.

A is incorrect — 10101011 = 171. B is incorrect — 11001010 = 202; it forgets the final 1-bit (203 is odd, so bit 0 must be 1 — a ten-second parity check that catches this instantly). D is incorrect — 11010011 = 211; the 16-weight bit is set instead of the 8.

Reference: Phase 0 — Number systems · s6 23–27

Question 3Phase 0 · Hexadecimal

The first octet of a device's MAC address is B2 (hex). What is this octet in decimal?

  1. 162
  2. 176
  3. 178
  4. 194
Answer & explanation
Correct answer: C — 178

Two routes, same answer. Direct: each hex position weighs a power of 16, and B = 11, so 11×16 + 2 = 178. Via binary (the safe route): B = 1011, 2 = 001010110010 = 128+32+16+2 = 178 ✓.

A (162) is incorrect — that's 0xA2; it treats B as 10, but A=10 and B=11. B (176) is incorrect — that's 0xB0; it drops the low nibble's 2. D (194) is incorrect — that's 0xC2 (C=12).

Reference: Phase 0 — Number systems, hex section · s6 26

Question 4Phase 0 · Mask octets

Which subnet-mask octet value contains exactly five 1-bits?

  1. 248
  2. 252
  3. 240
  4. 224
Answer & explanation
Correct answer: A — 248

Mask 1s always fill in from the left, so five 1s is 11111000 = 128+64+32+16+8 = 248. Learn the ladder cold — each step adds the next weight: 128 (one 1), 192, 224, 240, 248, 252, 254, 255 (eight 1s).

B (252) is incorrect — 11111100 has six 1s. C (240) is incorrect — 11110000 has four. D (224) is incorrect — 11100000 has three. Counting 1s in a mask octet is exactly how you'll count borrowed bits in Phase 3.3, so drill it now.

Reference: Phase 0 — Trainer's tip, landmark octets · s6 42

Question 5Phase 1 · Components

Which of the following is NOT one of the five components of a data communication system?

  1. Protocol
  2. Transmission medium
  3. Topology
  4. Receiver
Answer & explanation
Correct answer: C — Topology

The five components are message, sender, receiver, transmission medium, and protocol. Topology is the geometric arrangement of links and nodes — a property of how a network is laid out, not a component of a communication system.

A is incorrect as an answer because protocol is a component — the rule set; without it devices are connected but not communicating. B is incorrect because the medium is a component — the physical path (twisted pair, coax, fiber, radio). D is incorrect because the receiver is a component — the device the message is delivered to.

Reference: Phase 1 — What is data communication? · s1

Question 6Phase 1 · Effectiveness

During a video call the average data rate is well within the link's capacity, yet the video stutters because packets arrive with uneven gaps between them. Which characteristic of effective data communication is being violated?

  1. Delivery
  2. Accuracy
  3. Timeliness
  4. Jitter
Answer & explanation
Correct answer: D — Jitter

Jitter is variation in packet arrival time. Audio and video need packets at an even rhythm; when spacing varies, playback stutters even though the average speed is fine — exactly this scenario.

A (Delivery) is incorrect — delivery means data reaches the correct destination; here it does. B (Accuracy) is incorrect — accuracy means the data arrives unaltered; nothing was corrupted. C (Timeliness) is the trap — timeliness is about data arriving on time overall (late video is useless video); this stream is on time on average — it's the variation that hurts, and that is jitter by definition.

Reference: Phase 1 — What is data communication? · s1

Question 7Phase 1 · Data flow

Two site engineers communicate with walkie-talkies: either one can speak, but only one at a time ("over!"). Which data-flow mode is this?

  1. Simplex
  2. Half-duplex
  3. Full-duplex
  4. Multipoint
Answer & explanation
Correct answer: B — Half-duplex

Half-duplex = both directions possible, one at a time — the single-lane bridge. Whoever transmits gets the whole channel capacity; the other must wait.

A (Simplex) is incorrect — simplex is one direction ever (keyboard → computer, computer → monitor); here both sides can talk. C (Full-duplex) is incorrect — full-duplex is both directions simultaneously (a phone call, modern switched Ethernet); walkie-talkies can't do that. D (Multipoint) is incorrect — that's a connection type (more than two devices sharing one link), not a data-flow mode at all.

Reference: Phase 1 — Data flow · s1

Question 8Phase 1 · Performance terms

Your ISP sells a "100 Mbps" plan. A measured download runs at 74 Mbps, of which 68 Mbps is actual file content after protocol headers and retransmissions are excluded. What does the 68 Mbps figure represent?

  1. Bandwidth
  2. Throughput
  3. Goodput
  4. Latency
Answer & explanation
Correct answer: C — Goodput

Goodput is throughput counting only useful application data — headers and retransmitted bytes removed. The chain always orders itself bandwidth ≥ throughput ≥ goodput: 100 ≥ 74 ≥ 68 here.

A (Bandwidth) is incorrect — bandwidth is the 100 Mbps: the theoretical capacity, the width of the pipe. B (Throughput) is incorrect — throughput is the 74 Mbps: bits that actually crossed, useful or not. D (Latency) is incorrect — latency is a time (how long data takes to arrive), not a data rate; it isn't any of these numbers.

Reference: Phase 1 — Performance · s1 29

Question 9Phase 1 · Performance trade-off

Network performance is often said to be evaluated by two contradictory metrics — improving one under load tends to worsen the other. Which pair?

  1. Bandwidth and goodput
  2. Throughput and delay
  3. Reliability and security
  4. Accuracy and jitter
Answer & explanation
Correct answer: B — Throughput and delay

Pushing more traffic into a network (chasing throughput) fills queues in every device along the path, and queues are exactly where delay grows. High throughput and low latency fight each other under load.

A is incorrect — bandwidth and goodput are just refinements of the same "how much data" axis; they rise and fall together. C is incorrect — reliability and security are two of the three network evaluation criteria (with performance), not the contradictory performance pair. D is incorrect — accuracy and jitter are effectiveness characteristics of a transmission, not the trade-off in question. Note: your s1 slide 29 says "two metrics" then lists four — the intended pair is exactly throughput vs delay (see Appendix A).

Reference: Phase 1 — Performance · Appendix A · s1 29

Question 10Phase 1 · Topologies

A consultant proposes a full-mesh topology to connect 10 routers. How many point-to-point links does this require?

  1. 45
  2. 90
  3. 100
  4. 9
Answer & explanation
Correct answer: A — 45

Full mesh needs n(n−1)/2 links: 10×9/2 = 45, and every router needs n−1 = 9 ports. This cabling/port explosion is why full mesh survives only in small backbones.

B (90) is incorrect — that's n(n−1) without the ÷2; it counts each link twice, once from each end. C (100) is incorrect — that's n², which would even include a device linked to itself. D (9) is incorrect — that's the number of ports per device (n−1), not the number of links.

Reference: Phase 1 — Topologies, worked example · s1 43

Question 11Phase 1 · Topologies

Which two statements about the star topology are true? (Choose two.)

  1. If the central device fails, the entire network goes down
  2. Each device needs only one link and one port
  3. A break in any single cable disables all devices
  4. Every pair of devices is connected by a dedicated link
Answer & explanation
Correct answers: A and B

A is correct — the center (today, a switch) is the star's single point of failure: it dies, everything dies. B is correct — one link and one port per device is exactly why star is cheap and easy to install and reconfigure, and why it's today's LAN standard.

C is incorrect — in a star, one broken cable disconnects only that node; killing the whole segment with one break is bus behavior (and the break also reflects noise both ways there). D is incorrect — dedicated links between every pair describes mesh, with its n(n−1)/2 link cost.

Reference: Phase 1 — Topologies table · s1

Question 12Phase 1 · Protocol elements

A protocol specification states: "The first 8 bits of the message are the address of the sender." Which element of a protocol does this rule define?

  1. Syntax
  2. Semantics
  3. Timing
  4. Standardization
Answer & explanation
Correct answer: A — Syntax

Syntax is the structure or format of the data — the order and size of fields. "First 8 bits = sender address" is purely about where a field sits, i.e. format.

B (Semantics) is incorrect — semantics is what a field means and what action follows (is that address the next hop or the final destination?). The rule quoted doesn't interpret the address, it just positions it. C (Timing) is incorrect — timing covers when to send and how fast (a 100 Mbps sender drowning a 1 Mbps receiver is a timing failure). D is incorrect — standardization is how protocols get agreed and published, not one of the three protocol elements (syntax, semantics, timing).

Reference: Phase 1 — Protocols and standards · s1 · s2

Question 13Phase 1 · Standards

Ethernet was created by DEC, Intel and Xerox ("DIX") and became dominant through sheer adoption; later, IEEE ratified it as 802.3. After ratification, IEEE 802.3 is best described as which type of standard?

  1. De facto
  2. De jure
  3. Internet Draft
  4. RFC
Answer & explanation
Correct answer: B — De jure

De jure ("by law") standards are ratified by a recognized standards body — ISO, ITU-T, ANSI, IEEE, EIA. Once IEEE blessed it as 802.3, Ethernet's spec became de jure.

A (De facto) is incorrect as the answer but describes Ethernet's earlier life: "in fact" standards win through widespread use without official approval — that was DIX Ethernet before ratification. C (Internet Draft) is incorrect — that's an IETF working document with a six-month lifetime, not an IEEE ratification. D (RFC) is incorrect — RFCs are the published documents of Internet standards (like RFC 791 for IP); IEEE LAN standards don't go through the RFC track.

Reference: Phase 1 — Protocols and standards · s1

Question 14Phase 1 · Models

Which three OSI layers are collapsed into the single Application layer of the 5-layer TCP/IP model used in this course? (Choose three.)

  1. Application
  2. Presentation
  3. Session
  4. Transport
  5. Network
Answer & explanation
Correct answers: A, B and C

The TCP/IP model folds OSI's top three — Application (7), Presentation (6), Session (5) — into one Application layer, because in practice applications (HTTP, DNS, SMTP…) handle their own formatting, encryption and dialog management. The remaining four layers line up one-to-one: Transport, Network/Internet, Data Link, Physical.

D (Transport) is incorrect — transport survives intact in both models; it's where TCP/UDP and port numbers live. E (Network) is incorrect — it maps to the TCP/IP Internet layer (IP, ICMP), it isn't absorbed into Application.

Reference: Phase 1 — Layering, the two stacks side by side · s2

Question 15Phase 1 · PDUs & devices

Which PDU does a router examine in order to make its forwarding decision?

  1. Bits
  2. Frame
  3. Packet
  4. Segment
Answer & explanation
Correct answer: C — Packet

Routers are Layer-3 devices: at each hop they de-encapsulate the incoming frame, read the IP header of the packet to choose the next hop, then wrap the packet in a fresh L2 frame for the outgoing link. That's why MAC addresses change hop-by-hop while IP addresses survive end-to-end. PDU ladder to memorize: data → segment → packet → frame → bits.

A (Bits) is incorrect — bits are the L1 PDU; hubs and repeaters live there and understand nothing. B (Frame) is incorrect — the frame is what the router removes and rebuilds; forwarding on frames/MACs is a switch's job. D (Segment) is incorrect — segments (TCP/UDP, L4) are only opened by the end hosts; a router doesn't need ports to route.

Reference: Phase 1 — PDU column · Encapsulation · s2 43

Question 16Phase 1 · Network sizes

A telecommunications company operates the network that delivers DSL service to subscribers across an entire city. This network is best classified as a:

  1. LAN
  2. MAN
  3. WAN
  4. Internetwork
Answer & explanation
Correct answer: B — MAN

A MAN (metropolitan area network) spans a town or city — and the telco network delivering DSL across a city is the textbook example.

A (LAN) is incorrect — a LAN is privately owned and spans an office, building or campus, a few kilometers at most. C (WAN) is incorrect — WANs are long-haul: country, continent, world. D (Internetwork) is incorrect — an internetwork ("internet" with a small i) is what you get when you connect two or more networks; it describes composition, not geographic size. And the capital-I Internet is the famous global internetwork glued together by tiered ISPs.

Reference: Phase 1 — LAN, MAN, WAN · s1

Trainer's tip

Scored below 13/16? Re-read the phase the misses point to, redo its "Check yourself" quizzes, then come back in a day and retake this cold. When you're ready, the Layer 2 drill is next.


Appendix D · Practice

Practice Q&A — Layer 2 L2 · DATA LINK

CoversPhase 2 · Ethernet & the link layers2 · 29–34, 49–56s3-p1 · s3-p2s4 · 2–13, 47–55
Same rules as Appendix C: answer on paper before revealing. This set leans on the two things Phase 2 exams love most — the I/G-bit rule your slides muddle, and the "MACs change, IPs don't" walkthrough. If you miss Q14–16, re-read ARP and the Phase-2 finale before anything else.
Question 1Phase 2 · The link layer's job

Which statement best describes the responsibility of the data link layer?

  1. Delivering data end-to-end between hosts across multiple networks
  2. Moving a datagram from one node to the physically adjacent node, over a single link
  3. Delivering data process-to-process using port numbers
  4. Converting frames into electrical or radio signals on the medium
Answer & explanation
Correct answer: B

L2's one job is the single hop: node to adjacent node over one link. A datagram crossing the Internet may ride a different L2 protocol on every link — WiFi, then fiber Ethernet, then something else — like a traveler using taxi → plane → train on one trip.

A is incorrect — host-to-host delivery across networks is Layer 3's job (routing). C is incorrect — process-to-process delivery with ports is Layer 4 (Phase 4). D is incorrect — turning bits into signals is Layer 1; the NIC implements both L1 and L2, but the link layer's defined services are framing, link access, error detection/correction and (on lossy links) reliable delivery.

Reference: Phase 2 — The link layer's one job · s3-p1

Question 2Phase 2 · LLC vs MAC

Per IEEE 802.3, which data-link sublayer is responsible for framing, MAC addressing, and the FCS error check?

  1. LLC (Logical Link Control)
  2. The physical-layer PCS
  3. MAC (Media Access Control)
  4. The NIC driver software
Answer & explanation
Correct answer: C

The lower sublayer, MAC, owns data encapsulation (framing), MAC addressing, the FCS/CRC check, and media access — who talks and when.

A is incorrect — LLC (IEEE 802.2), the upper sublayer, is the bridge between networking software and hardware: it identifies which L3 protocol is inside the frame and can offer optional services upward. Watch this one: your s3-p2 slide 8 wrongly gives framing/addressing/CRC to LLC, then slide 9 correctly gives them to MAC — answer with slide 9's version (see Appendix A). B is incorrect — that's below L2 entirely. D is incorrect — the driver is implementation plumbing, not an IEEE sublayer.

Reference: Phase 2 — LLC and MAC · Appendix A · s3-p2 8–9

Question 3Phase 2 · MAC structure

In the MAC address 6C:F0:49:68:95:68, what does the first half — 6C:F0:49 — represent?

  1. The OUI: a vendor code assigned by IEEE
  2. The interface's unique serial number
  3. The network portion, used by routers for forwarding
  4. The multicast group identifier
Answer & explanation
Correct answer: A

A 48-bit MAC splits in half: the first 24 bits are the OUI (Organizationally Unique Identifier) — the manufacturer's code assigned by IEEE (AA-00-00 was DEC, 08-20-00 was Sun) — and the last 24 bits are a vendor-assigned serial number.

B is incorrect — the serial number is the last 24 bits (68:95:68). C is incorrect and is the trap: MAC addresses are flat — no part of them carries location or network information, which is exactly why MAC alone can't route between networks and why IP exists. D is incorrect — multicast is signaled by the I/G bit (LSB of the first octet), not by the OUI field; 6C is even, so this address is unicast anyway.

Reference: Phase 2 — MAC addresses · s2 32 · s3-p2

Question 4Phase 2 · Unicast vs multicast

Which of the following destination MAC addresses is a multicast address?

  1. 02:00:00:00:00:00
  2. FE:FE:FE:FE:FE:FE
  3. A4:5E:60:BE:87:0D
  4. 3B:2C:10:00:00:07
Answer & explanation
Correct answer: D

The rule is the I/G bit — the least-significant bit of the first octet: 0 → unicast, 1 → multicast/group. Fast test: is the first octet's value odd? 3B = 00111011 — odd → multicast.

A is incorrect — 02 is even → unicast (the 02 sets the locally administered bit, which is how phones randomize their MAC for privacy — still unicast). B is incorrect — FE = 11111110, even → unicast, despite "looking" special. C is incorrect — A4 is even → unicast. Beware the slide shortcut "unicast begins with 00 / broadcast begins with 11" — it's muddled (Appendix A); the LSB rule is the real one, and broadcast is simply all Fs: FF:FF:FF:FF:FF:FF.

Reference: Phase 2 — Three kinds of destination MAC · Appendix A · s2 34 · s3-p2 16

Question 5Phase 2 · Ethernet naming

In the legacy Ethernet identifier 10Base5, what does the 5 indicate?

  1. A maximum speed of 5 Mbps
  2. Category 5 twisted-pair cabling
  3. A 500-meter maximum segment of thick coaxial cable
  4. Five twisted pairs per cable
Answer & explanation
Correct answer: C

Decode the name as prefix–Base–suffix: 10 = 10 Mbps, Base = baseband signaling, 5 = 500 m of thick coax ("Thicknet"). Likewise 10Base2 = thin coax, 10BaseT/100BaseT = twisted pair, 100BaseFX = fiber.

A is incorrect — the speed is the prefix (10), not the suffix. B is incorrect — "Cat 5" is a cable grade for twisted pair; the T suffix denotes twisted pair, and 10Base5 predates it. D is incorrect — nothing in the identifier counts pairs. Bonus fact: every speed generation from 10 Mbps to 100 Gbps kept the same frame format — a big reason Ethernet won the LAN wars.

Reference: Phase 2 — Ethernet: the LAN that won · s3-p2

Question 6Phase 2 · Ethernet character

A NIC receives an Ethernet frame whose recomputed CRC does not match the FCS field. What does the NIC do?

  1. Sends a NAK so the sender retransmits at Layer 2
  2. Silently discards the frame; any recovery is a higher layer's job
  3. Uses the CRC remainder to correct the flipped bits
  4. Delivers the frame upward with an error flag set
Answer & explanation
Correct answer: B

Ethernet is connectionless (no handshake between NICs) and unreliable (no L2 ACKs or NAKs): a frame that fails the FCS is dropped, no apology. If the data mattered, end-to-end recovery is TCP's problem (Phase 4).

A is incorrect — there is no NAK/retransmission machinery in Ethernet; that's a feature, not a bug (clean wired links rarely need it). C is incorrect — Ethernet's CRC-32 is used to detect errors; the receiver doesn't attempt correction, it discards. D is incorrect — corrupted frames never go upward; the whole point of checking at L2, where errors are born, is to kill them there.

Reference: Phase 2 — Ethernet character sheet · FCS · s3-p2

Question 7Phase 2 · Frame fields

An Ethernet II frame arrives with the two-byte field after the source MAC set to 0x0800. What does this tell the receiver?

  1. The payload is an IPv4 packet
  2. The payload is an ARP message
  3. The payload is an IPv6 packet
  4. The frame's data field is 2,048 bytes long
Answer & explanation
Correct answer: A

In Ethernet II that field is the Type (EtherType), used to hand the payload to the right L3 protocol: 0x0800 = IPv4, 0x0806 = ARP, 0x86DD = IPv6. Memorize all three — they're free marks.

B and C are incorrect — wrong EtherType values (0x0806 and 0x86DD respectively). D is the clever trap: legacy 802.3 puts a Length in this field instead, and 0x0800 is 2048 in decimal — but the disambiguation rule kills it: values ≤ 1500 are lengths, values ≥ 0x0600 (1536) are types. 2048 can't be a length anyway, since Ethernet's data field maxes out at the 1500-byte MTU.

Reference: Phase 2 — The Ethernet frame, byte by byte · s3-p2 · s2 49–56

Question 8Phase 2 · Minimum frame

Classic Ethernet enforces a 64-byte minimum frame (padding the data field to 46 bytes if needed). What is the reason for this minimum?

  1. The preamble needs 64 bytes to synchronize receiver clocks
  2. CRC-32 cannot be computed over fewer than 64 bytes
  3. It matches the minimum IP packet size
  4. It guarantees a station is still transmitting when a collision from the far end of the cable could arrive, making collision detection possible
Answer & explanation
Correct answer: D

CSMA/CD only works if the sender is still sending when news of a collision gets back to it — otherwise it would finish, hear silence, and wrongly assume success. The 64-byte minimum (6+6+2+46+4, preamble not counted) keeps the transmission long enough to cover the worst-case round trip on the maximum cable. Everything in Ethernet's design traces back to CSMA/CD.

A is incorrect — clock sync is the 8-byte preamble's job, separate from the minimum. B is incorrect — CRC-32 works over any length. C is incorrect — there's no such IP minimum driving this; the 46-byte floor is Ethernet's own, and short payloads are simply padded up.

Reference: Phase 2 — Trainer's tip under the frame table · s3-p1

Question 9Phase 2 · Channel partitioning

Six stations share a 60 Mbps channel using TDMA. Only one station currently has traffic to send. What throughput can that station achieve?

  1. 60 Mbps — it can use the idle slots
  2. 10 Mbps
  3. 30 Mbps
  4. 0 Mbps until another station also transmits
Answer & explanation
Correct answer: B — 10 Mbps (R/N)

TDMA pre-slices time into rounds of N fixed slots, one per station — your slot, your turn, even if everyone else is silent. A lone busy station still gets only R/N = 60/6 = 10 Mbps; the other five slots tick by empty and wasted.

A is incorrect — idle slots are not reusable in TDMA; that inflexibility is its defining weakness at low load (and exactly what random access fixes: a lone CSMA station gets the full R). C is incorrect — R/2 corresponds to nothing here. D is incorrect — the station transmits fine in its own slots; it's capped, not blocked.

Reference: Phase 2 — MAC protocol families, channel partitioning · s3-p1

Question 10Phase 2 · CSMA/CD

While transmitting a frame, a CSMA/CD station detects a collision. What does it do next?

  1. Completes the frame, then retransmits it after a fixed delay
  2. Aborts immediately, sends a jam signal, then retries after a random binary-exponential backoff
  3. Stops and waits until it receives the token before retrying
  4. Switches to a different frequency band and continues
Answer & explanation
Correct answer: B

The CD recipe: abort at once (why waste the channel finishing a corpse?), jam so every station notices, then draw a random delay from a window that doubles after each successive collision (binary exponential backoff) — the network self-calms under load.

A is incorrect twice over — finishing the ruined frame wastes channel time, and a fixed delay would make the same two stations collide again forever; randomness is what breaks the tie. C is incorrect — tokens belong to the "taking turns" family (Token Ring/FDDI), not CSMA/CD. D is incorrect — frequency slicing is FDMA, a channel-partitioning strategy, not Ethernet's.

Reference: Phase 2 — CSMA/CD · s3-p1

Question 11Phase 2 · CSMA/CA

Why does 802.11 WiFi use collision avoidance (CSMA/CA) rather than the collision detection (CSMA/CD) that classic wired Ethernet used?

  1. A radio cannot reliably detect a collision while transmitting, and hidden nodes may not hear each other at all
  2. Collisions are physically impossible in radio, so there is nothing to detect
  3. WiFi frames are too small for detection to work
  4. 802.11 coordinates stations by passing a token
Answer & explanation
Correct answer: A

Two radio realities kill detection: a transmitting radio drowns out everything else (it can't hear a whisper of a collision while shouting), and the hidden node problem — two senders out of each other's range collide at the receiver between them without ever hearing one another. So 802.11 avoids up front: sense, back off before transmitting, confirm with link-level ACKs, optionally reserve the channel with RTS/CTS.

B is incorrect — collisions absolutely happen in radio; they're just undetectable by the sender. C is incorrect — frame size isn't the issue (that's the CD minimum-frame story on wires, Q8). D is incorrect — no tokens in 802.11. Cost of avoidance: CA pays its overhead on every frame, so it's less efficient than CD, which recovers only when something actually goes wrong.

Reference: Phase 2 — CSMA/CA, and the CD-vs-CA table · s3-p1

Question 12Phase 2 · Error detection

Which error-detection technique can both detect and correct a single flipped bit without any retransmission?

  1. Single-bit parity
  2. Two-dimensional parity
  3. The Internet checksum
  4. CRC-32 as used in the Ethernet FCS
Answer & explanation
Correct answer: B

Arrange the data in a grid with parity per row and per column: one flipped bit trips exactly one row parity and one column parity, and their intersection locates the bad bit — flip it back. Detection and correction, no retransmission.

A is incorrect — single-bit parity detects any odd number of flips but can never say which bit; and two flips pass invisibly. (Your s3-p1 slide 13's layout makes "detect and correct" look like single-parity's property — it belongs to 2-D only; Appendix A.) C is incorrect — the checksum is a cheap 16-bit one's-complement sum; it detects weakly (two errors can cancel) and corrects nothing. D is incorrect as used — CRC-32 is by far the strongest detector here, but the Ethernet receiver responds to a failed FCS by discarding, not repairing (Q6).

Reference: Phase 2 — Error detection, 2-D parity worked example · Appendix A · s3-p1 13

Question 13Phase 2 · Checksum

Using the Internet checksum, a receiver adds all received 16-bit words including the checksum field itself. What result indicates "no error detected"?

  1. All 0s
  2. All 1s
  3. A polynomial-division remainder of zero
  4. An even count of 1-bits
Answer & explanation
Correct answer: B — all 1s

The sender sums the data as 16-bit integers in one's-complement arithmetic (any carry out of the top wraps around and is added back), then transmits the complement of that sum. Adding data + complement at the receiver therefore yields all 1s when nothing changed — "probably fine."

A is incorrect — all 0s is the expected result in ordinary two's-complement schemes, but the Internet checksum's wraparound arithmetic lands on all 1s; this exact distinction is a favorite trick option. C is incorrect — remainders of a generator polynomial are CRC mechanics, not checksum. D is incorrect — counting 1s is parity. Remember the placement too: checksum lives at the transport layer (UDP/TCP), software-cheap but weak; CRC guards L2 in NIC hardware.

Reference: Phase 2 — Internet checksum · s3-p1

Question 14Phase 2 · ARP

Which two statements about ARP are true? (Choose two.)

  1. The ARP request is sent to the broadcast MAC FF:FF:FF:FF:FF:FF
  2. The ARP reply is also broadcast, so every host learns the mapping
  3. ARP messages are carried directly inside Ethernet frames, with no IP header
  4. Routers forward ARP requests so a host can resolve MACs on remote networks
Answer & explanation
Correct answers: A and C

A is correct — "Who has 137.196.7.14?" must reach everyone, so the request goes to all Fs; the switch floods it and every NIC interrupts its OS to check. C is correct — ARP is its own EtherType (0x0806); there is no IP header on an ARP packet.

B is incorrect — the reply is unicast straight back to the asker; only the owner of the target IP answers, and the asker caches <IP, MAC, TTL> (entries age out in ~20 minutes). D is incorrect — ARP requests are L2 broadcasts and routers do not forward broadcasts: ARP stops at the subnet edge. That's precisely why a host ARPs for its default gateway when the destination is remote (Q16).

Reference: Phase 2 — ARP · s4 47–55

Question 15Phase 2 · L2 security

An attacker on your LAN answers ARP traffic claiming that the default gateway's IP address maps to the attacker's MAC address. Victims cache the lie and send their outbound traffic to the attacker. What is this attack called?

  1. MAC flooding
  2. DHCP starvation
  3. ARP spoofing (poisoning)
  4. Smurf attack
Answer & explanation
Correct answer: C

ARP spoofing/poisoning works because ARP has zero authentication — anyone can shout a false mapping and hosts will happily cache it, handing the attacker a man-in-the-middle position. Mitigations live in enterprise switches — Dynamic ARP Inspection, IP Source Guard — plus end-to-end encryption so intercepted traffic is useless.

A is incorrect — MAC flooding overwhelms a switch's address table to force it to flood traffic; no lying about gateways. B is incorrect — DHCP starvation exhausts a DHCP server's address pool (Phase 5 territory). D is incorrect — a Smurf attack abuses ICMP echo and broadcast amplification at Layer 3 (you'll meet ICMP in Phase 3.4).

Reference: Phase 2 — ARP security note · s4

Question 16Phase 2 · The finale

Host A (111.111.111.111) sends a packet to Host B (222.222.222.222) through router R, A's default gateway. In the frame that A transmits onto its own LAN, what are the destination MAC address and destination IP address?

  1. Destination MAC: B's · Destination IP: B's
  2. Destination MAC: R's near-side interface · Destination IP: R's
  3. Destination MAC: R's near-side interface · Destination IP: B's
  4. Destination MAC: FF:FF:FF:FF:FF:FF · Destination IP: B's
Answer & explanation
Correct answer: C

The golden rule: L2 addresses change at every hop; L3 addresses stay the same end-to-end. A frames the packet to its gateway's MAC (learned via ARP) while the IP header carries the true final destination, B. R strips the frame, routes on the IP header, ARPs for B on the far side if needed, and re-encapsulates the untouched packet in a brand-new frame. Across two routers you'd see three frames, one unchanged packet.

A is incorrect — A cannot use B's MAC: ARP doesn't cross routers (Q14), so A can never learn it. B is incorrect — sending to R's IP would deliver the packet to R and stop; R's MAC is the courier's address, B's IP is the letter's address. D is incorrect — data frames are unicast to the gateway; only the ARP request was broadcast. (One exception changes IPs mid-path — NAT, Phase 6.)

Reference: Phase 2 — The finale: one packet, two networks · s3-p2 22–27 · s4 2–13

Trainer's tip

The two ideas this set keeps circling — the I/G-bit test (Q4) and gateway framing (Q16) — are the two highest-yield facts in Phase 2. If either cost you a mark, redo the Phase 2 "Check yourself" quizzes tomorrow, cold. Foundations drill: Appendix C · next up: the Layer 3 drill.


Appendix E · Practice

Practice Q&A — Layer 3 L3 · NETWORK

Covers3.1 IP header · Q1–33.2 Addressing · Q4–73.3 Subnetting · Q8–133.4 ICMP · Q14–163.5 Routing · Q17–193.6 IPv6 · Q20–22
The heavyweight set — 22 questions for the heart of the course. Do Q8–13 (subnetting) with pen and paper, no exceptions: on the real exam these are pure speed, and speed only comes from reps. The magic-number method (3.3) is assumed throughout. Every explanation shows the full arithmetic.
Question 13.1 · IP's personality

IP is described as a best-effort protocol. What does this mean?

  1. IP retransmits any packet that is lost in transit
  2. IP guarantees packets arrive in the order they were sent
  3. IP establishes the full path before sending the first packet
  4. IP makes no guarantees of delivery, order, or duplication-freedom — it never acknowledges or retransmits
Answer & explanation
Correct answer: D

Best effort = unreliable by design: IP drops packets for a reason (checksum failure, TTL expiry), tells no one by itself, and moves on. Low overhead is the whole point — reliability is sold one layer up, by TCP.

A is incorrect — IP never retransmits; retransmission is TCP's job (Phase 4). B is incorrect — packets travel independently and may arrive out of order; re-ordering is also TCP's job. C is incorrect — that describes a connection-oriented protocol; IP is connectionless: no call setup, no handshake, every packet launched independently. Third adjective for the exam: media independent — IP only respects each link's MTU.

Reference: 3.1 — The Internet Protocol · s4 14–32

Question 23.1 · IHL

A router receives an IPv4 packet whose IHL field contains 0100 (decimal 4). What does the router do?

  1. Forwards it — a 16-byte header is valid
  2. Pads the header to 20 bytes and forwards it
  3. Drops it — IHL × 4 = 16 bytes, below the 20-byte minimum, so the header is corrupt
  4. Sends a Source Quench back to the sender
Answer & explanation
Correct answer: C

The ÷4 rule: four bits can only count to 15, but headers run 20–60 bytes, so IHL stores length ÷ 4. Here 4 × 4 = 16 bytes — impossible (minimum is 20 = IHL 0101), so the packet is malformed: drop it. This is the exact answer to your s4 slide-30 "why did the router drop it?" exercise.

A is incorrect — no legal IPv4 header is under 20 bytes (the fixed fields alone need 20). B is incorrect — routers validate, they don't repair. D is incorrect — Source Quench (type 4) was about congestion and is deprecated anyway (Q16 territory). Companion facts: IHL 0110 = 24 bytes → 4 bytes of options; data size = Total Length − IHL×4.

Reference: 3.1 — the ÷4 rule · s4 29–30

Question 33.1 · Fragmentation

A 4,020-byte packet (20-byte header + 4,000 bytes of data) must cross a link with MTU 1,500. What value goes in the Fragment Offset field of the second fragment?

  1. 185
  2. 92
  3. 1480
  4. 1500
Answer & explanation
Correct answer: A — 185

Max data per fragment = 1500 − 20 = 1,480 bytes. Fragment 1 carries data bytes 0–1479; fragment 2 begins at byte 1480. The offset field stores position ÷ 8: 1480 ÷ 8 = 185. (Flags: fragments 1 and 2 have M = 1; the last has M = 0.)

B (92) is incorrect — that would be ÷16; the magic multipliers are IHL ×4, Offset ×8, memorized as a pair. C (1480) is incorrect — that's the raw byte position, before the ÷8 encoding. D (1500) is incorrect — the MTU includes the header; data starts counting at 0. Two more freebies: all fragments share the same Identification, and reassembly happens only at the final destination — and in IPv6, routers never fragment at all.

Reference: 3.1 — fragmentation worked example · s4 24–26

Question 43.2 · Classful addressing

What is the class and default mask of the address 129.121.23.1?

  1. Class A, 255.0.0.0
  2. Class B, 255.255.0.0
  3. Class B, 255.255.255.0
  4. Class C, 255.255.255.0
Answer & explanation
Correct answer: B

First octet 129 sits in 128–191 → Class B, default mask 255.255.0.0 = /16. In binary the first bits are 10… — count leading 1s before the first 0: one → B. Landmarks to recognize instantly: A = 1–126, B = 128–191, C = 192–223, D (multicast) = 224–239.

A is incorrect — Class A is first octet 1–126 (not 1–127: network 0 is reserved and all of 127/8 is loopback — your decks disagree with themselves here; 1–126 is the safe exam answer, Appendix A). C is incorrect — right class, wrong mask; /24 is Class C's default. D is incorrect — Class C starts at 192.

Reference: 3.2 — classful chart · Appendix A · s6 29 · s4 40

Question 53.2 · Special addresses

A user reports "no Internet." Their laptop's address is 169.254.13.7. What does this tell you?

  1. The laptop received this address from the DHCP server normally
  2. An administrator configured a private RFC 1918 address
  3. DHCP got no answer, so the laptop self-assigned an APIPA address
  4. The laptop has joined a multicast group
Answer & explanation
Correct answer: C

169.254.0.0/16 is APIPA: a host that asks DHCP and hears nothing self-assigns here. Seeing 169.254.x.x is a diagnosis in itself — "my DHCP failed" — so you check the DHCP server and the path to it, not the laptop.

A is incorrect — a DHCP server hands out addresses from its configured pool; 169.254 appearing means the client gave up waiting. B is incorrect — the RFC 1918 private blocks are 10/8, 172.16/12 and 192.168/16; 169.254 isn't one of them (it's link-local). D is incorrect — IPv4 multicast is 224–239 in the first octet, and hosts don't self-number from it.

Reference: 3.2 — special and reserved addresses · s2 · s4 45

Question 63.2 · Loopback

On a machine with network problems, ping 127.0.0.1 succeeds. What has been proven?

  1. The NIC and its cable are working
  2. The local TCP/IP stack works — loopback traffic never reaches the NIC
  3. The default gateway is reachable
  4. DNS resolution is working
Answer & explanation
Correct answer: B

Packets to 127.0.0.1 are looped inside the OS: they exercise the TCP/IP software stack only and never touch the NIC, cable or network. That's the first rung of the diagnostic ladder: loopback → own IP → gateway → remote IP → name.

A is incorrect and is the slide trap (s2/41, s4/45 say loopback "tests the NIC" — it does not; Appendix A). The NIC is implicated only when loopback works but pinging your own real IP fails — that difference is the NIC test. C is incorrect — the gateway is two rungs later on the ladder. D is incorrect — no name was resolved; pinging a name is the DNS rung.

Reference: 3.2 — special addresses · 3.4 — the ping ladder · Appendix A

Question 73.2 · Private space

Which two of the following are RFC 1918 private addresses? (Choose two.)

  1. 10.255.0.1
  2. 172.32.1.1
  3. 192.168.254.7
  4. 172.168.1.1
  5. 224.0.0.9
Answer & explanation
Correct answers: A and C

The three private blocks: 10.0.0.0/8 (anything starting 10), 172.16.0.0/12 (172.16 through 172.31 only), and 192.168.0.0/16. A is inside 10/8 ✓; C is inside 192.168/16 ✓.

B (172.32.1.1) is incorrect — one past the fence: the /12 ends at 172.31.255.255, so 172.32 is public. D (172.168.1.1) is incorrect and is the deck's own trap — it looks like a mash-up of the two private ranges, but only the second octets 16–31 are private; your s6 practice uses this address as if it were private and it is not (Appendix A). E (224.0.0.9) is incorrect — that's a Class-D multicast group (RIPv2's, in fact), not host space at all.

Reference: 3.2 — special and reserved addresses · Appendix A · s6

Question 83.3 · Choosing the mask

You must subnet 192.168.15.0/24 to provide at least 50 hosts per subnet and at least 4 subnets. Which mask satisfies both requirements?

  1. 255.255.255.128 (/25)
  2. 255.255.255.192 (/26)
  3. 255.255.255.224 (/27)
  4. 255.255.255.240 (/28)
Answer & explanation
Correct answer: B — /26

Work both constraints: hosts need 2h−2 ≥ 50 → h = 6 (62 ✓; h=5 gives only 30). Host bits 6 → borrowed = 8−6 = 2 → 2² = 4 subnets ✓. Both land on /26 = 255.255.255.192: subnets at .0/.64/.128/.192, 62 usable hosts each.

A (/25) is incorrect — 126 hosts ✓ but only 2¹ = 2 subnets ✗. C (/27) is incorrect — 8 subnets ✓ but 2⁵−2 = 30 hosts ✗. D (/28) is incorrect — 14 hosts, worse still. Exam method: always convert each requirement to a bit count first, then check the other constraint.

Reference: 3.3 — the s6 48–49 worked example · s6

Question 93.3 · Class B subnetting

142.14.0.0/16 is subnetted with a /20 mask. What is the broadcast address of the subnet 142.14.16.0/20?

  1. 142.14.16.255
  2. 142.14.31.255
  3. 142.14.32.255
  4. 142.14.255.255
Answer & explanation
Correct answer: B — 142.14.31.255

/20 = 255.255.240.0 → the interesting octet is the third. Magic number = 256 − 240 = 16, so subnets start at 142.14.0.0, 142.14.16.0, 142.14.32.0… The broadcast of a subnet is the next subnet's start − 1: 142.14.32.0 − 1 = 142.14.31.255. Hosts run 142.14.16.1 – 142.14.31.254 (2¹²−2 = 4,094 of them).

A is incorrect — it assumes the subnet ends inside the third octet's .16 value; the host range spills across the fourth octet, which is normal whenever the interesting octet isn't the last. C is incorrect — 142.14.32.x already belongs to the next subnet. D is incorrect — that's the broadcast of the whole unsubnetted /16.

Reference: 3.3 — Class B worked example · s6

Question 103.3 · Placing a host

Host 192.168.4.137/26 — which subnet does it belong to, and what is that subnet's broadcast address?

  1. Network 192.168.4.128 · broadcast 192.168.4.191
  2. Network 192.168.4.64 · broadcast 192.168.4.127
  3. Network 192.168.4.128 · broadcast 192.168.4.255
  4. Network 192.168.4.192 · broadcast 192.168.4.255
Answer & explanation
Correct answer: A

/26 → mask octet 192 → magic = 64 → boundaries .0, .64, .128, .192. Take the largest multiple of 64 that is ≤ 137: 128. So the network is 192.168.4.128, the next subnet starts at .192, and the broadcast is .192 − 1 = .191. Usable hosts: .129–.190.

B is incorrect — 137 > 127, so it's past the .64 block entirely. C is incorrect — .255 is the broadcast of the .192 subnet (and of the whole /24), not of .128/26. D is incorrect — .192 is the next boundary; 137 < 192 so the host isn't in it. Binary check if unsure: 137 = 10001001 — subnet bits 10 → third block. The magic method and binary always agree.

Reference: 3.3 — magic number · s6

Question 113.3 · VLSM

Using VLSM on parent block 192.168.10.0/24, you must allocate: Sales = 100 hosts, Engineering = 50, Operations = 25, one WAN link = 2. Which network does Engineering receive?

  1. 192.168.10.0/25
  2. 192.168.10.64/26
  3. 192.168.10.128/26
  4. 192.168.10.128/25
Answer & explanation
Correct answer: C — 192.168.10.128/26

VLSM algorithm, in order: sort largest-first, size each with 2h−2 ≥ need, allocate at the next free boundary (previous broadcast + 1). Sales 100 → /25 → .0 (.1–.126, bc .127). Engineering 50 → 2⁶−2 = 62 ≥ 50 → /26, starting at .127 + 1 = .128 (.129–.190, bc .191). Then Operations /27 at .192, WAN /30 at .224.

A is incorrect — .0/25 is Sales's block; placing Engineering there ignores the sort. B is incorrect — .64/26 sits inside Sales's /25 (.0–.127): overlap, the classic error of not allocating from the previous broadcast + 1. D is incorrect — /25 (126 hosts) is wastefully large for 50 and would leave no room for the rest; VLSM's point is the smallest mask that fits.

Reference: 3.3 — the rebuilt VLSM example (s6 70–83)

Question 123.3 · The −2 trap

A subnet must support exactly 64 hosts. What is the smallest subnet (longest mask) that works?

  1. /25 — 126 usable hosts
  2. /26 — 64 usable hosts
  3. /27 — 32 usable hosts
  4. /24 — 256 usable hosts
Answer & explanation
Correct answer: A — /25

The trap is the −2. A /26 leaves h = 6 host bits → 2⁶ = 64 addresses, but two are reserved (all-zeros = network, all-ones = broadcast), so only 62 usable — one short. You must go to h = 7: /25 → 2⁷−2 = 126 usable. Exam writers set 64, 100 and 2 as requirements precisely because they straddle these boundaries (100 needs /25 not /26; 2 needs /30).

B is incorrect twice — a /26 does not have 64 usable hosts (62), and even its raw 64 addresses can't serve 64 hosts. C is incorrect — /27 has 30 usable, and "32" forgets the −2 as well. D works but wastes half the space — and its "256" also forgot the −2 (254). When two options fit, the smallest that fits is the answer.

Reference: 3.3 — trainer's tip: the three errors that kill VLSM answers · s6

Question 133.3 · CIDR aggregation

An ISP wants to advertise the eight networks 200.10.0.0/24 through 200.10.7.0/24 as a single route. Which prefix does it advertise?

  1. 200.10.0.0/23
  2. 200.10.0.0/22
  3. 200.10.0.0/20
  4. 200.10.0.0/21
Answer & explanation
Correct answer: D — 200.10.0.0/21

Eight consecutive /24s = 2³ blocks → shorten the prefix by 3 bits: 24 − 3 = /21. Check the alignment: /21 in the third octet has magic number 8, and the range 0–7 sits exactly on one /21 block starting at 0. This is CIDR pointed outward — supernetting/route aggregation, the mechanism that keeps Internet routing tables survivable.

A (/23) is incorrect — covers only 2 of the /24s (0–1). B (/22) is incorrect — covers 4 (0–3). C (/20) is incorrect — covers 16 (0–15): it includes the eight but over-claims eight more networks the ISP may not own; aggregation must match exactly what you're entitled to advertise.

Reference: 3.3 — CIDR, the same slash pointed outward · s6

Question 143.4 · TTL

A router receives a packet with TTL = 1, destined for a remote network. What is the exact sequence of events?

  1. The router forwards it; the next router will discard it
  2. The router silently discards it with no notification
  3. The router decrements TTL to 0, discards the packet, and sends ICMP Time Exceeded (type 11, code 0) to the source
  4. The router discards it and sends Destination Unreachable (type 3) to the source
Answer & explanation
Correct answer: C

Every router decrements TTL by 1 first; at 0 the packet is destroyed and Time Exceeded, type 11 code 0 goes back to the source, carrying the dead packet's IP header + first 8 data bytes so the sender knows which conversation died. TTL exists so lost packets can't loop forever — and traceroute weaponizes exactly this behavior.

A is incorrect — a router never forwards a packet whose TTL it just reduced to 0. B is incorrect — IP is mute, but this is precisely what ICMP exists to report. D is incorrect — type 3 means delivery failed for reachability reasons (no route = code 0, no host = code 1, no listening port = code 3); TTL expiry has its own message.

Reference: 3.4 — error family · traceroute · s5 1–14 · s4 (TTL)

Question 153.4 · Traceroute

Unix traceroute sends UDP probes to a deliberately absurd port. Which ICMP message tells it "you have reached the destination — stop"?

  1. Time Exceeded — type 11, code 0
  2. Echo Reply — type 0
  3. Redirect — type 5
  4. Destination Unreachable — type 3, code 3 (port unreachable)
Answer & explanation
Correct answer: D

Routers along the path each answer the TTL-limited probes with type 11 — that's the chorus that names them. The destination host is different: the probe actually arrives, no process listens on that absurd UDP port, so the destination itself sends type 3 / code 3 — Port Unreachable. A different message type = "we've arrived."

A is incorrect — type 11 is what every intermediate router sends; it can't distinguish the final hop. B is incorrect for Unix traceroute — Echo Reply ends Windows tracert, which sends pings instead of UDP. C is incorrect — Redirect just tells a host about a better first-hop router on its own LAN. Bonus: * * * lines are hops that ignore ICMP — normal, not broken.

Reference: 3.4 — traceroute worked example · s5

Question 163.4 · Type numbers

In ICMPv4, what are the type numbers for Router Advertisement and Router Solicitation?

  1. Advertisement = 9, Solicitation = 10
  2. Advertisement = 10, Solicitation = 9
  3. Advertisement = 134, Solicitation = 133
  4. Advertisement = 8, Solicitation = 0
Answer & explanation
Correct answer: A

ICMPv4 router discovery: routers announce with Advertisement = 9; hosts ask with Solicitation = 10. Your s5 slide 3 prints them swapped and tags them "(IPv6)" — two errors in one line (Appendix A).

B is incorrect — that's the slide's swap; don't copy it into an exam. C is incorrect for ICMPv4 — 133 (RS) / 134 (RA) are ICMPv6 Neighbor Discovery types, a different protocol with different numbers; SLAAC in 3.6 listens for type-134 RAs. Always check which ICMP the question means. D is incorrect — 8/0 are Echo Request/Reply, the ping pair, worth memorizing cold for a different question.

Reference: 3.4 — query family · Appendix A · s5 3

Question 173.5 · Forwarding

A packet's destination is 10.1.1.77. The routing table contains 10.0.0.0/8, 10.1.0.0/16, 10.1.1.0/24, and 0.0.0.0/0 — all match. Which row forwards the packet?

  1. 10.0.0.0/8
  2. 10.1.0.0/16
  3. 0.0.0.0/0 — the default route always wins
  4. 10.1.1.0/24
Answer & explanation
Correct answer: D

Longest prefix match wins, always — the most specific route is used: /24 beats /16 beats /8 beats /0. That single rule is the whole of forwarding-table lookup logic.

A and B are incorrect — both match, both lose to the more specific /24. C is incorrect and backwards — 0.0.0.0/0 has prefix length zero, so it matches everything and loses to everything; it's the "when all else fails" row (your home router's table is basically this one line pointing at the ISP). Keep the two jobs distinct too: this per-packet lookup is forwarding; routing is the slower global job of building the table.

Reference: 3.5 — the table being fought over · s9

Question 183.5 · Distance vector

Routers A—B—C run a distance-vector protocol. The B–C link fails, and B then installs a route to C through A — whose route points back through B. The two count upward forever. Which mechanism is specifically designed to prevent this?

  1. Hot-potato routing
  2. Poison reverse
  3. Equal-cost multipath
  4. Route aggregation
Answer & explanation
Correct answer: B

This is count-to-infinity, DV's classic failure: A advertised "I can reach C at cost 2" without saying via whom (via B!). Poison reverse kills the lie at the source: if A routes to C through B, A must tell B "my distance to C is ∞". B then can't fall for it. The second bandage is a finite infinity — RIP defines 16 = unreachable, which both terminates the count-up and caps RIP networks at 15 hops.

A is incorrect — hot potato is inter-AS behavior: dump the packet at the nearest gateway and let the next AS worry. C is incorrect — ECMP is OSPF load-sharing across equal-cost paths. D is incorrect — aggregation shrinks route advertisements (Q13); it doesn't address loops. Remember the asymmetry: in DV, good news travels fast, bad news travels slow.

Reference: 3.5 — count-to-infinity worked example · s9

Question 193.5 · The protocol zoo

Which routing protocol rides directly inside IP with protocol number 89, using neither TCP nor UDP?

  1. RIP
  2. BGP
  3. OSPF
  4. EIGRP
Answer & explanation
Correct answer: C — OSPF

OSPF is its own transport: IP protocol 89, no ports. Its signature set: link-state, floods LSAs, every router runs Dijkstra, cost ∝ 1/bandwidth, authenticates messages, supports equal-cost multipath, scales via areas (backbone = area 0). The enterprise default.

A is incorrect — RIP runs over UDP 520, full table to neighbors every 30 s (multicast 224.0.0.9 — note your slide's "244.0.0.9" is a typo), max 15 hops, route dead after 180 s of silence. B is incorrect — BGP runs over TCP 179: path-vector, policy over cost, the inter-AS glue. D is incorrect — EIGRP is Cisco's advanced DV with partial triggered updates and DUAL backup routes; it also isn't protocol 89. The one-liner to memorize: UDP 520 = RIP · IP 89 = OSPF · TCP 179 = BGP.

Reference: 3.5 — the protocol zoo · Appendix A · s9

Question 203.6 · Header diet

Which IPv4 header field was removed entirely in the IPv6 header?

  1. Flow Label
  2. Header Checksum
  3. Hop Limit
  4. Traffic Class
Answer & explanation
Correct answer: B

The checksum is gone: Ethernet's FCS already guards the frame and TCP/UDP checksum the payload, so recomputing a third checksum at every hop (TTL changes each hop, forcing recalculation!) was pure waste — removing it makes routers faster. Also gone: the fragmentation trio (IPv6 routers never fragment; sources do path-MTU discovery via ICMPv6 Packet Too Big), IHL (header is a fixed 40 bytes — not 16, whatever s10 slide 7 says; Appendix A), and Options (replaced by the Next-Header extension chain).

A is incorrect — Flow Label is the genuinely new field, tagging packets of one stream. C is incorrect — Hop Limit is TTL renamed (honestly: it counts hops, not time). D is incorrect — Traffic Class is ToS renamed. Renames survive; the checksum died.

Reference: 3.6 — the header diet · Appendix A · s10 7

Question 213.6 · Address compression

What is the correct, fully compressed form of 2001:0db8:0000:0000:0000:ff00:0042:8329?

  1. 2001:db8::ff::42:8329
  2. 2001:db8::ff00:42:8329
  3. 2001:db8::ff:42:8329
  4. 2001:0db8:0:0:0:ff00:0042:8329
Answer & explanation
Correct answer: B

Rule 1: drop leading zeros per group → 2001:db8:0:0:0:ff00:42:8329. Rule 2: replace one run of consecutive all-zero groups with :: (longest run; leftmost on a tie) → 2001:db8::ff00:42:8329.

A is incorrect — two :: in one address is illegal (ambiguous: you couldn't tell how many zero groups each hides). C is incorrect — it turned ff00 into ff, dropping trailing zeros inside a group; only leading zeros may go. D is incorrect as "fully compressed" — it's a legal address but keeps 0db8's leading zero, 0042's, and spells out the zero run instead of using ::. Decompression tip: count the groups present; :: stands for 8 − that count.

Reference: 3.6 — the two compression rules · s10

Question 223.6 · Address types

An interface's only IPv6 address is fe80::a1b2:c3ff:fed4:e5f6. Which statement is true?

  1. It is a global unicast address, routable on the Internet
  2. It is a multicast address for all nodes on the link
  3. It is a unique local address, routable inside the organization
  4. It is a link-local address — valid only on its own link; routers never forward it
Answer & explanation
Correct answer: D

fe80::/10 = link-local: mandatory on every IPv6 interface, auto-generated, and confined to its own link — all the neighbor plumbing (ND, routing-protocol hellos, your default gateway's address) runs on it. This host can talk to its router on the link, but cannot browse the IPv6 Internet until it gains a global address (via SLAAC — hearing an ICMPv6 type-134 RA — or DHCPv6).

A is incorrect — global unicast is 2000::/3 (starts with 2 or 3). B is incorrect — multicast is ff00::/8; all-nodes is ff02::1 (and remember: IPv6 has no broadcast at all — multicast took over the job). C is incorrect — unique local is fc00::/7, in practice fd00::/8. Sight-recognition list: 2/3 → GUA · fe8 → link-local · fd → ULA · ff → multicast · ::1 → loopback.

Reference: 3.6 — address types · s10

Trainer's tip

Scoring guide for this set: Q8–13 are the money questions — if any subnetting item took you over 90 seconds, that's a speed problem, not a knowledge problem; redo 3.3's worked examples with a timer. Earlier drills: Foundations · Layer 2 · want more header reps? The 3.1 deep dive is next.


Appendix F · Practice

Deep dive — 3.1 The IPv4 header L3 · NETWORK

Covers3.1 · IP & its header, in depths4 · 14–32
Twelve reps on one section. Appendix E gave 3.1 three questions; this drill works every field and every fragmentation angle, because header arithmetic (×4, ×8, −20) is free-mark territory if it's automatic. Keep the header diagram from 3.1 closed — reconstruct it from memory as you go.
Question 13.1 · L3's four operations

Which of the following is NOT one of the network layer's four basic operations?

  1. Addressing end devices
  2. Encapsulating the transport-layer segment into a packet
  3. Routing packets between networks
  4. Guaranteeing delivery with acknowledgments and retransmissions
Answer & explanation
Correct answer: D

The four operations are addressing end devices, encapsulation, routing, and de-encapsulation at the destination. Guarantees are deliberately absent — IP is best effort: no ACKs, no retransmission, ever.

A, B and C are all incorrect as answers because each is one of the four (the fourth being de-encapsulation, the mirror of B). If a question pairs "IP" with any reliability verb — acknowledge, retransmit, guarantee, order — the pairing is wrong; those verbs belong to TCP, one layer up.

Reference: 3.1 — Why IP exists · s4 14–17

Question 23.1 · Connectionless

IP is a connectionless protocol. Which statement correctly describes what this means for two packets sent back-to-back to the same destination?

  1. Each is launched independently, with no call setup, and each may take a different path
  2. A virtual circuit is established first, then both follow it
  3. The packets perform a handshake with the destination before data flows
  4. Both are guaranteed to follow the same path and arrive in order
Answer & explanation
Correct answer: A

Connectionless = no setup, no state, no promises: every packet is an independent event, routed on its own, possibly along different paths as tables change — which is also why arrival order isn't guaranteed.

B is incorrect — virtual circuits are the connection-oriented model (think old telephone networks), the opposite design. C is incorrect — the famous handshake (SYN, SYN-ACK, ACK) is TCP's, at Layer 4; nothing at the IP layer shakes hands. D is incorrect — same-path and in-order are exactly the guarantees connectionless service refuses to make.

Reference: 3.1 — IP's personality · s4 18–20

Question 33.1 · Media independence

IP is media independent — it runs over copper, fiber, or radio without caring. What is the one property of each underlying link that IP must nevertheless respect?

  1. The link's signaling and encoding scheme
  2. The link's duplex mode
  3. The link's MTU (maximum transmission unit)
  4. The link's MAC address format
Answer & explanation
Correct answer: C

The MTU — the largest packet the link will carry (1,500 bytes on Ethernet) — is the single constraint L2 imposes upward. A packet bigger than the next link's MTU must be fragmented (IPv4, Q9–12) or, in IPv6, dropped so the source can resize.

A is incorrect — encoding is Layer 1's private business; IP never sees it. B is incorrect — duplex is a link-operation detail handled entirely at L1/L2. D is incorrect — MAC formats matter to the frame, and the whole point of Phase 2's finale is that the frame is rebuilt per hop while the packet rides along unchanged.

Reference: 3.1 — IP's personality · s4 21–23

Question 43.1 · IHL arithmetic

An IPv4 header has IHL = 0111 (decimal 7) and Total Length = 100. How many bytes of data does the packet carry?

  1. 80
  2. 72
  3. 100
  4. 64
Answer & explanation
Correct answer: B — 72 bytes

Header = IHL × 4 = 7 × 4 = 28 bytes (so 28 − 20 = 8 bytes of options). Total Length counts header plus data, so data = 100 − 28 = 72 bytes. This is the exact exercise in your s4 slide-29 speaker notes.

A (80) is incorrect — it subtracts the 20-byte minimum header, forgetting that IHL = 7 means options are present. C (100) is incorrect — Total Length is never pure data; it always includes the header. D (64) is incorrect — no rule produces it; if you got 64, you likely subtracted IHL×4 twice. Anchors to memorize: IHL 0101 = 20 B (no options), 0110 = 24 B, maximum 1111 = 60 B.

Reference: 3.1 — the ÷4 rule · s4 29

Question 53.1 · Total Length

The Total Length field is 16 bits. What is the largest possible IPv4 packet (header + data), in bytes?

  1. 1,500
  2. 65,536
  3. 4,096
  4. 65,535
Answer & explanation
Correct answer: D — 65,535

16 bits count from 0 to 2¹⁶ − 1 = 65,535. That's the ceiling on an entire IPv4 packet — though anything near it will be fragmented mercilessly on real links.

A (1,500) is incorrect — that's Ethernet's MTU, a property of one link type, not of IP itself; the exam loves testing whether you separate the two ceilings. B (65,536) is incorrect — off by one: 2¹⁶ is the number of values, and counting starts at 0. C (4,096) is incorrect — that's 2¹², an unrelated landmark from your powers-of-2 table.

Reference: 3.1 — field notes · Appendix B formulas · s4 28

Question 63.1 · TTL

Despite its name, what does the IPv4 Time To Live field actually measure, and why does it exist?

  1. Seconds remaining before the packet expires; it enforces delivery deadlines
  2. A hop counter, decremented by 1 at every router; it exists so lost packets can't loop forever
  3. The number of fragments the packet may still be split into
  4. The packet's queueing priority at congested routers
Answer & explanation
Correct answer: B

TTL is a hop counter wearing a time-based name: each router decrements it; the router that reaches 0 destroys the packet and reports back with ICMP Time Exceeded (type 11). Without it, a routing loop would circulate packets eternally. IPv6 fixes the dishonest name: the same field is called Hop Limit.

A is incorrect — no clock is involved; "time" is historical wording. C is incorrect — fragmentation is governed by the Identification/Flags/Offset trio, not TTL. D is incorrect — priority hints live in the Type of Service / DSCP field. Practical bonus: received-TTL values near 64/128/255 hint at the sender's OS (Linux/Windows/network gear).

Reference: 3.1 — field notes · 3.4 — Time Exceeded · s4 27

Question 73.1 · Protocol field

An arriving IPv4 packet has Protocol = 17. To which module does the receiving host hand the payload?

  1. TCP
  2. ICMP
  3. UDP
  4. OSPF
Answer & explanation
Correct answer: C — UDP

The Protocol field is L3's "what's inside" pointer — the same idea as Ethernet's EtherType, one layer up. The trio to know cold: 1 = ICMP, 6 = TCP, 17 = UDP (and 89 = OSPF for Phase 3.5).

A is incorrect — TCP is protocol 6. B is incorrect — ICMP is protocol 1 (and remember, ICMP rides inside IP yet counts as an L3 protocol — the network layer talking about itself). D is incorrect — OSPF is 89, the "no TCP, no UDP" routing protocol from the zoo table. Every layer needs this pointer: EtherType at L2, Protocol at L3, port numbers at L4.

Reference: 3.1 — field notes · Appendix B protocol numbers · s4 27

Question 83.1 · Flags

A received IPv4 packet has flags D = 0, M = 1. What does this combination tell you?

  1. This is the last fragment of its packet
  2. This is a fragment, and more fragments follow it
  3. The packet was never fragmented
  4. The packet is corrupt and must be discarded
Answer & explanation
Correct answer: B

The three flag bits: bit 0 reserved (always 0), bit 1 = Don't-fragment, bit 2 = More-fragments-follow. M = 1 says exactly what it names: at least one more fragment of this packet is behind this one. D = 0 simply means fragmenting was permitted.

A is incorrect — the last fragment is the one with M = 0 and a non-zero offset (Q11). C is incorrect — "never fragmented" is M = 0 and Offset = 0 (Q10); an M of 1 proves fragmentation happened. D is incorrect — nothing here is malformed; corruption verdicts come from the checksum or an impossible IHL, not from the flags.

Reference: 3.1 — field notes, Flags · s4 24–26

Question 93.1 · Fragment count

A 4,020-byte packet (20-byte header + 4,000 bytes data) must cross an Ethernet link with MTU 1,500. Into how many fragments is it split?

  1. 2
  2. 3
  3. 4
  4. It cannot be fragmented, because 4,020 exceeds the Total Length limit
Answer & explanation
Correct answer: B — 3 fragments

Each fragment gets its own 20-byte header, so max data per fragment = 1500 − 20 = 1,480. Split 4,000 bytes: 1,480 + 1,480 + 1,040 → three fragments (offsets 0, 185, 370; M = 1, 1, 0). All three carry the same Identification so the destination can group them.

A (2) is incorrect — 4020 ÷ 1500 ≈ 2.7 tempts a floor to 2, but two fragments carry at most 2,960 data bytes: not enough. The correct mental step is ⌈4000 ÷ 1480⌉ = 3. C (4) is incorrect — three suffice; a fourth would carry nothing. D is incorrect — 4,020 is far below the 65,535 ceiling (Q5); the MTU is a per-link limit, not a validity limit.

Reference: 3.1 — fragmentation worked example · s4 24–25

Question 103.1 · Reading fragments

A packet arrives with M = 0 and Fragment Offset = 0. What do you conclude?

  1. It is the first fragment of a larger packet
  2. It is the last fragment of a larger packet
  3. The packet was never fragmented — it is whole
  4. The fragment is corrupt: M = 0 requires a non-zero offset
Answer & explanation
Correct answer: C

Read the two fields together: Offset = 0 → "my data starts at byte 0" (the beginning); M = 0 → "nothing follows me". Starts at the start and nothing follows = the entire original packet. This is the normal state of most traffic.

A is incorrect — a true first fragment has Offset = 0 but M = 1 (more behind it). B is incorrect — a last fragment has M = 0 but a non-zero offset (its data starts deep in the payload). D is incorrect — the combination is not only legal, it's the default for unfragmented packets. This exact teaser is on your s4 slide 26.

Reference: 3.1 — reading practice · s4 26

Question 113.1 · Offset ×8

A packet arrives with M = 0 and Fragment Offset = 5. Which statement is correct?

  1. It is the last fragment, and its data begins at byte 40 of the original payload
  2. It is the last fragment, and its data begins at byte 5
  3. It is the first fragment, and its data begins at byte 40
  4. It is a middle fragment, and its data begins at byte 40
Answer & explanation
Correct answer: A

Two decodes: M = 0 with a non-zero offset → last fragment. Offset stores position ÷ 8, so the data starts at 5 × 8 = byte 40. (This also tells you the fragments before it carried exactly 40 data bytes total.)

B is incorrect — it forgets the ×8: the field's value is never the raw byte position; a 13-bit field couldn't span 65,535 bytes otherwise. That's also why every fragment except the last must carry a multiple of 8 data bytes. C is incorrect — first fragments have Offset = 0. D is incorrect — a middle fragment would have M = 1. Keep the pair straight: IHL ×4, Offset ×8.

Reference: 3.1 — fragmentation worked example · trainer's tip · s4 26

Question 123.1 · Reassembly

A packet is fragmented at the first router and its fragments then cross four more routers. Where are the fragments reassembled?

  1. At each router along the way, hop by hop
  2. At the sending host, before retransmission
  3. At the first router whose outgoing link has a large enough MTU
  4. Only at the final destination host
Answer & explanation
Correct answer: D

IPv4 reassembly happens once, at the final destination, which collects fragments by their shared Identification and stitches them with the offsets. Routers never reassemble — they'd need to buffer and wait for stragglers that might take other paths entirely (IP is connectionless, Q2).

A is incorrect — hop-by-hop reassembly would destroy the performance IP exists to provide, and fragments may not even share a path. B is incorrect — the sender may never learn fragmentation occurred (with D = 0 it isn't told). C is incorrect — a router with a roomy link just forwards the fragments as-is; nothing merges them mid-path. Contrast for 3.6: IPv6 removes router fragmentation altogether — the source sizes packets via path-MTU discovery.

Reference: 3.1 — fragmentation worked example · 3.6 — the header diet · s4 24–26

Trainer's tip

Self-test benchmark: Q4, Q9 and Q11 together in under three minutes, all correct, working shown. If the ×4/×8/−20 moves aren't reflexes yet, redo 3.1's worked ritual once a day until they are. Full-phase set: Appendix E · next deep dive: 3.2 Addressing.


Appendix G · Practice

Deep dive — 3.2 IPv4 addressing L3 · NETWORK

Covers3.2 · addressing, classes, special blockss4 · 33–46s2 · 35–41s6 · 8–16, 29–31, 35–36
Twelve reps on addressing. Appendix E touched 3.2 with four questions (class/mask, APIPA, loopback, private ranges); this set drills the rest — the AND operation, the four landmarks, classful capacities, broadcast flavors, multicast, and delivery types. Class recognition should be instant by the end: 126 | 128 | 191 | 192 | 223 | 224.
Question 13.2 · The AND operation

A host is configured 192.240.33.91 with mask 255.255.255.0. What network does it belong to, and by what operation is that computed?

  1. 192.240.33.0 — bitwise AND of address and mask
  2. 192.240.33.91 — the address is the network
  3. 192.240.0.0 — bitwise OR of address and mask
  4. 192.240.33.255 — bitwise AND of address and inverted mask
Answer & explanation
Correct answer: A

Network = address AND mask. Because 1 AND x = x and 0 AND x = 0, the mask's 1s let network bits survive while its 0s zero out the host bits: 192.240.33.91 AND 255.255.255.0 = 192.240.33.0 (your s6 slide-36 rep exactly).

B is incorrect — an address with a non-zero host portion names a host, never the network itself. C is incorrect — OR with the mask would force all network bits to 1: nonsense. D is incorrect — ANDing with the inverted mask extracts the host portion; and .255 here is the broadcast, obtained by setting host bits to 1, not by that operation on the network bits.

Reference: 3.2 — the mask and the AND operation · s6 35–36

Question 23.2 · The four landmarks

For the network 192.168.100.0/24, which address is the directed broadcast, and why can't it be assigned to a host?

  1. 192.168.100.0 — it has all host bits set to 0
  2. 192.168.100.1 — it is reserved for the gateway
  3. 192.168.100.254 — it is the last address
  4. 192.168.100.255 — it has all host bits set to 1, addressing every host on that network
Answer & explanation
Correct answer: D

The four landmarks: network (host bits all 0 → .0), first usable (.1), last usable (.254 = broadcast − 1), directed broadcast (host bits all 1 → .255). The all-ones pattern means "every host here at once", so no single host may own it — it's one of the two addresses the −2 in 2h−2 pays for.

A is incorrect — all-zeros is the network address, the other reserved landmark. B is incorrect — .1 is fully assignable; giving it to the gateway is convention, not reservation. C is incorrect — .254 is the last usable host, one below the broadcast.

Reference: 3.2 — the four landmarks · s6

Question 33.2 · The −2

The usable-host formula is 2h − 2. What exactly do the two subtracted addresses represent?

  1. The default gateway and the DNS server
  2. The network address (host bits all 0) and the directed broadcast (host bits all 1)
  3. The first and last usable hosts, held in reserve
  4. The loopback and the APIPA address of the subnet
Answer & explanation
Correct answer: B

Every network burns exactly two patterns: all-zeros names the network itself, all-ones is its directed broadcast. Everything between is assignable. That's why /24 gives 2⁸−2 = 254 and why "need 64 hosts" forces /25, not /26 (62).

A is incorrect — gateways and DNS servers use ordinary usable addresses; .1 for the gateway is mere convention. C is incorrect — first and last usable are exactly that: usable. D is incorrect — loopback (127/8) and APIPA (169.254/16) are global special blocks, not per-subnet reservations.

Reference: 3.2 — the formula of the course · s6

Question 43.2 · Class recognition

Which of the following addresses is Class C?

  1. 88.21.25.1
  2. 129.121.23.1
  3. 200.45.11.9
  4. 230.1.1.1
Answer & explanation
Correct answer: C

First octet 200 sits in 192–223 → Class C (default /24). Binary shortcut: count leading 1s before the first 0 — 200 = 11001000, two leading 1s → C.

A is incorrect — 88 < 128 → Class A (leading bit 0). B is incorrect — 129 is in 128–191 → Class B (leading bits 10). D is incorrect — 230 is in 224–239 → Class D multicast: not host space at all, no mask, no hosts. The instant-recognition landmarks: 126 | 128 | 191 | 192 | 223 | 224.

Reference: 3.2 — classful chart · trainer's tip · s6 29–31

Question 53.2 · Class A count

How many usable Class A networks exist?

  1. 254
  2. 127
  3. 128
  4. 126
Answer & explanation
Correct answer: D — 126

Class A uses 7 network bits → 2⁷ = 128 defined networks, but two are lost: network 0 is reserved, and the entire 127.0.0.0/8 block is loopback. Usable first octets run 1–126.

A is incorrect — 254 is the hosts in a /24, a different formula entirely. B is incorrect — 127 counts 1–127, but 127 itself is loopback, not assignable network space. C is incorrect — 128 is the theoretical 2⁷ before reservations. Your decks disagree with themselves here (s2/37 and s4/40 say "1–127", s6/29 says "1–126") — 1–126 is the safe exam answer (Appendix A).

Reference: 3.2 — classful chart · Appendix A · s6 29

Question 63.2 · Class B capacity

How many usable hosts does one Class B network support?

  1. 16,382
  2. 65,536
  3. 65,534
  4. 262,142
Answer & explanation
Correct answer: C — 65,534

Class B's default mask is /16 → 16 host bits → 2¹⁶ − 2 = 65,534. Companion number: there are 2¹⁴ = 16,384 Class B networks (two leading bits fixed at 10, fourteen free).

A is incorrect — 16,382 misuses the network exponent (2¹⁴−2); the −2 applies to hosts, and 14 bits was the network count anyway. B is incorrect — 65,536 forgets the −2 (network + broadcast). D is incorrect — 2¹⁸−2 corresponds to no classful boundary. Watch the superscript damage in your extracted notes: "2¹⁶" flattened to "216" — re-insert the power whenever a bare number looks absurd (Appendix A).

Reference: 3.2 — classful chart · s6

Question 73.2 · Why CIDR

In 1990 (pre-CIDR), a company needs addresses for 300 hosts. Under classful rules, what must it be allocated, and what is the consequence?

  1. A Class C network — 300 hosts fit comfortably
  2. Two Class C networks glued together with a /23 mask
  3. A Class A network, since Class B was reserved for ISPs
  4. A Class B network — wasting roughly 65,000 of its 65,534 addresses
Answer & explanation
Correct answer: D

Classful offered only three sizes: 254, 65,534, or 16,777,214 usable hosts. 300 > 254, so the company takes a whole Class B and strands ~65,000 addresses. That systemic waste is precisely why CIDR (1993) made the prefix free-moving — today an ISP could hand over a /23 (510 hosts) and be done.

A is incorrect — Class C tops out at 2⁸−2 = 254 usable: 300 doesn't fit. B is incorrect for the era — a /23 is the right modern answer, but supernetting two Cs is CIDR thinking; in the classful world masks were fixed by class. C is incorrect — no such reservation existed; Class A went to giant early adopters.

Reference: 3.2 — classful history · 3.3 — CIDR · s6

Question 83.2 · Two broadcasts

What is the difference between 192.168.100.255 (on network 192.168.100.0/24) and 255.255.255.255?

  1. They are two notations for the same thing
  2. The first is the directed broadcast of one specific network; the second is the limited broadcast — "every host on my local network" — which routers never forward
  3. The second is routable across the Internet; the first is not
  4. The first is a Layer 2 broadcast, the second a Layer 3 broadcast
Answer & explanation
Correct answer: B

Directed broadcast = host-bits-all-1 of a named network — it addresses every host of that particular network. Limited broadcast = all 32 bits set — "everyone on this wire", used when a host doesn't even know what network it's on (DHCP discovery will use it in Phase 5). Routers never forward the limited broadcast, and as your slides put it: IP broadcasts die at the router, same as ARP.

A is incorrect — one names a specific network's hosts, the other is network-agnostic and purely local. C is incorrect and backwards-dangerous — 255.255.255.255 is never forwarded anywhere. D is incorrect — both are L3 addresses; the L2 broadcast is FF:FF:FF:FF:FF:FF (a frame that often carries these packets, but a different layer's concept).

Reference: 3.2 — special addresses · delivery types · s4 44–46

Question 93.2 · Multicast

RIPv2 sends its routing updates to a multicast group. Which address is it, and what class does it belong to?

  1. 224.0.0.5 — Class D
  2. 244.0.0.9 — Class E
  3. 224.0.0.9 — Class D
  4. 239.0.0.9 — Class C
Answer & explanation
Correct answer: C — 224.0.0.9, Class D

Class D (first octet 224–239, leading bits 1110) is multicast: destination-only group addresses — no masks, no hosts, never a source. RIPv2's group is 224.0.0.9; routing protocols love these well-known groups.

A is incorrect — 224.0.0.5 (with .6) belongs to OSPF. B is incorrect and is your s2 slide-40 typo immortalized: "244.0.0.9" — 244 falls in Class E (240–255, reserved/experimental, never assigned); the real first octet is 224 (Appendix A). D is incorrect — 239 is Class D territory, but the label "Class C" is wrong and the address isn't RIP's.

Reference: 3.2 — special addresses · 3.5 — RIP · Appendix A · s2 40

Question 103.2 · Delivery types

Unicast, multicast, broadcast — which of these can legally appear as the source address of an IPv4 packet?

  1. Unicast only
  2. Unicast and multicast
  3. All three
  4. Unicast and broadcast
Answer & explanation
Correct answer: A

A packet is always from exactly one interface, so only a unicast address can be a source. Multicast (one-to-group) and broadcast (one-to-all) are destination-only concepts — "from everyone" is meaningless.

B and C are incorrect — a multicast source would claim the packet came from a whole group at once; receivers reply to groups' traffic via the sender's unicast address. D is incorrect — a broadcast source is equally impossible (and is a classic signature of forged/malformed traffic; recall the Smurf-style abuse pattern from the Layer 2 set). Same asymmetry you learned for MACs in Phase 2 — the rule survives the layer change.

Reference: 3.2 — the three delivery types · s4 44

Question 113.2 · The diagnostic pair

ping 127.0.0.1 succeeds, but pinging the machine's own real IP address fails. What does this pair of results implicate?

  1. The TCP/IP stack is broken
  2. The DHCP server is down
  3. The default gateway is misconfigured
  4. The NIC, its driver, or its cabling
Answer & explanation
Correct answer: D

Loopback proves the software stack works (it never touches hardware). The next rung — your own real IP — is the first test that involves the interface. Stack ✓ + interface ✗ = the fault lives in the NIC/driver/cable zone. This difference between two pings is the real "NIC test" your slides mislabeled loopback as (Appendix A).

A is incorrect — a broken stack would fail the loopback ping too. B is incorrect — DHCP problems announce themselves as a 169.254.x.x address, and a missing lease wouldn't make your own-IP ping fail this way. C is incorrect — the gateway isn't consulted until you ping off-subnet; both of these pings stay local. Full ladder: loopback → own IP → gateway → remote IP → name.

Reference: 3.2 — loopback trap · 3.4 — the ping ladder · Appendix A

Question 123.2 · Private space

A server is configured with 10.0.5.9. Why can it not communicate directly on the public Internet with this address?

  1. 10.0.5.9 is a multicast group address
  2. Class A addresses are no longer valid on the Internet
  3. It is an RFC 1918 private address — Internet routers won't route it; NAT must translate it to a public address first
  4. It is an APIPA address, proving DHCP failed
Answer & explanation
Correct answer: C

10.0.0.0/8 is one of the three RFC 1918 private blocks (with 172.16.0.0/12 and 192.168.0.0/16) — free for anyone's internal use, and by agreement not routable on the public Internet. Since everyone may be using 10.0.5.9 internally, no public router can know whose it is. The way out is NAT (Phase 6), translating private ↔ public at the edge — private space is NAT's raw material.

A is incorrect — multicast is 224–239 in the first octet. B is incorrect — public Class A space routes fine; it's this specific block, not the class, that's private. D is incorrect — APIPA is 169.254.0.0/16, a different diagnosis entirely.

Reference: 3.2 — special addresses · s6 · Phase 6 (NAT)

Trainer's tip

Addressing is memory more than math — five landmark numbers (126 | 128 | 191 | 192 | 223 | 224), three private blocks, four special blocks, one formula. Make flashcards of Q4, Q5, Q9 and Q12's facts and this section is banked. Header drill: Appendix F · full phase: Appendix E · next deep dive: 3.3 Subnetting.


Appendix H · Practice

Deep dive — 3.3 Subnetting, CIDR & VLSM L3 · NETWORK

Covers3.3 · the skill of the courses6 · all 85
Fourteen reps, pen and paper mandatory. Appendix E's Q8–13 were the warm-up; every number here is fresh. Target pace: 60–90 seconds per computation question. The whole section runs on three tools — 2b subnets, 2h−2 hosts, magic = 256 − mask octet — plus the VLSM discipline: sort, size, allocate at broadcast + 1.
Question 13.3 · Why subnet

Which of the following is NOT a reason to subnet a network?

  1. Shrinking broadcast domains to improve performance
  2. Grouping hosts by department, floor, or function
  3. Creating natural security checkpoints at subnet boundaries
  4. Increasing the total number of usable addresses in the block
Answer & explanation
Correct answer: D

Subnetting never adds addresses — it costs them: every subnet you create burns two more (its own network + broadcast), and it adds the price of routers between the pieces. You subnet despite that, for the other three reasons.

A is incorrect as an answer because it's the headline benefit — one flat network means every ARP request interrupts every host; 1,000 machines hear 1,000 machines' broadcasts. B is incorrect — organizational grouping is a core motive. C is incorrect — routers between subnets are natural places to apply rules; that's the security motive.

Reference: 3.3 — why subnet at all · s6

Question 23.3 · Borrowing bits

192.168.10.0/24 is subnetted to /27. How many subnets are created, and how many usable hosts does each hold?

  1. 4 subnets · 62 hosts
  2. 8 subnets · 32 hosts
  3. 8 subnets · 30 hosts
  4. 6 subnets · 30 hosts
Answer & explanation
Correct answer: C

/24 → /27 borrows 3 bits: 2³ = 8 subnets. Host bits left h = 5: 2⁵ − 2 = 30 usable each. Mask 255.255.255.224, magic 32 → subnets at .0, .32, .64 … .224.

A is incorrect — that's /26 (borrow 2). B is incorrect — 32 forgets the −2; each subnet still pays its network and broadcast. D is incorrect — "6" subtracts 2 from the subnet count; the −2 applies to hosts only (the old "subtract 2 subnets" rule belongs to a pre-CIDR convention your course doesn't use — the deck's own examples count all 2b).

Reference: 3.3 — the one move behind everything · s6

Question 33.3 · Magic number

For a /28 mask, what is the value in the interesting (fourth) octet, and what is the block size between consecutive subnets?

  1. 224 · blocks of 32
  2. 248 · blocks of 8
  3. 240 · blocks of 14
  4. 240 · blocks of 16
Answer & explanation
Correct answer: D

/28 = four bits borrowed past /24 → mask octet 240 (11110000). Magic number = 256 − 240 = 16: subnets start at .0, .16, .32 … Each block spans 16 addresses, of which 14 are usable (2⁴−2).

A is incorrect — 224 is /27 (blocks of 32). B is incorrect — 248 is /29 (blocks of 8). C is the subtle trap — 14 is the usable-host count, not the block size; boundaries step by the full 16. Mixing those two numbers up misplaces every boundary that follows.

Reference: 3.3 — the magic number · s6

Question 43.3 · Placing a host, third octet

Host 172.16.19.200/22 — what are its subnet's network and broadcast addresses?

  1. Network 172.16.16.0 · broadcast 172.16.19.255
  2. Network 172.16.19.0 · broadcast 172.16.19.255
  3. Network 172.16.16.0 · broadcast 172.16.16.255
  4. Network 172.16.20.0 · broadcast 172.16.23.255
Answer & explanation
Correct answer: A

/22 = 255.255.252.0 → interesting octet is the third. Magic = 256 − 252 = 4: boundaries at 0, 4, 8, 12, 16, 20… Largest multiple of 4 ≤ 19 is 16 → network 172.16.16.0. Next subnet starts at 172.16.20.0, so broadcast = 172.16.19.255. Hosts: 172.16.16.1 – 172.16.19.254 (1,022 of them).

B is incorrect — it treats the address's own third octet as a boundary; 19 is not a multiple of 4. C is incorrect — the range spills across third-octet values 16–19; ending it at .16.255 forgets the spillover. D is incorrect — that's the next block (20–23); our host's 19 is below it.

Reference: 3.3 — Class B worked example · s6

Question 53.3 · The .0 trick

142.14.0.0/16 has been subnetted with /20. Is 142.14.33.0 a valid host address?

  1. No — addresses ending in .0 are never assignable
  2. Yes — under /20 it lies inside subnet 142.14.32.0, and its host portion is not all-zeros
  3. No — it is the network address of a subnet
  4. No — it is a directed broadcast address
Answer & explanation
Correct answer: B

With /20 the boundaries fall at third-octet multiples of 16: …16.0, 32.0, 48.0… 142.14.33.0 is inside the 32.0 subnet, and its 12-bit host portion (third-octet remainder 1 + fourth octet 0) is not all zeros → a perfectly legal host. The rule is "host portion all-zeros forbidden," not "fourth octet zero forbidden."

A is incorrect — that folk rule only holds when the mask is exactly /24. C is incorrect — the network address here would be 142.14.32.0; one octet-value later is inside the block. D is incorrect — this subnet's broadcast is 142.14.47.255 (next boundary − 1). This exact bait-and-switch is in your s6 check-yourself — exam writers love it.

Reference: 3.3 — check yourself, the boundary trick · s6

Question 63.3 · Subnet-count driven

You must split a /24 into at least 6 subnets, keeping subnets as large as possible. How many bits do you borrow, and what results?

  1. Borrow 2 — 4 subnets of 62 hosts
  2. Borrow 3 — 8 subnets of 30 hosts each (/27)
  3. Borrow 3 — 8 subnets of 32 hosts each (/27)
  4. Borrow 6 — 64 subnets of 2 hosts
Answer & explanation
Correct answer: B

Smallest b with 2b ≥ 6 → b = 3 (2² = 4 is short, 2³ = 8 covers it). That yields /27: h = 5 → 2⁵−2 = 30 usable hosts per subnet, boundaries every 32. You get 8 subnets; the 2 spare are free growth.

A is incorrect — 4 < 6; the requirement isn't met. C is incorrect — 32 is the block size; usable hosts are 32 − 2 = 30. D is incorrect — 64 subnets vastly overshoots and shrinks every subnet to /30-size for no reason; borrow the smallest b that satisfies the constraint.

Reference: 3.3 — two directions the exam asks from · s6

Question 73.3 · Host-count driven

From 172.16.0.0/16, each subnet must support at least 500 hosts. Which mask do you use?

  1. /22 (255.255.252.0)
  2. /24 (255.255.255.0)
  3. /23 (255.255.254.0)
  4. /25 (255.255.255.128)
Answer & explanation
Correct answer: C — /23

2h−2 ≥ 500 → h = 9 (2⁹−2 = 510 ✓; h = 8 gives 254 ✗). Mask = 32 − 9 = /23 = 255.255.254.0 — magic 2 in the third octet: subnets at 172.16.0.0, 172.16.2.0, 172.16.4.0… That's 2⁷ = 128 subnets of 510 hosts.

A is incorrect — /22 (1,022 hosts) works but wastes double the space; when multiple masks fit, take the longest that satisfies the need. B is incorrect — /24 gives 254 < 500. D is incorrect — /25 gives 126, worse still. The reflex: convert the host requirement to h first, then subtract from 32.

Reference: 3.3 — "I need N hosts" · s6

Question 83.3 · Both formulas at once

172.16.0.0/16 is subnetted so every subnet holds at least 1,000 hosts. How many subnets result?

  1. 4
  2. 16
  3. 64
  4. 1,024
Answer & explanation
Correct answer: C — 64

Hosts first: 2h−2 ≥ 1000 → h = 10 (1,022). Mask = /22, so borrowed = 22 − 16 = 6 → 2⁶ = 64 subnets (magic 4: 172.16.0.0, 172.16.4.0, 172.16.8.0…). This is the s6 check-yourself item worked to its second half.

A is incorrect — 4 would mean borrowing 2 bits → /18 → 16,382 hosts each: legal but not what the arithmetic yields, and the question asks what results from the tightest fit. B is incorrect — 16 = 2⁴ assumes /20, whose 4,094 hosts overshoot the need by 4×. D is incorrect — 1,024 confuses 2¹⁰ (the host-side power) with the subnet count; the two exponents always split the 16 available bits: 6 + 10.

Reference: 3.3 — check yourself · s6

Question 93.3 · Legacy rules

Which statement is a legacy classful-FLSM rule rather than a modern truth?

  1. Subnets are created by borrowing host bits into the mask
  2. "/30 is the largest usable subnet mask"
  3. Each borrowed bit doubles the number of subnets
  4. VLSM allows subnets of different sizes from one parent block
Answer & explanation
Correct answer: B

Beyond /30 the modern world has /31 (RFC 3021 — standard on router-to-router links: 2 addresses, both usable, no network/broadcast reserved) and /32 (a host route naming exactly one address). Your s6 slide 44 also declares "all subnets must be equal size" — which the deck's own VLSM section then breaks on purpose (Appendix A). Know which world a question lives in: classful questions get classful answers.

A is incorrect as an answer — bit-borrowing is the mechanism in every era. C is incorrect — 2b growth is arithmetic, not policy. D is incorrect — unequal sizes are VLSM's entire point, and modern practice.

Reference: 3.3 — the legacy-rules trap · Appendix A · s6 44

Question 103.3 · WAN links

A point-to-point WAN link joins two router interfaces. Why is /30 the traditional choice, and what modern option removes its remaining waste?

  1. /30 yields 4 addresses with 2 usable — a perfect pair; /31 (RFC 3021) goes further, making both of its 2 addresses usable
  2. /29 is actually required, to leave room for management addresses
  3. /30 yields 4 usable addresses, so nothing smaller is possible
  4. /32 should be used, giving each router one address
Answer & explanation
Correct answer: A

A /30 block spans 4 addresses; minus network and broadcast leaves exactly 2 usable — one per router interface. /31 drops the two reservations for point-to-point links, so its 2 addresses are both assignable: zero waste. (In your VLSM allocations, links sized "2 hosts" take /30 — that's what the course expects.)

B is incorrect — nothing requires /29's 6 usable for a two-interface link; VLSM's ethos is the smallest fit. C is incorrect — /30's usable count is 2, not 4; the 4 is raw block size. D is incorrect — /32 is a host route to a single address; two routers on one subnet can't share a /32.

Reference: 3.3 — legacy-rules trap · VLSM example · s6

Question 113.3 · VLSM allocation

VLSM on 10.20.30.0/24 for: A = 60 hosts, B = 28, C = 12, plus two WAN links (2 each). Which network does C (12 hosts) receive?

  1. 10.20.30.64/27
  2. 10.20.30.96/28
  3. 10.20.30.96/27
  4. 10.20.30.112/28
Answer & explanation
Correct answer: B — 10.20.30.96/28

Run the algorithm: sort largest-first, size each, allocate at broadcast + 1. A: 60 → /26 at .0 (bc .63). B: 28 → /27 at .64 (bc .95). C: 12 → 2⁴−2 = 14 ≥ 12 → /28 at .96 (hosts .97–.110, bc .111). Then the links: /30 at .112 and /30 at .116. Free: .120–.255.

A is incorrect — .64/27 is B's block. C is incorrect — right address, wrong mask: /27 (30 hosts) over-serves 12 when /28 (14) fits; VLSM takes the smallest fit. D is incorrect — .112 is where the first WAN /30 lands after C is placed; giving it to C skips the .96 boundary for no reason.

Reference: 3.3 — VLSM worked example & check yourself · s6 70–83 (rebuilt)

Question 123.3 · VLSM error diagnosis

After allocating Sales 192.168.10.0/25 (broadcast .127), a technician assigns Engineering a /26 starting at 192.168.10.127. What is wrong?

  1. Nothing — .127 is the next free address
  2. The subnet should start at .126, the last usable Sales host
  3. A /26 is too small to follow a /25
  4. .127 is Sales's broadcast, so the blocks overlap — Engineering must start at broadcast + 1 = .128, which is also the required 64-alignment for a /26
Answer & explanation
Correct answer: D

Two rules broken at once. First, the next block starts at the previous subnet's broadcast + 1 — .127 still belongs to Sales. Second, every subnet must start on a multiple of its own size: a /26 (64 addresses) can only begin at .0, .64, .128, .192 — and .127 is none of them. The correct allocation is 192.168.10.128/26.

A is incorrect — .127 is inside Sales's block, not free. B is incorrect and is the guide's flagged classic error #2 — starting at the previous last host double-books two addresses. C is incorrect — smaller-after-larger is exactly how VLSM works; size ordering matters only for choosing placement, and largest-first was respected here.

Reference: 3.3 — trainer's tip: the three errors that kill VLSM answers · s6

Question 133.3 · CIDR pointed inward

An ISP allocates you 203.0.112.0/23. How many usable host addresses did you receive?

  1. 254
  2. 510
  3. 512
  4. 1,022
Answer & explanation
Correct answer: B — 510

/23 leaves h = 9 host bits → 2⁹ − 2 = 510. This is CIDR pointed inward-from-outside: two Class-C-sized blocks fused (third octets 112 and 113 — magic number 2, so /23s start on even third octets), one prefix, no class implied. The slash says everything the first octet used to.

A is incorrect — 254 reads the address classfully as a /24; CIDR's whole point is that the class chart no longer dictates the mask. C is incorrect — 512 is the raw block size before paying the −2. D is incorrect — 1,022 is a /22. Alignment habit worth keeping: a /23 anchored at an odd third octet (say ".113.0/23") is invalid — every prefix must start on a multiple of its own block size, a detail exam writers probe.

Reference: 3.3 — CIDR · s6

Question 143.3 · CIDR pointed outward

A router aggregates the four consecutive networks 172.20.4.0/24 through 172.20.7.0/24 into a single advertisement. Which prefix is correct?

  1. 172.20.4.0/22
  2. 172.20.0.0/22
  3. 172.20.4.0/23
  4. 172.20.4.0/21
Answer & explanation
Correct answer: A — 172.20.4.0/22

Four /24s = 2² blocks → shorten by 2 bits: /22. Alignment check: /22 blocks start at third-octet multiples of 4, and 4 is one → 172.20.4.0/22 spans exactly 4.0 – 7.255. One route replaces four — supernetting, the mechanism that keeps Internet tables survivable.

B is incorrect — 172.20.0.0/22 covers 0–3, the previous block; right mask, wrong anchor. C is incorrect — a /23 covers only two of the four (4–5). D is incorrect — a /21 covers eight (0–7 — note it must anchor at 0): it includes the four but over-claims four more networks you may not own. Aggregate exactly what you're entitled to advertise.

Reference: 3.3 — CIDR, supernetting · Appendix E Q13 · s6

Trainer's tip

Grade yourself hard: Q4, Q5, Q11 and Q12 are the exam's favorite ambush spots (third-octet spillover, the .0 host, smallest-fit masks, broadcast+1 alignment). Anything missed → redo 3.3's worked examples tomorrow with a timer, then retake this set cold. Earlier drills: 3.1 · 3.2 · full phase · next deep dive: 3.4 ICMP.


Appendix I · Practice

Deep dive — 3.4 ICMP L3 · NETWORK

Covers3.4 · queries, errors, ping, traceroutes5 · 1–14
Twelve reps on the network's error voice. Appendix E covered TTL expiry, the traceroute finish, and the RA/RS numbering trap — this set works the rest: both message families, the unreachable codes, the sanity rules, and reading real ping/traceroute output like a technician. Type numbers are free marks: 8/0 · 3 (codes 0/1/3) · 5 · 11 · 12.
Question 13.4 · ICMP's nature

ICMP messages travel inside IP packets (Protocol field = 1). Which statement about ICMP is correct?

  1. Being carried by IP makes it a transport-layer protocol, like TCP
  2. It is considered a Layer 3 protocol, and it reports errors but never fixes them
  3. It is a Layer 3 protocol that retransmits packets that were dropped
  4. It is a Layer 2 diagnostic protocol, like ARP
Answer & explanation
Correct answer: B

ICMP is the odd one: it rides inside IP yet counts as Layer 3 — the network layer talking about itself. And its powers stop at speech: it reports ("your packet died, here's why") and answers ("yes, I'm alive"); recovery is the sender's problem, usually TCP's, one layer up.

A is incorrect — encapsulation position doesn't set the layer; ICMP serves the network layer's needs, not process-to-process delivery. C is incorrect — nothing at L3 retransmits; IP stays best-effort even with ICMP bolted on. D is incorrect — ARP is the L2/L3 glue with its own EtherType; ICMP lives a layer above it, inside IP.

Reference: 3.4 — why ICMP exists · s5 1–3

Question 23.4 · The echo pair

Which ICMP types implement ping?

  1. Echo Request = 0, Echo Reply = 8
  2. Timestamp Request = 13, Timestamp Reply = 14
  3. Router Advertisement = 9, Router Solicitation = 10
  4. Echo Request = 8, Echo Reply = 0
Answer & explanation
Correct answer: D

Ping sends Echo Request, type 8; the target answers Echo Reply, type 0. Memorize the direction cold — "8 out, 0 back" — because option A's swap is the standard trick.

A is incorrect — exactly backwards. B is incorrect — 13/14 are the timestamp pair, for clock-difference probing, not ping. C is incorrect — 9/10 are router discovery (and note they're a different question's trap: your slide swaps them). Bonus reading skill: the reply's TTL hints at the answering OS — starting values ≈ 64 (Linux), 128 (Windows), 255 (network gear).

Reference: 3.4 — query family · ping · s5 3–5

Question 33.4 · Unreachable codes

A router has a route to the destination network and delivers the packet onto that final LAN — but the target host never answers ARP. Which ICMP message results?

  1. Destination Unreachable, code 0 — network unreachable
  2. Destination Unreachable, code 3 — port unreachable
  3. Destination Unreachable, code 1 — host unreachable
  4. Time Exceeded, type 11
Answer & explanation
Correct answer: C

Type 3's codes tell you how far the packet got: code 0 = a router had no route (network not found) · code 1 = network found, host silent — our case · code 3 = host reached, but no process listens on that port. The failure climbed one level deeper each time.

A is incorrect — routing succeeded here; the network was reached. B is incorrect — code 3 requires the host to be alive and answering; here it never responded at all (and code 3 is sent by the destination itself). D is incorrect — type 11 is about TTL/reassembly timers, not reachability.

Reference: 3.4 — error family table · s5 6–8

Question 43.4 · Who sends 3/3

Which device sends Destination Unreachable code 3 (port unreachable)?

  1. The router that dropped the packet
  2. The destination host itself
  3. The sender's default gateway
  4. The DNS server that resolved the name
Answer & explanation
Correct answer: B

Port unreachable means the packet completed its entire network journey — every router forwarded it, the destination received it — and only then failed, because no process listens on that port. Only the destination host can know that, so only it sends 3/3. That's exactly why Unix traceroute treats 3/3 as "we've arrived."

A is incorrect — routers know about networks and hosts (codes 0 and 1); they never see ports, which are L4 information beyond their job. C is incorrect — the gateway is just the first of those routers. D is incorrect — DNS translates names before any of this; it plays no role in delivery errors.

Reference: 3.4 — error family · traceroute · s5

Question 53.4 · Source Quench

A modern router is congested and must drop packets. What does it send to slow the senders down?

  1. Source Quench (type 4) to each sender
  2. Redirect (type 5) to each sender
  3. Nothing — type 4 is deprecated (RFC 6633); congestion control is TCP's job now
  4. Parameter Problem (type 12) with a pointer to the rate field
Answer & explanation
Correct answer: C

Source Quench is the syllabus's fossil: sending extra packets into a congested network to fight congestion made things worse, so RFC 6633 retired it — routers must not send type 4 and hosts ignore it. Senders discover congestion implicitly (loss, delay) and TCP backs off. On a purely historical exam question, describe type 4 — then note it's retired.

A is incorrect for the modern world — that's the deprecated behavior. B is incorrect — Redirect optimizes a host's first-hop choice on its own LAN; nothing to do with congestion. D is incorrect — type 12 reports a malformed header, not an overloaded queue.

Reference: 3.4 — error family table · s5 7

Question 63.4 · Redirect

Host H sends traffic for a remote network to router R1, but router R2 — on the same LAN as H — is the better first hop. What does R1 do with H's packet?

  1. Forwards the packet anyway, and sends H a Redirect (type 5) naming R2 for future traffic
  2. Drops the packet and tells H to resend it via R2
  3. Silently forwards this and all future packets through R2 without telling H
  4. Sends H a Destination Unreachable, since R1 is the wrong router
Answer & explanation
Correct answer: A

Redirect is advice, not rejection: R1 still forwards the current packet (no data is lost), and separately tells H "there's a better first-hop router for that destination on your own LAN — use R2." H updates its choice for subsequent packets.

B is incorrect — dropping would punish H for R1's superior knowledge; the packet is deliverable and gets delivered. C is incorrect — R1 does relay this packet onward, but the point of type 5 is to stop being the middleman; staying silent would leave H dog-legging traffic forever. D is incorrect — nothing is unreachable; R1 has a perfectly good route, just not the best first hop for H.

Reference: 3.4 — error family table, Redirect · s5

Question 73.4 · Time Exceeded's other code

A destination host receives fragments 1 and 3 of a packet, but fragment 2 never arrives and the reassembly timer expires. Which ICMP message does the host send?

  1. Time Exceeded — type 11, code 0
  2. Destination Unreachable — type 3, code 3
  3. Parameter Problem — type 12
  4. Time Exceeded — type 11, code 1
Answer & explanation
Correct answer: D

Type 11 has two flavors of "time ran out": code 0 — TTL hit zero in transit (a router's message, traceroute's engine) · code 1 — the fragment-reassembly timer expired at the destination, which then discards the partial packet and reports. Incomplete puzzles don't wait forever.

A is incorrect — code 0 belongs to routers decrementing TTL; this packet arrived, in pieces. B is incorrect — ports were never consulted; reassembly failed below that. C is incorrect — no header field is malformed; a piece is simply missing. Tie-in to 3.1: reassembly happens only at the destination — which is exactly why this timer lives there.

Reference: 3.4 — error family table · 3.1 — fragmentation · s5

Question 83.4 · Sanity rules

In which two situations will a device never generate an ICMP error message? (Choose two.)

  1. The packet that failed was itself an ICMP error message
  2. The packet's TTL reached zero in transit
  3. The failed packet was addressed to a broadcast or multicast destination
  4. The packet arrived at a host with no process listening on its UDP port
Answer & explanation
Correct answers: A and C

These rules exist to stop error avalanches. A: an error about an error about an error… would loop forever, so ICMP errors are never generated about ICMP errors. C: one broadcast triggering an error from every receiver would amplify a single packet into a storm, so broadcast/multicast destinations never spawn errors. Third rule in the same family: only the first fragment of a fragmented packet can trigger an error.

B is incorrect as an answer — TTL expiry is precisely when Time Exceeded (11/0) is sent. D is incorrect — a dead UDP port is exactly when Port Unreachable (3/3) is sent.

Reference: 3.4 — sanity rules kfact · s5

Question 93.4 · Error payload

What does every ICMP error message carry in its body, and why?

  1. The dead packet's IP header plus its first 8 data bytes — enough for the sender to identify which conversation died
  2. The entire dead packet, so it can be retransmitted from the router
  3. Only the type, code, and checksum — nothing from the dead packet
  4. The dead packet's last 8 bytes, proving how far transmission got
Answer & explanation
Correct answer: A

Header + first 8 payload bytes is a forensic fingerprint: the IP header names source, destination and protocol, and the first 8 bytes of a TCP/UDP segment contain the port numbers — together, exactly enough for the sending host to match the corpse to the connection that produced it.

B is incorrect — carrying whole packets would make error traffic as heavy as the failure it reports; and retransmission is the sender's decision, not the router's service. C is incorrect — with no quoted content, the sender couldn't tell which of its packets died. D is incorrect — the first 8 bytes are the useful ones (ports live there); the last bytes identify nothing.

Reference: 3.4 — sanity rules kfact · s5

Question 103.4 · Reading ping

What is the difference between ping reporting "Request timed out" and "Destination unreachable"?

  1. They mean the same thing: the host is down
  2. "Timed out" means a router actively refused the packet; "unreachable" means silence
  3. "Unreachable" means the host is up but responding slowly
  4. "Timed out" = nothing answered at all (dead host, or a firewall silently eating ICMP); "unreachable" = a router actively reported it has no route
Answer & explanation
Correct answer: D

The two failures differ in who spoke. Timed out = total silence — the echo request (or its reply) vanished; causes range from a dead host to a firewall silently discarding ICMP, which is common and why "no ping" never proves "no host." Destination unreachable = a voice answered — a router sent type 3 saying it had nowhere to forward the packet. Silence vs. an explicit "no."

A is incorrect — one is absence of evidence, the other is evidence of a routing gap. B is incorrect — exactly reversed. C is incorrect — slow responses show up as high time= values (RTT), not as unreachable errors.

Reference: 3.4 — ping · s5

Question 113.4 · Reading traceroute

In a traceroute, hop 3 shows * * * while hops 4 onward answer normally with rising RTTs. What does hop 3's line mean?

  1. The router at hop 3 is down, and traffic is being rerouted
  2. A routing loop exists between hops 3 and 4
  3. The hop-3 router forwards fine but ignores or rate-limits ICMP — normal, not broken
  4. The path MTU was exceeded at hop 3
Answer & explanation
Correct answer: C

Each hop gets three probes (three RTT samples); * * * means all three went unanswered. But hops 4+ did answer — and their probes passed through hop 3 — so hop 3 is forwarding perfectly and merely declines to send Time Exceeded messages (many routers deprioritize or suppress ICMP generation). Diagnosis skill: rising latency between two answering hops localizes where slowness lives — that's how "the Internet is slow" becomes "hop 3 is slow."

A is incorrect — a dead hop 3 would strand every later probe too. B is incorrect — loops show as repeating router addresses, not stars. D is incorrect — MTU problems affect large packets, and would not selectively mute one hop's ICMP.

Reference: 3.4 — traceroute worked example · s5

Question 123.4 · tracert vs traceroute

How does Windows tracert recognize the final destination, compared with Unix traceroute?

  1. Its probes are Echo Requests (pings), so the destination answers with Echo Reply (type 0) instead of the routers' Time Exceeded chorus
  2. It ends the same way Unix does — with Port Unreachable (3/3)
  3. It opens a TCP connection to port 80 and stops on the handshake
  4. It sends ARP requests and stops when the destination's MAC answers
Answer & explanation
Correct answer: A

Both tools share the TTL trick — probes with TTL 1, 2, 3… force each router in turn to confess via Time Exceeded (11). They differ only in the probe: tracert sends pings, so the destination (which doesn't discard — it answers) returns Echo Reply, type 0. Unix traceroute sends UDP to an absurd port, so its finish line is Port Unreachable, 3/3. Either way, a different message type = "we've arrived, stop."

B is incorrect — 3/3 requires a UDP probe to a dead port; pings never produce it. C is incorrect — classic tracert doesn't use TCP. D is incorrect — ARP is confined to the local subnet; it can't probe across routers at all (Phase 2).

Reference: 3.4 — traceroute, step 3 · Appendix E Q15 · s5

Trainer's tip

ICMP is a table-memory section: one evening of flashcards on the type/code table (8/0 · 3:0/1/3 · 5 · 11:0/1 · 12) banks half the marks; the other half is the two reading skills in Q10–11. Earlier drills: 3.1 · 3.2 · 3.3 · full phase · next deep dive: 3.5 Routing.


Appendix J · Practice

Deep dive — 3.5 Routing L3 · NETWORK

Covers3.5 · forwarding, LS/DV, the protocol zoos9 · all 48
Thirteen reps on path choice. Appendix E covered longest-prefix match, poison reverse, and protocol 89; this set drills the rest — the forwarding/routing split, route sources, Dijkstra bookkeeping on the guide's six-node graph (keep it open for Q3–4), Bellman-Ford arithmetic, RIP's numbers, OSPF's machinery, EIGRP's signature, and the AS/BGP world-view.
Question 13.5 · Two jobs

Which statement correctly distinguishes forwarding from routing?

  1. They are two names for the same per-packet operation
  2. Forwarding builds the table; routing looks packets up in it
  3. Forwarding is the per-packet, local table lookup that picks an exit interface (microseconds, hardware); routing is the slower, global job of building that table
  4. Forwarding applies only to static routes; routing only to dynamic ones
Answer & explanation
Correct answer: C

The analogy from your deck: forwarding is a driver obeying the signs at one intersection; routing is the city planning department deciding what all the signs should say. Blurring these two costs marks — exam questions often hinge on which job is being described.

A is incorrect — one is per-packet and local, the other global and comparatively slow. B is incorrect — exactly swapped. D is incorrect — every packet is forwarded the same way regardless of how its route entered the table; static vs dynamic describes table-building methods only.

Reference: 3.5 — two jobs, don't blur them · s9

Question 23.5 · Route sources

A router's table contains 10.1.1.0/24 because that network sits on one of the router's own interfaces. What kind of route is this?

  1. Static
  2. Directly connected
  3. Dynamic
  4. Default
Answer & explanation
Correct answer: B

The three sources, in the order you meet them: directly connected — the router sees the network on its own interface, automatic, no configuration; static — an admin typed it (zero overhead, zero adaptability — fine for stub networks and tiny sites, unmaintainable at scale); dynamic — a routing protocol learned it and keeps re-learning it.

A is incorrect — nothing was typed; the interface's existence creates the route. C is incorrect — no protocol was needed to discover a wire the router is plugged into. D is incorrect — the default route is the specific prefix 0.0.0.0/0, the matches-everything, loses-to-everything fallback row.

Reference: 3.5 — the table being fought over · s9

Question 33.5 · Dijkstra, one step

In the six-node Dijkstra run from u (guide graph: u–v = 2, u–x = 1, u–w = 5, x–w = 3, x–y = 1…), step 0 leaves D(w) = 5. After x is settled (step 1), what is the new tentative D(w)?

  1. 4 — min(5, D(x) + c(x,w)) = min(5, 1 + 3): the path through x is better
  2. 5 — settling x cannot change other nodes' costs
  3. 3 — the cost of the x–w link alone
  4. ∞ — w resets until it is settled itself
Answer & explanation
Correct answer: A

The relax step after settling node n: for each neighbor, D(candidate) = min( current D, D(n) + c(n → candidate) ). Through x: 1 + 3 = 4 < 5, so D(w) improves to 4, p(w) = x — and in the next steps it improves again to 3 via y before settling. The two exam habits: settle exactly one node per row (the cheapest unsettled), and re-examine only the neighbors of the node just settled.

B is incorrect — improving neighbors' estimates is the entire point of settling a node. C is incorrect — link cost alone ignores the cost of reaching x first (D(x) = 1 must be added). D is incorrect — estimates only ever tighten; they never reset.

Reference: 3.5 — the full Dijkstra table, step 0→1 · s9 8–15

Question 43.5 · Reading the result

The finished Dijkstra run gives predecessors p(z) = y, p(y) = x, p(x) = u. When u forwards traffic to z, which first hop does its forwarding table use?

  1. v
  2. w — the direct u–w link
  3. x
  4. None — z is unreachable from u
Answer & explanation
Correct answer: C — x

The forwarding table stores only the first hop: walk the predecessor chain backwards — z ← y ← x ← u — and keep the link leaving u: (u, x). In this graph every destination except v funnels through x; one cheap link carrying almost everything is typical.

A is incorrect — v is the first hop only for traffic to v (its chain is v ← u directly). B is incorrect — the direct u–w link costs 5 and lost to the u–x–y–w path (cost 3); "direct" is not "shortest." D is incorrect — z settled at cost 4 (2 to y via x, +2 to z); everything is reachable here.

Reference: 3.5 — reading u's forwarding table off the predecessors · s9

Question 53.5 · Bellman-Ford

Router x has two neighbors: v1 (link cost 2, claims distance 3 to network N) and v2 (link cost 1, claims distance 3 to N). Per the Bellman-Ford equation, what is Dx(N)?

  1. 3
  2. 4 — min(2 + 3, 1 + 3), via v2
  3. 5 — via v1
  4. 6 — the sum of both paths
Answer & explanation
Correct answer: B — 4, via v2

Dx(N) = min over each neighbor v of [ c(x,v) + Dv(N) ] — "the best of (cost to reach a neighbor + that neighbor's claim)". Here: via v1 = 2 + 3 = 5; via v2 = 1 + 3 = 4. x keeps 4 and, because its estimate changed, sends its updated vector to its own neighbors — that ripple is how DV converges.

A is incorrect — 3 is the neighbors' claim; x still has to reach a neighbor, so the link cost always adds. C is incorrect — 5 is the losing candidate; min() keeps the best. D is incorrect — paths compete, they never add. Note what x does not know: the map. DV routers know only claims — which is exactly the weakness Q7 exploits.

Reference: 3.5 — Bellman-Ford kfact · s9

Question 63.5 · The zoo: RIP

Which set of facts correctly describes RIPv2?

  1. Link-state; floods LSAs; every router runs Dijkstra; rides IP protocol 89
  2. Advanced distance-vector; partial triggered updates; DUAL backup routes
  3. Path-vector; advertises AS paths; runs over TCP 179; policy over cost
  4. Distance-vector; hop-count metric (max 15); full table to neighbors every 30 s over UDP 520 (multicast 224.0.0.9); a route silent for 180 s is dead
Answer & explanation
Correct answer: D

RIP is the simple, chatty one: gossip the whole table every 30 seconds (≤ 25 routes per message), count hops, declare anything beyond 15 unreachable, declare a neighbor's route dead after 180 silent seconds. Small networks only — but its numbers are exam gold.

A is incorrect — that's OSPF's row of the zoo table. B is incorrect — that's EIGRP. C is incorrect — that's BGP. One more RIP detail worth a mark: the multicast group is 224.0.0.9 — your slide's "244.0.0.9" is a typo (Appendix A).

Reference: 3.5 — the protocol zoo · Appendix A · s9

Question 73.5 · Sixteen

A RIP router receives an advertisement for network N with metric 16. How does it interpret this?

  1. N is 16 hops away and reachable
  2. N is the best route in the table
  3. N is unreachable — 16 is RIP's "infinity"
  4. The message is malformed and is discarded
Answer & explanation
Correct answer: C

RIP defines a finite infinity: 16 = unreachable. It exists to terminate count-to-infinity — when the A–B count-up starts after a link failure, it at least stops at 16 instead of running forever. The same constant is also poison reverse's vocabulary ("my distance to N is ∞") and the reason a RIP network can span at most 15 hops.

A is incorrect — 15 is the last reachable hop count; 16 crossed the line by definition. B is incorrect — lower metrics win in RIP; 16 is the worst possible news. D is incorrect — metric 16 is a perfectly valid message with a defined meaning: forget that route.

Reference: 3.5 — count-to-infinity bandages · s9

Question 83.5 · The zoo: OSPF

Which two statements about OSPF are true? (Choose two.)

  1. Every router floods link-state advertisements so all routers hold the identical full topology, then each runs Dijkstra
  2. It sends its full routing table to neighbors every 30 seconds
  3. Its metric is a cost proportional to 1/bandwidth
  4. It runs over TCP port 179
Answer & explanation
Correct answers: A and C

A is correct — that's the link-state recipe: global knowledge, local computation. C is correct — cost ∝ 1/bandwidth means fast links attract traffic. The rest of OSPF's signature: rides directly in IP (protocol 89, no ports), authenticates its messages, supports equal-cost multipath, and scales via areas (Q9). The enterprise standard.

B is incorrect — periodic full-table dumps are RIP's habit; OSPF floods small LSAs when things change. D is incorrect — TCP 179 is BGP's; OSPF needs no transport protocol at all. Keep the one-liner straight: UDP 520 = RIP · IP 89 = OSPF · TCP 179 = BGP.

Reference: 3.5 — the two great families · the zoo · s9

Question 93.5 · OSPF areas

A large enterprise splits its OSPF domain into areas. Which area must exist as the backbone that all others attach to?

  1. Area 1
  2. Whichever area contains the most routers
  3. The DMZ area
  4. Area 0
Answer & explanation
Correct answer: D — Area 0

OSPF scales through a two-level hierarchy: every non-backbone area connects to area 0, and inter-area traffic transits it. The payoff is containment — flooding and Dijkstra recomputation stay mostly inside an area instead of shaking the whole enterprise on every link flap.

A is incorrect — area 1 is just an ordinary area number. B is incorrect — the backbone is defined by its number, not its size. C is incorrect — a DMZ is a security-zone concept from firewall design, not an OSPF construct. Why hierarchy at all? The same reason ASes exist (Q11): neither flooding nor gossip survives unbounded scale.

Reference: 3.5 — the zoo, OSPF row · s9

Question 103.5 · The zoo: EIGRP

Which behavior distinguishes EIGRP from plain RIP-style distance vector?

  1. It broadcasts its full table every 30 seconds, but faster
  2. It sends partial, triggered updates and keeps DUAL-precomputed backup routes for near-instant failover
  3. It is a link-state protocol like OSPF
  4. It uses pure hop count as its metric
Answer & explanation
Correct answer: B

EIGRP (Cisco's, proprietary until 2013) is "advanced DV" — the "hybrid" of your slides: it speaks only when something changes (partial, triggered updates instead of periodic full tables), and its DUAL algorithm holds pre-computed loop-free backup routes, so failover doesn't wait for re-convergence.

A is incorrect — abolishing the 30-second full-table habit is precisely the upgrade. C is incorrect — EIGRP routers still learn from neighbors' claims, not from a flooded map; "advanced DV," not LS. D is incorrect — its metric is a composite of bandwidth + delay, one reason it out-chooses hop-count RIP on unequal links.

Reference: 3.5 — the protocol zoo, EIGRP row · s9

Question 113.5 · Why ASes and BGP

Why does the Internet run BGP between Autonomous Systems instead of simply extending OSPF across the whole world?

  1. OSPF is proprietary, so ISPs may not share it
  2. No single protocol can span networks run by different organizations with different interests — between ASes, policy outranks path cost; and neither LS flooding nor DV gossip survives Internet scale
  3. BGP converges faster than any interior protocol
  4. Dijkstra's algorithm cannot handle graphs with loops
Answer & explanation
Correct answer: B

Two forces split the world into ASes (regions under one administration — an ISP, a university, a corporation). Scale: flooding a map of a billion destinations, or gossiping tables of them, collapses. Politics: "never carry competitor traffic" and "prefer the cheap link" are business rules no cost metric expresses — so inter-AS routing (BGP, path-vector) makes policy the primary decider, while each AS optimizes freely inside with its own IGP (OSPF/RIP/EIGRP).

A is incorrect — OSPF is an open standard; EIGRP was Cisco's. C is incorrect — BGP is famously slow and deliberate, by design. D is incorrect — Dijkstra handles cyclic graphs fine; loops in the graph aren't loops in the tree it computes.

Reference: 3.5 — scale forces hierarchy · s9

Question 123.5 · Hot potato

An AS has two gateway routers that can both reach destination D in a neighboring AS. Under hot-potato routing, which exit does an interior router choose?

  1. The gateway geographically closest to the destination
  2. The gateways in strict rotation, to balance load
  3. The gateway with the least intra-AS cost from itself — dump the packet at the nearest exit and let the next AS worry
  4. The gateway advertising the longest AS path
Answer & explanation
Correct answer: C

Hot potato = get it off my network as cheaply as possible: choose the exit with the least intra-AS cost, regardless of what happens beyond the border. Locally selfish, globally good enough — and it means two hosts in the same AS may exit through different gateways for the same destination.

A is incorrect — the AS doesn't know (or pay for) distances beyond its border; it optimizes its own leg only. B is incorrect — no rotation; the choice is deterministic per router. D is incorrect — longer AS paths are worse in BGP's eyes, and path length is a tie-breaker among policy-acceptable routes, not an attraction.

Reference: 3.5 — scale forces hierarchy, hot potato · s9

Question 133.5 · BGP loop detection

How does a BGP router detect that a route advertisement would create a loop?

  1. The advertisement's TTL reaches zero
  2. Split horizon suppresses the advertisement
  3. Hold-down timers expire before the loop forms
  4. It sees its own AS number already listed in the advertised AS path
Answer & explanation
Correct answer: D

BGP is path-vector: every advertisement carries the entire sequence of ASes the route has traversed. If a router finds its own AS number already in that list, accepting the route would send traffic in a circle — so it rejects it. The full path is also what policy engines read ("never route via AS X").

A is incorrect — TTL kills looping packets (data plane); this is about looping routes (control plane). B is incorrect — split-horizon-style tricks are DV bandages (poison reverse's family) for neighbor-scale loops; BGP's explicit path makes loops visible outright. C is incorrect — timers slow the spread of bad news; they don't detect anything.

Reference: 3.5 — the protocol zoo, BGP row · s9

Trainer's tip

Two skill types here: bookkeeping (Q3–5 — always draw the table, never wing it) and zoo memory (Q6–13 — one flashcard per protocol row). If Q3 or Q4 wobbled, redo the guide's full Dijkstra table by hand, then check row by row. Earlier drills: 3.1 · 3.2 · 3.3 · 3.4 · full phase · last deep dive: 3.6 IPv6.


Appendix K · Practice

Deep dive — 3.6 IPv6 L3 · NETWORK

Covers3.6 · header, addresses, SLAAC, transitions10 · all 32
Twelve reps to finish Phase 3. Appendix E covered the removed checksum, compression, and fe80 recognition; this set drills the rest — the 40-byte header and its renames, Payload Length arithmetic, the no-fragmentation rule, extension headers, decompression, the missing broadcast, GUA anatomy, ULA, SLAAC, and the three transition mechanisms. Sight-recognition mantra: 2/3 → GUA · fe8 → LLA · fd → ULA · ff → multicast · ::1 → loopback.
Question 13.6 · Why IPv6

What was the primary motivation for designing IPv6?

  1. Making routers faster by simplifying the header
  2. IPv4 address exhaustion — the registries' free pools ran out between 2011 and 2019, and 128-bit addresses solve the shortage by brute force
  3. Adding mandatory encryption to every packet
  4. Supporting wireless networks, which IPv4 cannot address
Answer & explanation
Correct answer: B

IPv4's 2³² ≈ 4.3 billion addresses ran out in our lifetime. NAT bought decades by hiding thousands of hosts behind one public address — at the cost of broken end-to-end connectivity and state everywhere. IPv6's answer: 2¹²⁸ ≈ 3.4 × 10³⁸ addresses — enough for every grain of sand with room to spare.

A is incorrect as primary — the faster, fixed 40-byte header is a genuine benefit, but it's what the designers did with the opportunity, not the reason for it. C is incorrect — IPsec matured alongside IPv6 but encryption is not mandatory per packet, and it wasn't the driver. D is incorrect — IPv4 runs over WiFi every day; media independence was never the problem.

Reference: 3.6 — why IPv6 exists · s10

Question 23.6 · Header size

How large is the IPv6 base header?

  1. 16 bytes
  2. 20 to 60 bytes, depending on options
  3. 40 bytes, fixed — it never grows
  4. 60 bytes, fixed
Answer & explanation
Correct answer: C

Count it from the field list: Version + Traffic Class + Flow Label + Payload Length + Next Header + Hop Limit = 8 bytes of small fields, plus two 16-byte addresses = 40 bytes, always. No IHL needed (nothing varies), no options block (extension headers replaced it).

A is incorrect and is your s10 slide 7's error — "16 bytes" is likely a mangling of "16 bytes per address"; writing 16 on the exam loses a mark the header diagram hands you (Appendix A). B is incorrect — 20–60 variable is IPv4's header, the thing IPv6 deliberately abolished. D is incorrect — 60 is IPv4's maximum, not IPv6's size.

Reference: 3.6 — 8 fields, 40 bytes · Appendix A · s10 7

Question 33.6 · The renames

IPv4's TTL, Protocol, and Type of Service fields all survive in IPv6 under new names. Which set is correct?

  1. Hop Limit · Next Header · Traffic Class
  2. Flow Label · Next Header · Traffic Class
  3. Hop Limit · Flow Label · Traffic Class
  4. Next Header · Hop Limit · Flow Label
Answer & explanation
Correct answer: A

Same jobs, honest labels: TTL → Hop Limit (it always counted hops, never time), Protocol → Next Header (it names what follows — payload protocol or an extension header), ToS → Traffic Class. Instant exam marks.

B, C and D are incorrect — each slips Flow Label into the rename list, and Flow Label is the one genuinely new field: it tags packets belonging to one stream so routers can treat them consistently. It renames nothing; it had no IPv4 ancestor. If a question asks "which field is new," Flow Label is the answer; if it asks "what was renamed," Flow Label is the trap.

Reference: 3.6 — the renames · s10

Question 43.6 · Payload Length

An IPv6 packet has Payload Length = 1000 and no extension headers. What is the total size of the packet on the wire (base header + everything after it)?

  1. 1,000 bytes
  2. 1,020 bytes
  3. 1,040 bytes
  4. It cannot be determined without the IHL field
Answer & explanation
Correct answer: C — 1,040 bytes

IPv6's Payload Length counts the data only — the 40-byte base header is not included: 1000 + 40 = 1,040. Compare the two protocols' philosophies: IPv4's Total Length includes its (variable) header, so you must subtract IHL×4 to find the data; IPv6's fixed header needs no such arithmetic — you only ever add 40.

A is incorrect — it forgets the header entirely. B is incorrect — 20 is IPv4's minimum header; IPv6's is 40. D is incorrect — there is no IHL in IPv6; that field died with the variable header. (Extension headers, when present, are counted inside Payload Length.)

Reference: 3.6 — header table · 3.1 — Total Length · s10

Question 53.6 · No fragmentation

An IPv6 router receives a packet larger than the next link's MTU. What does it do?

  1. Fragments it, exactly as an IPv4 router would
  2. Silently discards it
  3. Forwards it anyway and lets the link layer cope
  4. Drops it and sends an ICMPv6 "Packet Too Big" back, so the source can discover the path MTU and resize
Answer & explanation
Correct answer: D

IPv6 routers never fragment. The oversized packet is dropped and the source is told why; the source then performs path-MTU discovery and sends packets that fit end-to-end (a rare fragment-at-source case uses an extension header). Routers shed the buffering, slicing, and bookkeeping — one of the reasons the fragmentation trio vanished from the header.

A is incorrect — in-network fragmentation is precisely the IPv4 behavior IPv6 abolished. B is incorrect — silence would leave the source retransmitting doomed packets forever; the ICMPv6 report is the mechanism's other half. C is incorrect — no link forwards frames beyond its MTU; that's what MTU means.

Reference: 3.6 — the header diet · 3.1 — fragmentation · s10

Question 63.6 · Next Header

An IPv6 packet's Next Header field contains 58. What follows the base header?

  1. A TCP segment
  2. A UDP datagram
  3. An OSPFv3 message
  4. An ICMPv6 message
Answer & explanation
Correct answer: D — ICMPv6 (58)

Next Header's values to know: 6 = TCP, 17 = UDP (unchanged from IPv4's Protocol field), and 58 = ICMPv6 — a different number from ICMPv4's protocol 1, because it's a different protocol (the one carrying Packet Too Big, and Neighbor Discovery's 133/134). Next Header can also chain to an extension header, which names the next link in turn — RFC 2460's order: hop-by-hop → routing → fragment → authentication/ESP → destination options → payload. Routers parse only what concerns them.

A and B are incorrect — their values are 6 and 17. C is incorrect — OSPF keeps protocol 89 in either IP version.

Reference: 3.6 — extension headers · s10

Question 73.6 · Decompression

In the address 2001:db8:0:a3::57ab, how many all-zero groups does the :: represent?

  1. 2
  2. 3
  3. 4
  4. It is ambiguous — that is why only one :: is allowed
Answer & explanation
Correct answer: B — 3

Decompression is counting: groups present are 2001, db8, 0, a3, 57ab = 5, so :: stands for 8 − 5 = 3 zero groups. Expanded: 2001:0db8:0000:00a3:0000:0000:0000:57ab (re-pad each group to 4 digits). Note the standalone 0 group stays written out — the :: was spent on the longer run, per the tie-break rules.

A and C are incorrect — miscounts; always count what's present and subtract from 8. D is incorrect but contains the right idea in the wrong place: a single :: is never ambiguous (the count is forced); it's two :: that would be — which is exactly why two are illegal.

Reference: 3.6 — compression rules, decompression · s10

Question 83.6 · No broadcast

IPv6 has no broadcast address. When a node needs to reach "everyone on this link" (as IPv4's broadcast habits did), what does it use?

  1. The all-nodes link-local multicast group, ff02::1
  2. 255.255.255.255, which IPv6 still honors for compatibility
  3. fe80::ffff, the link-local broadcast
  4. The subnet's directed broadcast — the /64's highest address
Answer & explanation
Correct answer: A

Multicast took broadcast's job: ff02::1 reaches all nodes on the link, ff02::2 all routers. Every IPv4 broadcast habit was redesigned around multicast in v6 — ARP's broadcast became Neighbor Discovery's solicited-node multicast, DHCP discovery became a multicast to ff02-scoped groups. Targeted groups beat "interrupt absolutely everyone."

B is incorrect — that's an IPv4 address; it doesn't exist in the IPv6 address space at all. C is incorrect — invented; fe80::/10 is ordinary link-local unicast space. D is incorrect — the all-ones "directed broadcast" concept was deliberately not carried over; a /64's highest address is just another assignable unicast address.

Reference: 3.6 — the missing one (kfact) · s10

Question 93.6 · GUA anatomy

What is the standard anatomy of an IPv6 Global Unicast Address, from left to right?

  1. 64-bit prefix · 32-bit subnet ID · 32-bit interface ID
  2. 32-bit prefix · 32-bit subnet ID · 64-bit interface ID
  3. 48-bit global routing prefix · 16-bit subnet ID · 64-bit interface ID
  4. 16-bit prefix · 48-bit subnet ID · 64-bit interface ID
Answer & explanation
Correct answer: C — 48 + 16 + 64

Your ISP allocation is the 48-bit global routing prefix; you carve internal networks in the 16-bit subnet ID — that's 65,536 subnets without touching a calculator; hosts live in the 64-bit interface ID. This is why v6 has no VLSM agony: the convention every LAN = /64 makes host-count math irrelevant (2⁶⁴ per subnet is effectively infinite), and all subnetting happens in the 16-bit field.

A, B and D are incorrect — wrong splits; the memorable check is that the interface ID is always the right-hand 64 (half the address), and 48 + 16 fills the left half. GUA space itself is 2000::/3 — anything starting 2 or 3.

Reference: 3.6 — address types · subnets · s10

Question 103.6 · ULA

Which prefix is IPv6's equivalent of RFC 1918 private space, and which half of it is used in practice?

  1. fe80::/10 — the fe80 half
  2. fc00::/7 — in practice everything is fd00::/8, the locally-assigned half
  3. ff00::/8 — the ff02 half
  4. 2000::/3 — the 2001 half
Answer & explanation
Correct answer: B

Unique Local Addresses live in fc00::/7: private, not Internet-routable, free for internal use. The /7 spans fc00…fdff, but only the fd half (locally assigned, with a random 40-bit ID) is defined for use — so real ULAs start fd. Slide fix: s10's "fc00::/7 to fdff::/7" is malformed — fc00::/7 is a single block that spans fc00 through fdff (Appendix A).

A is incorrect — fe80::/10 is link-local: mandatory, auto-generated, and confined to one link; private-but-routable-internally is a different job. C is incorrect — ff00::/8 is multicast. D is incorrect — 2000::/3 is the public global unicast space, the opposite of private.

Reference: 3.6 — address types · Appendix A · s10

Question 113.6 · SLAAC

How does SLAAC let an IPv6 host number itself with a global address, with no DHCP server anywhere?

  1. It broadcasts a DHCPDISCOVER and accepts the first offer
  2. It hears a Router Advertisement (ICMPv6 type 134) carrying the /64 prefix, appends a self-generated 64-bit interface ID, and verifies uniqueness
  3. It copies its router's address and adds 1
  4. It queries DNS for an unused address in the domain
Answer & explanation
Correct answer: B

Stateless Address Autoconfiguration: the router advertises the prefix (RA, type 134 — the ICMPv6 number from 3.4's trap), the host supplies its own right-hand 64 bits — classically EUI-64 derived from the MAC, on modern OSes a random/privacy ID — checks no one else has it, done. No server, no lease, no state. (DHCPv6 still exists for shops that want central control.)

A is incorrect — that's DHCPv4's opening move (and v6 has no broadcast to send it to). C is incorrect — invented; nothing derives from the router's own address. D is incorrect — DNS maps names to addresses; it doesn't allocate them.

Reference: 3.6 — subnets and self-configuration · 3.4 — RA/RS · s10

Question 123.6 · Transition

An IPv6-only host must communicate with a legacy IPv4-only server. Which transition mechanism makes this possible?

  1. Translation — NAT64 rewrites between the two protocols at a gateway
  2. Dual stack on the host
  3. Tunneling the v6 packets inside v4 packets
  4. SLAAC with an EUI-64 interface ID
Answer & explanation
Correct answer: A

The transition triad, by job: dual stack — run both protocols side by side (the norm, but our host is v6-only, so it's off the table); tunneling — carry v6 packets inside v4 across v4-only territory, which still requires v6 at both ends; translationNAT64 rewrites v6 conversations into v4 and back, the only option when the two endpoints will never speak the same protocol.

B is incorrect — the premise says v6-only; adding a v4 stack changes the host, not the mechanism question. C is incorrect — a tunnel delivers a v6 packet to a v6 endpoint; the v4-only server couldn't read what comes out. D is incorrect — SLAAC assigns addresses; it doesn't bridge protocols.

Reference: 3.6 — living with IPv4 meanwhile · s10

Trainer's tip

That completes Phase 3: the full-phase set (E) plus deep dives 3.13.6 — 97 questions on the exam's biggest phase. Exam-eve routine: retake E cold, then only the deep dives where you dropped marks. Foundations: C · Layer 2: D · next phase: Layer 4 drill (L).


Appendix L · Practice

Practice Q&A — Layer 4 L4 · TRANSPORT

CoversPhase 4 · ports, TCP, UDPs8 · all 37
Sixteen questions on process-to-process delivery. Two skills dominate transport exams: seq/ack arithmetic (count bytes, ack = next expected) and the TCP-or-UDP judgment call. Draw the three-way handshake from memory before starting — Q7–9 assume it. The UDP Length trap (Q14) is a corrected slide error: learn the fix, not the slide.
Question 1Phase 4 · Why L4 exists

IP already delivers packets to the correct machine. What does the transport layer add?

  1. A faster path through the routers
  2. Process addressing — port numbers name the receiving program, with multiplexing on the sending side and demultiplexing on the receiving side
  3. A second, more reliable IP address
  4. Encryption of the payload
Answer & explanation
Correct answer: B

A machine runs dozens of network programs at once — browser, mail, SSH, a game. The port is the last addressing step, naming the process. Sending side merges many conversations onto one IP address (multiplexing); receiving side sorts arrivals to the right program (demultiplexing). The completed analogy: MAC = which house on this street · IP = which building in the world · port = which apartment.

A is incorrect — routers never look at L4 (recall Appendix E Q15: they forward on packets). C is incorrect — no second IP exists; the port extends the address downward into the machine. D is incorrect — encryption is an application/presentation concern (TLS), not base transport.

Reference: Phase 4 — why a transport layer · s8

Question 2Phase 4 · Port ranges

A browser opens a connection to a web server. From which range does the browser's own (source) port come?

  1. 0 – 1,023, the well-known range
  2. 1,024 – 49,151, the registered range
  3. 49,152 – 65,535, the dynamic/ephemeral range
  4. It is always port 80
Answer & explanation
Correct answer: C

Clients borrow an ephemeral port (49,152–65,535) for the duration of a connection, then recycle it. So the conversation is something like 52514 → 80: ephemeral source, well-known destination.

A is incorrect — 0–1,023 is for standard server services (HTTP 80, DNS 53…), and binding one needs admin/root privileges — a client asking for one would be both wrong and blocked. B is incorrect — registered ports are for vendor applications acting as servers (3389 RDP, 5432 PostgreSQL). D is incorrect — 80 is the destination; if the source were also 80, only one browser connection per machine could exist.

Reference: Phase 4 — ports and sockets · s8

Question 3Phase 4 · Sockets

A single web server listens on one port (443) yet holds thousands of simultaneous client connections apart. How?

  1. Each connection is uniquely named by its 4-tuple: source IP, source port, destination IP, destination port
  2. The server silently moves each client to a different server port after the handshake
  3. It distinguishes clients by their MAC addresses
  4. It gives each client a session cookie at the transport layer
Answer & explanation
Correct answer: A

IP + port = a socket (one end, e.g. 129.21.4.18:443); a TCP connection is the 4-tuple of both ends. Two clients — or two tabs on one client — differ in source IP or source port, so their tuples differ, and the server demultiplexes perfectly while listening on a single port. (File this fact: it's exactly what NAT exploits in Phase 6.)

B is incorrect — a common myth; the server port stays 443 for the whole connection. C is incorrect — MACs died at the last router hop (Phase 2's golden rule); the server may never see them. D is incorrect — cookies are HTTP, an application-layer notion.

Reference: Phase 4 — ports and sockets · s8

Question 4Phase 4 · Well-known ports

Which two port pairings are correct? (Choose two.)

  1. SSH — TCP 22
  2. SMTP — UDP 25
  3. SNMP — UDP 161
  4. HTTP — TCP 8080
  5. TFTP — TCP 69
Answer & explanation
Correct answers: A and C

SSH = TCP 22 ✓ and SNMP = UDP 161 ✓. The rest of the must-know table: FTP 20/21, Telnet 23, SMTP TCP 25, DNS 53 (UDP + TCP — the dual listing is deliberate, settled in Phase 5), DHCP UDP 67/68, TFTP UDP 69, HTTP 80, POP3 110, IMAP 143, HTTPS 443 — plus RIP UDP 520 and BGP TCP 179 from earlier phases.

B is incorrect — SMTP runs over TCP; mail must arrive intact and ordered. D is incorrect — HTTP's well-known port is 80; 8080 is a common alternate, not the standard. E is incorrect — TFTP is the UDP file-mover ("trivial" = no TCP machinery); its reliability tricks live in the application.

Reference: Phase 4 — the well-known table · Appendix B · s8

Question 5Phase 4 · TCP's product

Which set correctly lists what TCP guarantees — and its price?

  1. A reliable, ordered, full-duplex byte stream with flow and congestion control — at the price of header overhead and a round trip before the first data byte
  2. The lowest possible latency on every packet
  3. Reliability plus built-in encryption
  4. Reliable delivery with zero state kept on the server
Answer & explanation
Correct answer: A

TCP sells exactly one product: every byte accounted for (sequence numbers + acks + retransmission), order restored, flow control (never drown the receiver), congestion control (never drown the network) — over a connection established first. The bill: a 20-byte-minimum header and the handshake's round trip.

B is incorrect — TCP trades latency away for reliability; latency-first is UDP's pitch. C is incorrect — encryption is TLS's job, layered on top. D is incorrect — TCP is all about state (sequence numbers, windows, timers per connection); statelessness is UDP's virtue.

Reference: Phase 4 — TCP, the careful transport · s8

Question 6Phase 4 · Flags

You telnet to a port on a live host and instantly receive "connection refused." Which TCP flag came back, and what does it mean?

  1. FIN — the server closed the connection politely
  2. RST — the host is alive but nothing listens on that port; the attempt is reset
  3. URG — the connection was marked urgent and dropped
  4. PSH — the server pushed the refusal to your application
Answer & explanation
Correct answer: B

RST = abort now / "nothing listens here." The instant, active refusal is itself diagnostic: compare a firewall silently dropping your SYN, which produces a slow timeout instead. Fast refusal → host up, port closed; silence → filtered or dead.

A is incorrect — FIN is the polite "I'm finished sending" of a connection that exists; no connection was ever established here. C is incorrect — URG only marks the urgent-pointer field valid, and it's rare in practice. D is incorrect — PSH means "deliver to the app immediately, don't buffer"; it refuses nothing. The six flags: SYN · ACK · FIN · RST · PSH · URG.

Reference: Phase 4 — the six classic flags · s8

Question 7Phase 4 · Handshake

A client opens a TCP connection with SYN, seq = 812. What does segment ② — the server's reply — contain?

  1. ACK only, with ack = 812
  2. SYN with seq = 813
  3. ACK with ack = y + 1
  4. SYN + ACK · seq = y (the server's own random ISN) · ack = 813
Answer & explanation
Correct answer: D

Segment ② does double duty: it acknowledges the client's ISN (ack = 812 + 1 = 813, "I have your byte 812; next I expect 813") and proposes the server's own starting number, seq = y. Segment ③ completes it: ACK, ack = y + 1 — and may already carry data.

A is incorrect twice — the ack must be 813 (next expected, not last received), and without a SYN the server's direction would never get its own numbering established. B is incorrect — the server doesn't continue the client's sequence; each direction numbers its own bytes from its own random ISN. C is incorrect — ack = y + 1 is segment , the client's reply.

Reference: Phase 4 — the three-way handshake · s8

Question 8Phase 4 · Why three

Why does the TCP handshake need three segments rather than two?

  1. Both directions need their starting sequence numbers acknowledged — two SYNs and two ACKs, with the middle segment doing double duty
  2. The third segment exists purely for security screening
  3. The third segment negotiates the MTU with each router on the path
  4. Historical accident; two would work fine today
Answer & explanation
Correct answer: A

TCP is full-duplex: each direction is an independently numbered byte stream, so each side's ISN needs an explicit acknowledgment. That's 2 SYNs + 2 ACKs = four jobs, folded into three segments because SYN+ACK combines two of them. Closing, by contrast, takes four steps (FIN → ACK, FIN → ACK) because each direction closes independently — half-close: "I'm done sending, I'll still listen" — so the pairs can't always fold.

B is incorrect — no security check lives in the base handshake (options like MSS ride along, but that's negotiation, not screening). C is incorrect — routers don't participate; MSS is negotiated end-to-end in the SYN options. D is incorrect — with two segments the client's direction would run unacknowledged.

Reference: Phase 4 — why not two messages? · s8

Question 9Phase 4 · Ack arithmetic

A segment carries seq = 9,001 with 1,460 bytes of data. What acknowledgment number does it earn, and what does that number mean?

  1. ack = 10,460 — the last byte received
  2. ack = 9,001 — confirming the segment's own number
  3. ack = 10,461 — "received through 10,460; the next byte I expect is 10,461"
  4. ack = 10,462 — one past the next expected byte
Answer & explanation
Correct answer: C

TCP counts bytes, not segments. The segment covers bytes 9,001 through 9,001 + 1,460 − 1 = 10,460, so the ack names the next expected byte: 10,461. Every TCP arithmetic question reduces to this one rule.

A is incorrect — "last byte received" is the classic off-by-one; acks always point one past it. B is incorrect — echoing the seq would confirm nothing about how much data arrived. D is incorrect — one past the next expected is two past the data; no rule produces it. Related signal: receiving the same ack repeatedly (duplicate acks) means bytes after that point are arriving but the named byte is missing — see Q10.

Reference: Phase 4 — sequence & acknowledgment worked example · s8

Question 10Phase 4 · Loss recovery

A client receives three duplicate acks for 4,501 in quick succession. What does it do?

  1. Waits for the full retransmission timeout before resending anything
  2. Fast retransmit — immediately resends the segment starting at byte 4,501 without waiting for the timeout
  3. Sends RST and reopens the connection
  4. Advertises a window of 0 to pause the transfer
Answer & explanation
Correct answer: B

A duplicate ack is the receiver saying "I'm still waiting for 4,501" — later data is landing, but that byte is missing. Three duplicates in a row is strong evidence of a lost segment, so TCP resends it immediately: fast retransmit. Reliability's whole toolkit is just numbering + acks + timers.

A is incorrect — the RTO is the fallback when no duplicate-ack evidence arrives (e.g., the very last segment of a burst is lost); waiting when you already have proof wastes time. C is incorrect — nothing is broken enough for a reset; one segment needs resending. D is incorrect — window 0 is the receiver's flow-control brake, and the problem here isn't a full buffer.

Reference: Phase 4 — worked example, steps 3–4 · s8

Question 11Phase 4 · Two throttles

Mid-transfer, the receiver advertises Window = 0. What is it saying, and which mechanism is this?

  1. "The network path is congested" — congestion control
  2. "I am closing the connection" — teardown
  3. "Stop — my receive buffer is full" — flow control
  4. "Restart from the last ack" — go-back-N
Answer & explanation
Correct answer: C

The Window field is flow control: the receiver advertises how many more bytes it can buffer, and the sender may never have more than that unacknowledged in flight. Window 0 = "I'm full; hold on." Keep the two throttles distinct: flow control protects the receiver and is explicitly advertised; congestion control protects the network and is inferred from loss (slow start and friends — know it exists).

A is incorrect — congestion is never announced in the Window field; TCP deduces it from drops. B is incorrect — closing is FIN's job. D is incorrect — retransmission strategy is a different machine entirely; a zero window pauses even a perfectly loss-free transfer.

Reference: Phase 4 — two throttles · s8

Question 12Phase 4 · MSS

On standard Ethernet, why is the TCP MSS 1,460 bytes, and where is it agreed?

  1. It is an arbitrary IANA constant
  2. 1,518 − 58 bytes of combined headers
  3. 1,500 − 8, subtracting the UDP header
  4. MTU 1,500 − 20 (IP header) − 20 (TCP header) = 1,460 — negotiated via the MSS option in the handshake's SYN segments
Answer & explanation
Correct answer: D

The Maximum Segment Size is what's left of the link's MTU after the two headers that must fit inside it: 1500 − 20 − 20 = 1460 data bytes per segment. Each side states its MSS in the SYN's options field (which is why the TCP header has a variable length and an Offset field, ÷4 like IHL). One formula, three layers tied together — it's on the Appendix B card.

A is incorrect — it's derived, not decreed; a different MTU gives a different MSS. B is incorrect — 1,518 counts Ethernet's own framing (MACs + FCS), which never eats into the MTU's 1,500. C is incorrect — UDP's 8-byte header is irrelevant to a TCP segment size.

Reference: Phase 4 — the sizing fact · Appendix B formulas · s8

Question 13Phase 4 · UDP header

How large is the UDP header, and which four fields does it contain?

  1. 8 bytes — source port, destination port, length, checksum
  2. 20 bytes — ports, sequence number, ack number, window
  3. 8 bytes — ports, sequence number, checksum
  4. 12 bytes — ports, length, checksum, flags
Answer & explanation
Correct answer: A

UDP is "IP with ports — nothing else": 8 bytes, four 16-bit fields — source port · destination port · length · checksum. No sequence numbers (nothing is ordered), no acks (nothing is confirmed), no window (nothing is throttled), no flags (there's no connection to manage).

B is incorrect — that's TCP's 20-byte header inventory. C is incorrect — a sequence number would imply ordering machinery UDP deliberately lacks. D is incorrect — no 12-byte variant, no flags. The emptiness is the product: compare 8 bytes against TCP's 20–60.

Reference: Phase 4 — UDP, the minimal transport · s8

Question 14Phase 4 · The Length trap

A UDP datagram carries a 100-byte application payload. What value is in its Length field?

  1. 8
  2. 100
  3. 108
  4. 128
Answer & explanation
Correct answer: C — 108

UDP's Length covers the entire datagram: header + data = 8 + 100 = 108. Minimum possible value: 8 (an empty payload). Reverse direction: Length 512 → 512 − 8 = 504 data bytes.

B is incorrect and is your s8 slide-31 error immortalized — the slide defines Length as "the length of the UDP header," which is wrong on both readings: it's not the header alone (that's always 8) and not the data alone (Appendix A). A is incorrect — 8 would mean no payload. D is incorrect — nothing rounds to powers of two here. One-mark gift if you know the fix; guaranteed loss if you learned the slide.

Reference: Phase 4 — the UDP Length trap · Appendix A · s8 31

Question 15Phase 4 · Why UDP

Why must DHCP use UDP rather than TCP?

  1. DHCP messages are too large for TCP segments
  2. A DHCP client has no IP address yet — it cannot establish or hold a TCP connection
  3. TCP is not secure enough for address assignment
  4. DHCP requires strict message ordering, which UDP provides
Answer & explanation
Correct answer: B

A TCP connection is named by its 4-tuple — and a booting DHCP client has no IP address to put in it. UDP's connectionless sends need no established endpoints, so the client can shout from address-nowhere (ports 67/68) and get an answer. The same logic sells UDP to DNS (one-question-one-answer beats a handshake), VoIP/video/gaming (a late packet is worthless — skip it), SNMP, TFTP, RIP.

A is incorrect — DHCP messages are small; size is no obstacle. C is incorrect — neither transport offers security; that's not the axis of choice. D is incorrect twice — UDP provides no ordering, and DHCP's few-message exchange doesn't need any.

Reference: Phase 4 — who buys UDP · s8

Question 16Phase 4 · The judgment call

Pick the right transport for each: (a) a firmware download that must arrive intact · (b) a live voice call · (c) a DNS lookup.

  1. TCP · UDP · UDP
  2. TCP · TCP · UDP
  3. UDP · UDP · TCP
  4. TCP · UDP · TCP
Answer & explanation
Correct answer: A

(a) TCP — every byte matters, delay doesn't; a firmware image with one flipped byte is a brick. (b) UDP — timeliness beats completeness: a retransmitted audio packet arrives too late to play; skip it and move on. (c) UDP — one tiny question, one tiny answer; a handshake would triple the cost (DNS falls back to TCP only for the big/zone cases — Phase 5).

B is incorrect — TCP's retransmissions add exactly the jitter a call can't absorb. C is incorrect on both ends — an unreliable firmware download is unacceptable, and routine DNS over TCP wastes round trips. D is incorrect on (c). Modern footnote: QUIC rebuilds TCP's guarantees over UDP — that's HTTP/3 — proving the layer split is a design choice, not a law.

Reference: Phase 4 — TCP vs UDP table · check yourself · s8

Trainer's tip

If Q7, Q9 or Q10 cost you marks, the fix is mechanical: redraw the handshake and re-run the guide's byte-counting ritual until "ack = next expected byte" is a reflex. The port table (Q4) is flashcard material. All drills: C · D · E · FK · next phase: DNS & DHCP (M).


Appendix M · Practice

Practice Q&A — DNS & DHCP L7 · APPLICATION

CoversPhase 5 · names and leasess7 · all 35
Sixteen questions on the two services you check first when "the Internet is down." DNS half: the hierarchy, the record types, recursive-vs-iterative, and the UDP/TCP split. DHCP half: DORA addressing byte-for-byte (two slide errata live here), relays, and the two classic attacks. Q13 is the corrected-slide question — learn the fix.
Question 1Phase 5 · Why a hierarchy

Why is DNS built as a distributed, hierarchical database instead of one central server for the whole Internet?

  1. Purely to reduce latency for distant users
  2. A single server would actually work, given enough memory
  3. A central server would be a single point of failure, could not absorb the traffic volume, cannot be near everyone, and would monopolize maintenance
  4. Because IPv4 could not address one server large enough
Answer & explanation
Correct answer: C

Your s7 deck lists exactly these four failures of the one-phone-book-for-Earth idea: single point of failure (it dies, the Internet forgets every name), impossible traffic volume, distance (one location can't be close to everyone), and a maintenance monopoly (every update funnels through one operator). Distribution solves all four at once.

A is incorrect — latency is one of the four, not the whole story. B is incorrect — memory was never the binding constraint; failure, load, distance and administration are. D is incorrect — addressing a server was never the issue.

Reference: Phase 5 — DNS, why names · s7

Question 2Phase 5 · The three tiers

Which server actually holds the A record for www.rit.edu?

  1. A root server
  2. An .edu TLD server
  3. The client's stub resolver
  4. rit.edu's authoritative name server
Answer & explanation
Correct answer: D

Read the name right to left down the tree: the root ("." — 13 lettered identities, ~1,000 mirrors) knows who runs each TLD; the .edu TLD servers know each domain's name servers; and rit.edu's authoritative server holds the actual records. Everything above it serves referrals, not answers.

A and B are incorrect — root and TLD servers reply "ask them next, here's where" (Q7); they store the map of the map, not the destination data. C is incorrect — the stub resolver on your machine stores nothing authoritative; it just asks (and caches what comes back).

Reference: Phase 5 — the hierarchy figure · s7

Question 3Phase 5 · MX

Which record type routes mail for a domain, and when several exist, which one is chosen?

  1. MX — the record with the highest preference number wins
  2. MX — the record with the lowest preference number wins
  3. CNAME — the alias closest to the mail server wins
  4. TXT — the SPF entry names the mail server
Answer & explanation
Correct answer: B

MX maps a domain to its mail server's name, each with a preference number — lowest wins, higher numbers are backups. (Think "priority 1 beats priority 10.")

A is incorrect — direction flipped; that's the classic MX trick option. C is incorrect — CNAME aliases one name to a canonical name (www.shop.com → shop.hosting.net; the lookup then restarts on the target) and has nothing to do with mail selection. D is incorrect — TXT carries policy text like SPF/DKIM, which authenticates mail; it doesn't route it.

Reference: Phase 5 — resource records table · s7 13 (rebuilt)

Question 4Phase 5 · Record types

Which two statements about DNS resource records are correct? (Choose two.)

  1. AAAA maps a name to an IPv6 address
  2. PTR maps a name to arbitrary text
  3. CNAME maps an alias to its canonical name
  4. NS maps an IP address back to a name
  5. SOA names the domain's mail server
Answer & explanation
Correct answers: A and C

A ✓ — "quad-A": 4 × 32 bits = 128, cute and mnemonic. C ✓ — and after following a CNAME, the lookup restarts on the canonical target.

B is incorrect — arbitrary text is TXT; PTR is the reverse map (IP → name, living under in-addr.arpa). D is incorrect — NS maps a domain to its authoritative name servers; it's the glue that builds the hierarchy's referrals. E is incorrect — SOA is zone metadata (primary server, admin email, serial and refresh timers); mail is MX's job (Q3). Full table to memorize: A · AAAA · CNAME · MX · NS · PTR · SOA · TXT.

Reference: Phase 5 — resource records table · s7

Question 5Phase 5 · Reverse DNS

The command dig -x 129.21.4.18 answers "what name owns this IP?" Which record type and special tree does it consult?

  1. PTR records, under the in-addr.arpa tree
  2. A records, read backwards
  3. NS records at the root
  4. SOA records of the owning zone
Answer & explanation
Correct answer: A

Reverse DNS inverts the question: PTR records live under the special in-addr.arpa domain (the IP's octets reversed form the name), and tools like ping -a and dig -x consult them. Forward (A) and reverse (PTR) records are maintained separately — one existing never guarantees the other.

B is incorrect — A records only run name → IPv4; there is no "backwards read" of the forward tree, which is indexed by names. C is incorrect — NS records delegate zones; they don't answer ownership. D is incorrect — SOA describes the zone itself, not any single address.

Reference: Phase 5 — resource records · dig examples · s7

Question 6Phase 5 · Recursive vs iterative

In a real first-time lookup, which legs of the journey are recursive and which are iterative?

  1. Every leg is recursive — each server passes the query onward
  2. Every leg is iterative — the client itself asks root, TLD, then authoritative
  3. Client → its resolver is the one recursive leg ("get me the final answer"); the resolver's queries to root, TLD and authoritative are iterative ("tell me who to ask next") — and root/TLD servers refuse recursion
  4. Recursive for .com domains, iterative for country codes
Answer & explanation
Correct answer: C

The hybrid is the reality: your stub resolver asks its configured recursive resolver (ISP, campus, 8.8.8.8) one recursive question, and that resolver then walks the tree iteratively, following referrals. Root and TLD servers refuse recursion by design — serving referrals only is what keeps them alive under world-scale load.

A is incorrect — if every server recursed, the root would carry the whole Internet's lookup labor. B is incorrect — your OS's stub is deliberately dumb; it delegates the walking. D is incorrect — the split is by role in the chain, never by TLD. Exam phrasing: if asked "fully recursive vs iterative," describe both models, then note reality is this hybrid.

Reference: Phase 5 — how a lookup travels · kfact · s7

Question 7Phase 5 · Referrals

A resolver asks an .edu TLD server for www.rit.edu. What does the TLD server reply?

  1. The A record for www.rit.edu
  2. A referral: the names/addresses of rit.edu's authoritative servers — "ask them"
  3. A referral back up to the root
  4. REFUSED, because TLD servers only answer registrars
Answer & explanation
Correct answer: B

Referrals, not delegation-of-labor: each tier hands back the next rung down. Root → "here are the .edu servers"; TLD → "here are rit.edu's authoritative servers"; authoritative → the actual answer. The NS records (Q4) are exactly what these referrals are made of.

A is incorrect — TLD servers don't hold leaf records; only rit.edu's authoritative server does (Q2). C is incorrect — referrals only ever point down the tree, toward the answer. D is incorrect — TLD servers answer any resolver; what they refuse is recursion, not queries.

Reference: Phase 5 — how a lookup travels · s7

Question 8Phase 5 · Caching

A website moves to a new IP, yet some users keep landing on the old server for hours. Why do DNS changes "take time to propagate"?

  1. Zone transfers between secondaries are throttled to hourly
  2. Root servers only refresh their database weekly
  3. Registrars batch changes overnight
  4. Every answer carries a TTL, and resolvers and operating systems reuse the cached answer until it expires
Answer & explanation
Correct answer: D

Caching is what makes DNS fast — a second lookup of google.com costs microseconds and zero packets — and the TTL is its price: after a move, stale cached answers linger anywhere below you in the chain (your OS, your resolver) for up to a full TTL. That lag is "propagation." Ops trick implied: drop the TTL before a planned move.

A is incorrect — zone transfers sync the domain's own servers; they aren't what delays the world's caches. B is incorrect — the root never held the A record at all (Q2). C is incorrect — the record was already changed at the authoritative server; the delay lives downstream.

Reference: Phase 5 — caching & TTL · s7

Question 9Phase 5 · UDP 53 vs TCP 53

DNS is listed as using both UDP and TCP on port 53. When is TCP actually used?

  1. Never — the dual listing is a legacy error
  2. For all queries, since reliability always matters
  3. For zone transfers (AXFR), and for answers too large for a datagram — the server sets the truncated flag and the client retries over TCP
  4. Only for reverse (PTR) lookups
Answer & explanation
Correct answer: C

Both of your slides were right — about different jobs. Ordinary queries ride UDP 53: one tiny packet each way; a handshake would triple the cost. TCP 53 carries the bulk and the oversized: a secondary server copying an entire zone (AXFR) needs reliable, ordered delivery; and a response beyond the classic 512-byte datagram limit comes back flagged truncated, telling the client to retry over TCP. Exam phrasing: "UDP for queries, TCP for zone transfers."

A is incorrect — the dual listing is deliberate. B is incorrect — that would forfeit UDP's one-exchange economy for millions of tiny lookups. D is incorrect — PTR queries are ordinary queries; they ride UDP like the rest.

Reference: Phase 5 — the UDP/TCP trap, resolved · Phase 4 · s7 · s8

Question 10Phase 5 · The lease

Besides an IP address, what does a DHCP lease typically deliver to a client?

  1. Subnet mask, default gateway, DNS servers, and the lease duration
  2. Only the IP address — everything else is configured manually
  3. A new MAC address for the interface
  4. The addresses of every other host on the subnet
Answer & explanation
Correct answer: A

DHCP exists to kill the manual-typo factory (duplicate addresses, wrong masks, forgotten gateways), so it leases the whole kit: IP + mask + default gateway + DNS servers + lease time. Addresses return to the pool when leases lapse — one small pool can serve a rotating crowd of laptops.

B is incorrect — an IP without mask and gateway can't even leave its subnet; half-configuration would defeat the purpose. C is incorrect — MACs are burned into (or randomized by) the interface at L2; DHCP never assigns them (it uses them to identify clients). D is incorrect — hosts discover neighbors via ARP/ND when needed, not from DHCP.

Reference: Phase 5 — why DHCP · s7

Question 11Phase 5 · DORA

What is the correct order of the DHCP conversation, and over which transport does it run?

  1. Discover → Offer → Request → Ack, over UDP (ports 68 → 67), the first and third steps broadcast
  2. Request → Offer → Discover → Ack, over UDP
  3. Discover → Offer → Request → Ack, over TCP for reliability
  4. Offer → Discover → Ack → Request, over UDP
Answer & explanation
Correct answer: A

DORA: the client broadcasts Discover ("any DHCP server out there?"), servers answer with an Offer (address + mask + gateway + DNS + lease), the client broadcasts a Request accepting one offer, and the winning server's Ack starts the lease timer. Only after the Ack does the client configure its interface.

B and D are incorrect — you can't request or be offered before asking; the mnemonic locks the order. C is incorrect — DHCP cannot use TCP: the client has no IP address yet, so no connection is possible (the Phase 4 fact). It protects itself instead with UDP checksums and randomized retransmission timers.

Reference: Phase 5 — the DORA figure · Phase 4 — why DHCP is UDP · s7

Question 12Phase 5 · DISCOVER addressing

What are the source and destination of the DHCPDISCOVER packet, addresses and ports included?

  1. 0.0.0.0 : 67 → 255.255.255.255 : 68
  2. 0.0.0.0 : 68 → 255.255.255.255 : 67
  3. 169.254.x.x : 68 → 255.255.255.255 : 67
  4. The client's leased IP : 68 → the server's IP : 67
Answer & explanation
Correct answer: B

The client has nothing: source 0.0.0.0 ("I have no address" — the unspecified address), destination 255.255.255.255 (limited broadcast — it doesn't even know what network it's on, so this is the only address that works). Ports: client = 68, server = 67.

A is incorrect — ports swapped; "server 67 / client 68" is the pairing to memorize. C is incorrect — APIPA (169.254) is what a host self-assigns after DHCP fails; during the attempt it sources 0.0.0.0. D is incorrect — there is no leased IP yet, and the server's address is unknown until an Offer arrives.

Reference: Phase 5 — DORA figure, step ① · 3.2 — limited broadcast · s7

Question 13Phase 5 · The REQUEST errata

What source IP does the client use in the initial DORA REQUEST, and in a renewal REQUEST at ~50% of the lease?

  1. The newly offered address in both cases
  2. 0.0.0.0 in both cases
  3. 0.0.0.0 initially — the address isn't its to use until the ACK; its own leased IP, unicast to its server, at renewal
  4. 255.255.255.255 initially, 0.0.0.0 at renewal
Answer & explanation
Correct answer: C

Two different moments your s7 slide 30 fused into one error (it claims the initial REQUEST sources "the new client address" — RFC 2131 says no). During initial DORA the client still sources 0.0.0.0: nothing is its own until the server's ACK lands. At renewal (~50% of lease) the client very much has an address — it unicasts a REQUEST from its own IP straight to its server, falling back to broadcast, then a fresh DORA, if renewals go unanswered.

A is incorrect — that's the slide's error verbatim (Appendix A). B is incorrect — a renewing client isn't addressless. D is incorrect — 255.255.255.255 is only ever a destination; no packet legally sources the broadcast address (Appendix G Q10's rule).

Reference: Phase 5 — the REQUEST trap · Appendix A · s7 30

Question 14Phase 5 · Why broadcast the REQUEST

The client already knows which server it's accepting. Why is the initial REQUEST still broadcast?

  1. Because the client does not know the server's MAC address
  2. So every other server that made an offer hears "I chose someone else" and reclaims its offered address
  3. Because RFC 2131 forbids unicast before the handshake
  4. To reach the relay agent, which only listens for broadcasts
Answer & explanation
Correct answer: B

Several servers may answer one DISCOVER with offers, each tentatively reserving an address. The broadcast REQUEST names the chosen server — and doubles as a polite mass-decline: everyone else releases their reserved offer back to the pool. One packet, two jobs.

A is incorrect — the Offer arrived in a frame; the client saw the server's MAC. C is incorrect — no such prohibition; renewals are unicast (Q13). D is incorrect — a relay forwards whatever the exchange needs; it isn't the reason for this design choice.

Reference: Phase 5 — DORA figure caption · s7

Question 15Phase 5 · Relay agents

DHCP runs on broadcasts, and broadcasts die at routers. How does one central DHCP server serve twenty subnets?

  1. The server joins a multicast group that spans all subnets
  2. It can't — one server per subnet is mandatory
  3. Routers are configured to forward all broadcasts
  4. Each router runs a relay agent (Cisco: ip helper-address) that repackages the broadcast as unicast to the central server, which tells subnets apart by the relay's stamped-in gateway address
Answer & explanation
Correct answer: D

The relay agent is the standard fix: it catches the local broadcast, stamps in its own interface address (the gateway field), and unicasts the message across any number of hops to the server. That stamp is also how the server knows which subnet's pool to draw from — twenty subnets, one server, one lease database.

A is incorrect — DHCPv4 has no multicast mode; that thinking belongs to v6's redesign. B is incorrect — avoiding server-per-subnet is exactly what relays are for. C is incorrect — globally forwarding broadcasts would resurrect every broadcast-storm and ARP-noise problem subnetting exists to kill (3.3's whole motivation).

Reference: Phase 5 — practicalities, scope · 3.3 — why subnet · s7

Question 16Phase 5 · DHCP attacks

Users on one floor suddenly get a "default gateway" that intercepts their traffic, handed out with their leases. Which attack is this, and what is the switch-side defense?

  1. DHCP starvation — defended by port security
  2. ARP spoofing — defended by Dynamic ARP Inspection
  3. Rogue DHCP server — defended by DHCP snooping, which allows only sanctioned ports to speak as a server
  4. DNS cache poisoning — defended by DNSSEC
Answer & explanation
Correct answer: C

DHCP trusts everyone — that's the flaw. A rogue server on the local LAN answers DISCOVERs faster than the relayed real server (clients accept the first OFFER to arrive) and hands out itself as gateway/DNS: instant man-in-the-middle. DHCP snooping marks which switch ports may originate server messages; rogue OFFERs from user ports are dropped.

A is incorrect — starvation is the other DHCP attack: flooding fake DISCOVERs to drain the pool so real users get nothing (denial of service, not interception). B is incorrect — ARP spoofing achieves a similar MITM but by poisoning ARP caches after addressing is done (Appendix D Q15); here the lie arrived inside the lease itself. D is incorrect — no DNS cache was touched; the attacker didn't need to when it could be the configured DNS.

Reference: Phase 5 — security practicalities · Phase 2 — ARP security · s7

Trainer's tip

Phase 5 is two stories: a tree walk (Q1–9: know each tier's reply and each record's job) and a four-step dance (Q10–16: know every address and port in DORA byte-for-byte, especially the corrected REQUEST). Both convert directly to lab marks. Final drill: NAT (N). All drills: CL.


Appendix N · Practice

Practice Q&A — NAT L3uses L4 ports

CoversPhase 6 · translation, PAT, the cost sheets5 · 15–32
Fourteen questions on the finale. NAT is where three earlier phases snap together — private addressing (3.2), routing (3.5), ports (Phase 4) — so treat this set as cumulative review in disguise. The PAT table from the guide (two hosts colliding on :1050) drives Q5–7; have it in your head before starting.
Question 1Phase 6 · Why NAT

A laptop at 192.168.10.5 browses the public Internet, despite RFC 1918 addresses being unroutable there. What makes this work?

  1. DNS translates the private address into a public one during the lookup
  2. A NAT router at the border rewrites packet headers in flight — swapping the private source for its public address outbound, and back again inbound — consulting a translation table it builds as connections open
  3. Internet routers make an exception for web traffic
  4. The laptop tunnels all traffic to its ISP over a VPN by default
Answer & explanation
Correct answer: B

The border router holds one (or a few) public addresses and performs live header surgery both ways, with the translation table as its memory. Thousands of hosts, one public IP — the single trick that deferred IPv4 exhaustion by ~25 years, and the reason 3.2's private ranges are useful at all.

A is incorrect — DNS maps names to addresses (Phase 5); it never touches packets in flight. C is incorrect — Internet routers drop RFC 1918 sources regardless of what they carry; the private address genuinely never leaves your site. D is incorrect — no default VPN exists; and a VPN would still need valid public addresses at its ends.

Reference: Phase 6 — why NAT exists · 3.2 — private ranges · s5 15–17

Question 2Phase 6 · Vocabulary

Host 10.100.100.3 appears to the outside world as 200.1.1.1. In the Cisco vocabulary your deck uses, what are these two addresses called?

  1. Inside global = 10.100.100.3 · inside local = 200.1.1.1
  2. Outside local and outside global, respectively
  3. Both are "inside local," measured at different times
  4. Inside local = 10.100.100.3 (the private address as seen inside) · inside global = 200.1.1.1 (what the world sees instead)
Answer & explanation
Correct answer: D

Decode the terms literally: inside = it names an inside host; local = the value used on the local (private) side; global = the value shown to the global Internet. So the same inside machine has an inside local face (10.100.100.3) and an inside global face (200.1.1.1).

A is incorrect — the swap; if the labels ever confuse you, "local = LAN-side value" breaks the tie. B is incorrect — outside terms describe the remote server's addresses, not your host's. C is incorrect — the pair coexists; the translation table's rows are exactly inside-local ↔ inside-global mappings.

Reference: Phase 6 — vocabulary · s5

Question 3Phase 6 · Static NAT

An internal mail server must be reachable from the Internet 24/7 at a predictable address. Which NAT type fits?

  1. PAT / NAT overload
  2. Dynamic NAT from a pool
  3. Static NAT — one private ↔ one public, fixed, both directions, forever
  4. Overlapping NAT
Answer & explanation
Correct answer: C

Static NAT nails 10.1.1.10 ↔ 203.0.113.10 permanently, in both directions — so unsolicited inbound connections (which mail delivery is!) always find their way, no pre-existing table entry needed. The mapping is the table entry, forever.

A is incorrect — PAT creates entries only when inside hosts dial out; an outside mail sender's inbound-first SYN would find no entry and die (that's Q10's whole story). B is incorrect — a pool address is first-come-first-served and changes between sessions; "predictable" is exactly what dynamic isn't. D is incorrect — overlapping NAT solves colliding private ranges between two sites, a different problem entirely.

Reference: Phase 6 — the four types · s5

Question 4Phase 6 · Dynamic NAT

A dynamic NAT uses a pool of 10 public addresses. Ten inside hosts hold active translations when an 11th host tries to reach the Internet. What happens?

  1. The router silently switches the 11th host to PAT
  2. The 11th host waits — dynamic NAT is one-to-one while in use, so no translation exists until a pool address frees up
  3. Two hosts share the least-used pool address
  4. The 11th host's packets go out untranslated
Answer & explanation
Correct answer: B

Dynamic NAT is still strictly 1:1 while in use — the pool just decides which public address you get, first-come-first-served. Pool exhausted = the 11th waits. This scaling wall is why dynamic NAT is rare today and mostly a stepping stone to PAT, which multiplexes by port instead.

A is incorrect — no silent mode-switch exists; PAT/overload is a distinct configuration. C is incorrect — two hosts on one address without port logic would make return traffic ambiguous, the very problem PAT's ports solve. D is incorrect — untranslated RFC 1918 sources would be dropped by the first Internet router (Q1).

Reference: Phase 6 — the four types · s5

Question 5Phase 6 · PAT collision

Host A (10.100.100.3) already holds the PAT mapping 200.1.1.1:1050. Host B (10.100.100.50) now opens a connection that also sources port 1050. What does the NAT do with B's flow?

  1. Rejects B's connection until A finishes
  2. Queues B's packets behind A's
  3. Assigns the next free public port — 200.1.1.1:1051 — records the new row, and forwards
  4. Gives B a second public IP address
Answer & explanation
Correct answer: C

This is your deck's own rebuilt table: PAT rewrites source IP and, when needed, source port. 200.1.1.1:1050 is taken, so B becomes 200.1.1.1:1051, and the log now holds two rows — same public IP, unique public ports. The port collision is exactly why "P" is in PAT.

A and B are incorrect — no rejection, no queueing: translation is per-flow bookkeeping, not contention for a resource. D is incorrect — needing more IPs per colliding port would defeat overload's entire purpose; ports are the multiplier, addresses stay scarce.

Reference: Phase 6 — PAT worked example · s5 (table rebuilt)

Question 6Phase 6 · The return path

A reply from the web server arrives addressed to 200.1.1.1:1051. Step by step, what does the PAT router do?

  1. Looks up port 1051 in the translation table → inside local 10.100.100.50:1050 → rewrites the destination IP and port to that, recomputes checksums, forwards inside
  2. Broadcasts the packet to all inside hosts and lets the right one claim it
  3. Rewrites the packet's source to 10.100.100.50 and returns it to the server
  4. Drops it — 1051 was never used by any inside host
Answer & explanation
Correct answer: A

Inbound is outbound in reverse: the public-side port is the lookup key, the stored row supplies the inside local socket, and the router un-rewrites the destination before forwarding inward. The receptionist checks the call log and routes the callback to the right extension.

B is incorrect — broadcasting data flows inside would be both a privacy hole and a return to the pre-switching dark ages; the table exists precisely to avoid guessing. C is incorrect — inbound packets get their destination rewritten; source rewriting is the outbound direction. D is incorrect — 1051 is in the table; the NAT assigned it itself in Q5.

Reference: Phase 6 — PAT worked example, step 3 · s5

Question 7Phase 6 · Checksums

After rewriting an address and port, which checksums must the NAT router recompute?

  1. Only the IP header checksum — L4 checksums are end-to-end and untouched
  2. Only the TCP/UDP checksum
  3. Neither — checksums are recomputed by the destination
  4. Both the IP header checksum and the TCP/UDP checksum — because the L4 checksum covers a pseudo-header that contains the IP addresses
Answer & explanation
Correct answer: D

The subtle half is the pseudo-header: TCP and UDP fold the IP source and destination addresses into their own checksum calculation, so changing an IP address invalidates the transport checksum too — even if no port changed. Every rewrite therefore fixes both layers' checksums.

A is incorrect and is the tempting purist answer — it's exactly why NAT gets called a "layer violation": a router is meddling with L3 and L4 fields that were designed to be end-to-end. B is incorrect — the IP header checksum covers the changed address directly. C is incorrect — a receiver verifying a stale checksum would discard the packet as corrupt; the NAT must leave packets self-consistent.

Reference: Phase 6 — PAT worked example, step 4 · cost sheet · s5

Question 8Phase 6 · Capacity

Roughly how many simultaneous flows can one public IP address hold toward a given destination under PAT, and why?

  1. About 64,000 — because a conversation is identified by its full 4-tuple, so the 16-bit public port space is the multiplier
  2. 254 — one per usable host address
  3. 1,024 — the well-known port count
  4. Unlimited — flows need no identifier
Answer & explanation
Correct answer: A

The recycled Phase 4 insight: a flow is (src IP, src port, dst IP, dst port), not an address. With one public IP fixed, the free variable is the 16-bit source port — ~64k values — per destination socket, since a different destination changes the tuple anyway. That arithmetic is why a whole apartment building streams through one address without collision.

B is incorrect — 254 is subnet-host math (2⁸−2), a different universe. C is incorrect — 0–1,023 is the well-known range, irrelevant to counting flows. D is incorrect — unidentified flows couldn't be un-rewritten on return; the table would be useless.

Reference: Phase 6 — PAT worked example, step 4 · Phase 4 — sockets · s5

Question 9Phase 6 · Port forwarding

Your friend's game server runs perfectly, yet nobody on the Internet can connect to it through their home router. Explain the failure and the fix, in NAT terms.

  1. The ISP blocks all game traffic; only a VPN helps
  2. An inbound-first SYN finds no translation-table entry and is dropped; the fix is a port-forward — a manual static entry mapping public :port to the PC's private IP:port
  3. The router's firewall must be disabled entirely
  4. Game servers require a static public IP before NAT will pass them
Answer & explanation
Correct answer: B

The receptionist's corollary: an outsider can't call in first — table entries are created by outbound traffic, and no inside host dialed this stranger. A port forward pre-creates the entry by hand ("anything arriving at public :25565 → 192.168.10.5:25565"). The blunt alternative — "DMZ host," forwarding everything to one PC — works with all the risk that implies.

A is incorrect — no ISP conspiracy is needed; vanilla PAT behavior explains it fully. C is incorrect — the drop happens in NAT's lookup logic, not (only) a firewall rule; and disabling security to host a game is the wrong tool. D is incorrect — a static mapping helps; a static public IP is a convenience, not a requirement.

Reference: Phase 6 — trainer's tip, the receptionist · s5

Question 10Phase 6 · Overlapping NAT

Two VPN-linked offices discover both use 10.0.0.0/24. Even after adding routes, a Seattle host can never reach Denver's 10.0.0.7. Why, and what does overlapping NAT do about it?

  1. The tunnel's TTL is too short for the extra hops
  2. The two sites' switches see duplicate MAC addresses and shut the ports
  3. The VPN encrypts the addresses, so routers can't read them
  4. Seattle's host concludes 10.0.0.7 is on its own subnet and never sends to the router at all; overlapping NAT presents each site to the other under a fake range (Seattle as 10.1.1.0/24, Denver as 10.2.2.0/24), translating both source and destination across the tunnel
Answer & explanation
Correct answer: D

The failure happens before any packet leaves: the sender ANDs the destination with its own mask (3.2's operation), sees "same network," ARPs locally, and the router never gets a chance. So the fix must change what the hosts dial: each site addresses the other's fake range (Seattle's 10.0.0.7 dials 10.2.2.7), and the NATs rewrite both source and destination in flight — stateful at both ends, painful, and the strongest argument for planning address space before you grow.

A is incorrect — TTL is decremented per hop as always; nothing special expires. B is incorrect — MACs never cross the routed tunnel (Phase 2's rule). C is incorrect — the tunnel endpoints de-encrypt before forwarding; readability isn't the issue, ambiguity is.

Reference: Phase 6 — overlapping NAT · 3.2 — the AND operation · s5

Question 11Phase 6 · Broken protocols

Classic FTP and SIP famously misbehave behind NAT. What is the root cause, and the router-side remedy?

  1. Their packets exceed the MTU after translation
  2. They only run over TCP, which NAT cannot track
  3. They write IP addresses inside their payloads, which NAT's header-only rewriting never touches — protocol-aware helpers (ALGs) must fix the payload too
  4. They refuse to operate from RFC 1918 addresses
Answer & explanation
Correct answer: C

NAT rewrites headers. A protocol that announces "connect back to me at 10.100.100.3, port X" inside its data leaks the untranslated private address to the far end — which then dials an unroutable number. ALGs (application-layer gateways) are per-protocol helpers that inspect and rewrite those embedded addresses as well.

A is incorrect — translation changes values, not sizes (checksums aside). B is incorrect — NAT tracks TCP happily (every web flow); and SIP typically rides UDP anyway. D is incorrect — the applications run fine from private space; it's their self-descriptions that break in transit.

Reference: Phase 6 — the honest cost sheet · s5

Question 12Phase 6 · The cost sheet

Which two statements about NAT's costs are accurate? (Choose two.)

  1. The router must hold a live translation table — reboot it and every session dies
  2. NAT is a full replacement for a firewall
  3. It breaks end-to-end connectivity — inbound-first connections fail without port forwarding, and peer-to-peer/VoIP need traversal tricks like STUN
  4. NAT encrypts all translated traffic
Answer & explanation
Correct answers: A and C

A ✓ — state = fragility: the table lives in the router's memory, so a reboot orphans every flow (sessions must re-create). C ✓ — the end-to-end break is NAT's deepest cost, spawning a whole industry of traversal workarounds. Add the purists' complaint — a router meddling in L3/L4 fields is a "layer violation" — and you have the honest cost sheet, and the reason IPv6's answer to scarcity was simply enough addresses for no NAT at all.

B is incorrect — NAT merely hides structure; the "no unsolicited inbound" side effect resembles a firewall but filtering policy is a separate job. D is incorrect — nothing is encrypted; headers are rewritten in plaintext.

Reference: Phase 6 — the honest cost sheet · s5

Question 13Phase 6 · Cisco verbs

Which command displays the router's live NAT translation table — the actual PAT rows?

  1. show ip nat statistics
  2. show ip nat translations
  3. debug ip nat
  4. clear ip nat translation *
Answer & explanation
Correct answer: B

show ip nat translations prints the table itself — inside local ↔ inside global rows, ports included: the Q5 worked example, for real.

A is incorrect — statistics gives totals, pool usage and hit/miss counts; useful, but no rows. C is incorrect — debug ip nat watches rewrites happen live, which is a lab-only firehose (chatty!), not a table view. D is incorrect — clear … * flushes the table (sessions re-create on their next packet) — the opposite of reading it. Know all four verbs; your deck ends on them.

Reference: Phase 6 — the Cisco verbs · s5 32

Question 14Phase 6 · Grand synthesis

From 192.168.10.5, you request a web page. In the correct order, which services and translations touch that first packet before it reaches the server?

  1. ARP → DNS → NAT → TCP handshake → routing
  2. DNS resolves the name → TCP handshake begins → IP packet built → gateway chosen by mask → ARP finds the gateway's MAC → NAT rewrites source IP:port at the border → routers forward by longest-prefix match, TTL ticking
  3. NAT rewrites first → DNS → ARP → routing → TCP
  4. TCP handshake → DNS → ARP → NAT → routing
Answer & explanation
Correct answer: B

The whole course in one round trip: DNS (P5, UDP 53) turns the name into an address · TCP (P4) starts its handshake · the IP packet is built (P3.1) · the mask says "not my network" → default gateway (P3.2) · ARP finds the gateway's MAC and the frame is built (P2) · the border router de-frames and NAT rewrites source to public IP:port, logging it (P6) · routers forward by longest-prefix match while TTL ticks (P3.5, 3.1). The reply retraces: NAT un-rewrites, a fresh frame carries it to your MAC, the browser paints.

A, C and D are incorrect on ordering: nothing can handshake before DNS supplies the address; ARP happens when the frame is built, after the gateway decision; and NAT acts at the border, after the packet exists — never first.

Reference: Phase 6 — grand-finale synthesis quiz · every phase of this guide

Trainer's tip

That's the full circuit: 12 practice sets, C through N, 175 questions covering every phase. Exam-eve plan: the three phase sets you're weakest in, cold, timed — then Q14 above from memory as your final check. If you can narrate that round trip without notes, you're ready. Start of the loop: Appendix C.