DNS 05: Compressed Names

A real answer record with the name field C0 0C circled: “a pointer: the name is at byte 12 - the question’s name, not repeated”. This lesson is that circle, taken apart.
Before you start. DNS 03 and 04: The Question and the Answer wrote names as length-prefixed labels (03 www 07 example 04 test 00) and built answers whose name field was an unexplained c0 0c. A pointer is a number that says where something is instead of containing it. This stage teaches the server to read names written as pointers, and builds a small dig of our own to do it on real replies from the internet.