The answer NAME field is a compression pointer back to the question name.

highlighted = computed this step

The answer NAME reuses the question

Instead of writing www.example.com again, the answer NAME is pointer 0xc00c.

answer NAME=0xc00c\text{answer NAME}=0xc00c
Answer reuses the question nameThe answer NAME is a pointer and the answer data stays explicit.Answer NAME pointer16 bits / 2 bytes0xc00cbyte 0byte 11100000000001100markeroffset12marker: 3Answer record112 bits / 14 bytes0x000100010000012c00045db8d822byte 0byte 1byte 2byte 300000000000000010000000000000001byte 4byte 5byte 6byte 700000000000000000000000100101100byte 8byte 9byte 10byte 1100000000000001000101110110111000byte 12byte 131101100000100010type0x0001class0x0001ttl300rdlength4rdata93.184.216.34(cont.)

It points to offset twelve

The pointer target is offset 12, where the question name begins.

pointer offset=12\text{pointer offset}=12
Answer reuses the question nameThe answer NAME is a pointer and the answer data stays explicit.Answer NAME pointer16 bits / 2 bytes0xc00cbyte 0byte 11100000000001100markeroffset12marker: 3Answer record112 bits / 14 bytes0x000100010000012c00045db8d822byte 0byte 1byte 2byte 300000000000000010000000000000001byte 4byte 5byte 6byte 700000000000000000000000100101100byte 8byte 9byte 10byte 1100000000000001000101110110111000byte 12byte 131101100000100010type0x0001class0x0001ttl300rdlength4rdata93.184.216.34(cont.)

The rest of the answer is normal fields

After the pointer, the answer still carries type, class, TTL, data length, and address bytes.

answer type=1\text{answer type}=1
Answer reuses the question nameThe answer NAME is a pointer and the answer data stays explicit.Answer NAME pointer16 bits / 2 bytes0xc00cbyte 0byte 11100000000001100markeroffset12marker: 3Answer record112 bits / 14 bytes0x000100010000012c00045db8d822byte 0byte 1byte 2byte 300000000000000010000000000000001byte 4byte 5byte 6byte 700000000000000000000000100101100byte 8byte 9byte 10byte 1100000000000001000101110110111000byte 12byte 131101100000100010type0x0001class0x0001ttl300rdlength4rdata93.184.216.34(cont.)

Summary

DNS compression reuses the name; it does not compress away the answer data.

pointer bytes=2\text{pointer bytes}=2
Answer reuses the question nameThe answer NAME is a pointer and the answer data stays explicit.Answer NAME pointer16 bits / 2 bytes0xc00cbyte 0byte 11100000000001100markeroffset12marker: 3Answer record112 bits / 14 bytes0x000100010000012c00045db8d822byte 0byte 1byte 2byte 300000000000000010000000000000001byte 4byte 5byte 6byte 700000000000000000000000100101100byte 8byte 9byte 10byte 1100000000000001000101110110111000byte 12byte 131101100000100010type0x0001class0x0001ttl300rdlength4rdata93.184.216.34(cont.)