Noah Kantrowitz
Open Source Bridge 2015
How The
Internet Works
The Life and Times of an HTTP Request
Slide 2
Slide 2 text
It's not a big truck.
It's a series of tubes.
Ted Stevens
Slide 3
Slide 3 text
We never, ever in the
history of mankind
have had access to so
much information so
quickly and so easily.
Vint Cerf
Slide 4
Slide 4 text
No content
Slide 5
Slide 5 text
https:/
/www.google.com/
Slide 6
Slide 6 text
https:/
/www.google.com/
Slide 7
Slide 7 text
DNS
Slide 8
Slide 8 text
DNS
• Map names to IP addresses.
• gethostbyname()
• RFC 1034 & 1035.
• "What is the A for www.google.com?"
Slide 9
Slide 9 text
DNS Header
ID
ID
ID
ID
ID
ID
ID
ID
ID
ID
ID
ID
ID
ID
ID
ID
QR Opcode
Opcode
Opcode
Opcode AA TC RD RA Z
Z
Z RCODE
RCODE
RCODE
RCODE
QDCOUNT
QDCOUNT
QDCOUNT
QDCOUNT
QDCOUNT
QDCOUNT
QDCOUNT
QDCOUNT
QDCOUNT
QDCOUNT
QDCOUNT
QDCOUNT
QDCOUNT
QDCOUNT
QDCOUNT
QDCOUNT
ANCOUNT
ANCOUNT
ANCOUNT
ANCOUNT
ANCOUNT
ANCOUNT
ANCOUNT
ANCOUNT
ANCOUNT
ANCOUNT
ANCOUNT
ANCOUNT
ANCOUNT
ANCOUNT
ANCOUNT
ANCOUNT
NSCOUNT
NSCOUNT
NSCOUNT
NSCOUNT
NSCOUNT
NSCOUNT
NSCOUNT
NSCOUNT
NSCOUNT
NSCOUNT
NSCOUNT
NSCOUNT
NSCOUNT
NSCOUNT
NSCOUNT
NSCOUNT
ARCOUNT
ARCOUNT
ARCOUNT
ARCOUNT
ARCOUNT
ARCOUNT
ARCOUNT
ARCOUNT
ARCOUNT
ARCOUNT
ARCOUNT
ARCOUNT
ARCOUNT
ARCOUNT
ARCOUNT
ARCOUNT
Slide 10
Slide 10 text
DNS Header
ID
ID
ID
ID
ID
ID
ID
ID
ID
ID
ID
ID
ID
ID
ID
ID
QR Opcode
Opcode
Opcode
Opcode AA TC RD RA Z
Z
Z RCODE
RCODE
RCODE
RCODE
QDCOUNT
QDCOUNT
QDCOUNT
QDCOUNT
QDCOUNT
QDCOUNT
QDCOUNT
QDCOUNT
QDCOUNT
QDCOUNT
QDCOUNT
QDCOUNT
QDCOUNT
QDCOUNT
QDCOUNT
QDCOUNT
ANCOUNT
ANCOUNT
ANCOUNT
ANCOUNT
ANCOUNT
ANCOUNT
ANCOUNT
ANCOUNT
ANCOUNT
ANCOUNT
ANCOUNT
ANCOUNT
ANCOUNT
ANCOUNT
ANCOUNT
ANCOUNT
NSCOUNT
NSCOUNT
NSCOUNT
NSCOUNT
NSCOUNT
NSCOUNT
NSCOUNT
NSCOUNT
NSCOUNT
NSCOUNT
NSCOUNT
NSCOUNT
NSCOUNT
NSCOUNT
NSCOUNT
NSCOUNT
ARCOUNT
ARCOUNT
ARCOUNT
ARCOUNT
ARCOUNT
ARCOUNT
ARCOUNT
ARCOUNT
ARCOUNT
ARCOUNT
ARCOUNT
ARCOUNT
ARCOUNT
ARCOUNT
ARCOUNT
ARCOUNT
Slide 11
Slide 11 text
DNS Header
ID
ID
ID
ID
ID
ID
ID
ID
ID
ID
ID
ID
ID
ID
ID
ID
QR Opcode
Opcode
Opcode
Opcode AA TC RD RA Z
Z
Z RCODE
RCODE
RCODE
RCODE
QDCOUNT
QDCOUNT
QDCOUNT
QDCOUNT
QDCOUNT
QDCOUNT
QDCOUNT
QDCOUNT
QDCOUNT
QDCOUNT
QDCOUNT
QDCOUNT
QDCOUNT
QDCOUNT
QDCOUNT
QDCOUNT
ANCOUNT
ANCOUNT
ANCOUNT
ANCOUNT
ANCOUNT
ANCOUNT
ANCOUNT
ANCOUNT
ANCOUNT
ANCOUNT
ANCOUNT
ANCOUNT
ANCOUNT
ANCOUNT
ANCOUNT
ANCOUNT
NSCOUNT
NSCOUNT
NSCOUNT
NSCOUNT
NSCOUNT
NSCOUNT
NSCOUNT
NSCOUNT
NSCOUNT
NSCOUNT
NSCOUNT
NSCOUNT
NSCOUNT
NSCOUNT
NSCOUNT
NSCOUNT
ARCOUNT
ARCOUNT
ARCOUNT
ARCOUNT
ARCOUNT
ARCOUNT
ARCOUNT
ARCOUNT
ARCOUNT
ARCOUNT
ARCOUNT
ARCOUNT
ARCOUNT
ARCOUNT
ARCOUNT
ARCOUNT
Slide 12
Slide 12 text
DNS Header
ID
ID
ID
ID
ID
ID
ID
ID
ID
ID
ID
ID
ID
ID
ID
ID
QR Opcode
Opcode
Opcode
Opcode AA TC RD RA Z
Z
Z RCODE
RCODE
RCODE
RCODE
QDCOUNT
QDCOUNT
QDCOUNT
QDCOUNT
QDCOUNT
QDCOUNT
QDCOUNT
QDCOUNT
QDCOUNT
QDCOUNT
QDCOUNT
QDCOUNT
QDCOUNT
QDCOUNT
QDCOUNT
QDCOUNT
ANCOUNT
ANCOUNT
ANCOUNT
ANCOUNT
ANCOUNT
ANCOUNT
ANCOUNT
ANCOUNT
ANCOUNT
ANCOUNT
ANCOUNT
ANCOUNT
ANCOUNT
ANCOUNT
ANCOUNT
ANCOUNT
NSCOUNT
NSCOUNT
NSCOUNT
NSCOUNT
NSCOUNT
NSCOUNT
NSCOUNT
NSCOUNT
NSCOUNT
NSCOUNT
NSCOUNT
NSCOUNT
NSCOUNT
NSCOUNT
NSCOUNT
NSCOUNT
ARCOUNT
ARCOUNT
ARCOUNT
ARCOUNT
ARCOUNT
ARCOUNT
ARCOUNT
ARCOUNT
ARCOUNT
ARCOUNT
ARCOUNT
ARCOUNT
ARCOUNT
ARCOUNT
ARCOUNT
ARCOUNT
Slide 13
Slide 13 text
DNS Header
ID
ID
ID
ID
ID
ID
ID
ID
ID
ID
ID
ID
ID
ID
ID
ID
QR Opcode
Opcode
Opcode
Opcode AA TC RD RA Z
Z
Z RCODE
RCODE
RCODE
RCODE
QDCOUNT
QDCOUNT
QDCOUNT
QDCOUNT
QDCOUNT
QDCOUNT
QDCOUNT
QDCOUNT
QDCOUNT
QDCOUNT
QDCOUNT
QDCOUNT
QDCOUNT
QDCOUNT
QDCOUNT
QDCOUNT
ANCOUNT
ANCOUNT
ANCOUNT
ANCOUNT
ANCOUNT
ANCOUNT
ANCOUNT
ANCOUNT
ANCOUNT
ANCOUNT
ANCOUNT
ANCOUNT
ANCOUNT
ANCOUNT
ANCOUNT
ANCOUNT
NSCOUNT
NSCOUNT
NSCOUNT
NSCOUNT
NSCOUNT
NSCOUNT
NSCOUNT
NSCOUNT
NSCOUNT
NSCOUNT
NSCOUNT
NSCOUNT
NSCOUNT
NSCOUNT
NSCOUNT
NSCOUNT
ARCOUNT
ARCOUNT
ARCOUNT
ARCOUNT
ARCOUNT
ARCOUNT
ARCOUNT
ARCOUNT
ARCOUNT
ARCOUNT
ARCOUNT
ARCOUNT
ARCOUNT
ARCOUNT
ARCOUNT
ARCOUNT
DNS Message
0001010000010000
0000000003777777
06676F6F676C6503
636F6D0000010001
Slide 22
Slide 22 text
No content
Slide 23
Slide 23 text
IP and UDP
Slide 24
Slide 24 text
IP and UDP
• Address and port.
• 208.201.224.11:53
• Wrapped in order.
• DNS inside UDP inside IP.
• RFC 791 & 768.
Slide 25
Slide 25 text
UDP Header
Source Port Destination Port
Length Checksum
Data
Data
Slide 26
Slide 26 text
UDP Header
Source Port Destination Port
Length Checksum
Data
Data
Slide 27
Slide 27 text
IP Header
Version
Version
Version
Version IHL
IHL
IHL
IHL Type of Service
Type of Service
Type of Service
Type of Service
Type of Service
Type of Service
Type of Service
Type of Service Total Length
Total Length
Total Length
Total Length
Total Length
Total Length
Total Length
Total Length
Total Length
Total Length
Total Length
Total Length
Total Length
Total Length
Total Length
Total Length
Identification
Identification
Identification
Identification
Identification
Identification
Identification
Identification
Identification
Identification
Identification
Identification
Identification
Identification
Identification
Identification Flags
Flags
Flags Fragment Offset
Fragment Offset
Fragment Offset
Fragment Offset
Fragment Offset
Fragment Offset
Fragment Offset
Fragment Offset
Fragment Offset
Fragment Offset
Fragment Offset
Fragment Offset
Fragment Offset
Time to Live
Time to Live
Time to Live
Time to Live
Time to Live
Time to Live
Time to Live
Time to Live Protocol
Protocol
Protocol
Protocol
Protocol
Protocol
Protocol
Protocol Header Checksum
Header Checksum
Header Checksum
Header Checksum
Header Checksum
Header Checksum
Header Checksum
Header Checksum
Header Checksum
Header Checksum
Header Checksum
Header Checksum
Header Checksum
Header Checksum
Header Checksum
Header Checksum
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Options
Options
Options
Options
Options
Options
Options
Options
Options
Options
Options
Options
Options
Options
Options
Options
Options
Options
Options
Options
Options
Options
Options
Options Padding
Padding
Padding
Padding
Padding
Padding
Padding
Padding
Slide 28
Slide 28 text
IP Header
Version
Version
Version
Version IHL
IHL
IHL
IHL Type of Service
Type of Service
Type of Service
Type of Service
Type of Service
Type of Service
Type of Service
Type of Service Total Length
Total Length
Total Length
Total Length
Total Length
Total Length
Total Length
Total Length
Total Length
Total Length
Total Length
Total Length
Total Length
Total Length
Total Length
Total Length
Identification
Identification
Identification
Identification
Identification
Identification
Identification
Identification
Identification
Identification
Identification
Identification
Identification
Identification
Identification
Identification Flags
Flags
Flags Fragment Offset
Fragment Offset
Fragment Offset
Fragment Offset
Fragment Offset
Fragment Offset
Fragment Offset
Fragment Offset
Fragment Offset
Fragment Offset
Fragment Offset
Fragment Offset
Fragment Offset
Time to Live
Time to Live
Time to Live
Time to Live
Time to Live
Time to Live
Time to Live
Time to Live Protocol
Protocol
Protocol
Protocol
Protocol
Protocol
Protocol
Protocol Header Checksum
Header Checksum
Header Checksum
Header Checksum
Header Checksum
Header Checksum
Header Checksum
Header Checksum
Header Checksum
Header Checksum
Header Checksum
Header Checksum
Header Checksum
Header Checksum
Header Checksum
Header Checksum
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Options
Options
Options
Options
Options
Options
Options
Options
Options
Options
Options
Options
Options
Options
Options
Options
Options
Options
Options
Options
Options
Options
Options
Options Padding
Padding
Padding
Padding
Padding
Padding
Padding
Padding
Slide 29
Slide 29 text
IP Header
Version
Version
Version
Version IHL
IHL
IHL
IHL Type of Service
Type of Service
Type of Service
Type of Service
Type of Service
Type of Service
Type of Service
Type of Service Total Length
Total Length
Total Length
Total Length
Total Length
Total Length
Total Length
Total Length
Total Length
Total Length
Total Length
Total Length
Total Length
Total Length
Total Length
Total Length
Identification
Identification
Identification
Identification
Identification
Identification
Identification
Identification
Identification
Identification
Identification
Identification
Identification
Identification
Identification
Identification Flags
Flags
Flags Fragment Offset
Fragment Offset
Fragment Offset
Fragment Offset
Fragment Offset
Fragment Offset
Fragment Offset
Fragment Offset
Fragment Offset
Fragment Offset
Fragment Offset
Fragment Offset
Fragment Offset
Time to Live
Time to Live
Time to Live
Time to Live
Time to Live
Time to Live
Time to Live
Time to Live Protocol
Protocol
Protocol
Protocol
Protocol
Protocol
Protocol
Protocol Header Checksum
Header Checksum
Header Checksum
Header Checksum
Header Checksum
Header Checksum
Header Checksum
Header Checksum
Header Checksum
Header Checksum
Header Checksum
Header Checksum
Header Checksum
Header Checksum
Header Checksum
Header Checksum
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Options
Options
Options
Options
Options
Options
Options
Options
Options
Options
Options
Options
Options
Options
Options
Options
Options
Options
Options
Options
Options
Options
Options
Options Padding
Padding
Padding
Padding
Padding
Padding
Padding
Padding
Slide 30
Slide 30 text
IP Header
Version
Version
Version
Version IHL
IHL
IHL
IHL Type of Service
Type of Service
Type of Service
Type of Service
Type of Service
Type of Service
Type of Service
Type of Service Total Length
Total Length
Total Length
Total Length
Total Length
Total Length
Total Length
Total Length
Total Length
Total Length
Total Length
Total Length
Total Length
Total Length
Total Length
Total Length
Identification
Identification
Identification
Identification
Identification
Identification
Identification
Identification
Identification
Identification
Identification
Identification
Identification
Identification
Identification
Identification Flags
Flags
Flags Fragment Offset
Fragment Offset
Fragment Offset
Fragment Offset
Fragment Offset
Fragment Offset
Fragment Offset
Fragment Offset
Fragment Offset
Fragment Offset
Fragment Offset
Fragment Offset
Fragment Offset
Time to Live
Time to Live
Time to Live
Time to Live
Time to Live
Time to Live
Time to Live
Time to Live Protocol
Protocol
Protocol
Protocol
Protocol
Protocol
Protocol
Protocol Header Checksum
Header Checksum
Header Checksum
Header Checksum
Header Checksum
Header Checksum
Header Checksum
Header Checksum
Header Checksum
Header Checksum
Header Checksum
Header Checksum
Header Checksum
Header Checksum
Header Checksum
Header Checksum
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Options
Options
Options
Options
Options
Options
Options
Options
Options
Options
Options
Options
Options
Options
Options
Options
Options
Options
Options
Options
Options
Options
Options
Options Padding
Padding
Padding
Padding
Padding
Padding
Padding
Padding
Slide 31
Slide 31 text
IP Header
Version
Version
Version
Version IHL
IHL
IHL
IHL Type of Service
Type of Service
Type of Service
Type of Service
Type of Service
Type of Service
Type of Service
Type of Service Total Length
Total Length
Total Length
Total Length
Total Length
Total Length
Total Length
Total Length
Total Length
Total Length
Total Length
Total Length
Total Length
Total Length
Total Length
Total Length
Identification
Identification
Identification
Identification
Identification
Identification
Identification
Identification
Identification
Identification
Identification
Identification
Identification
Identification
Identification
Identification Flags
Flags
Flags Fragment Offset
Fragment Offset
Fragment Offset
Fragment Offset
Fragment Offset
Fragment Offset
Fragment Offset
Fragment Offset
Fragment Offset
Fragment Offset
Fragment Offset
Fragment Offset
Fragment Offset
Time to Live
Time to Live
Time to Live
Time to Live
Time to Live
Time to Live
Time to Live
Time to Live Protocol
Protocol
Protocol
Protocol
Protocol
Protocol
Protocol
Protocol Header Checksum
Header Checksum
Header Checksum
Header Checksum
Header Checksum
Header Checksum
Header Checksum
Header Checksum
Header Checksum
Header Checksum
Header Checksum
Header Checksum
Header Checksum
Header Checksum
Header Checksum
Header Checksum
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Options
Options
Options
Options
Options
Options
Options
Options
Options
Options
Options
Options
Options
Options
Options
Options
Options
Options
Options
Options
Options
Options
Options
Options Padding
Padding
Padding
Padding
Padding
Padding
Padding
Padding
Slide 32
Slide 32 text
IP Packet
IP Header
UDP Header
DNS Packet
Slide 33
Slide 33 text
Local
Network
Slide 34
Slide 34 text
Local Network
• Computer
• Switch
• Router
• Modem
Ethernet Frame
Preamble
Preamble
Preamble
Preamble
Preamble
Preamble
Preamble
SFD
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Type
Type
Data and padding
Data and padding
Data and padding
Data and padding
Data and padding
Data and padding
Data and padding
FCS
FCS
FCS
FCS
Slide 44
Slide 44 text
Ethernet Frame
Preamble
Preamble
Preamble
Preamble
Preamble
Preamble
Preamble
SFD
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Type
Type
Data and padding
Data and padding
Data and padding
Data and padding
Data and padding
Data and padding
Data and padding
FCS
FCS
FCS
FCS
Slide 45
Slide 45 text
Ethernet Frame
Preamble
Preamble
Preamble
Preamble
Preamble
Preamble
Preamble
SFD
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Type
Type
Data and padding
Data and padding
Data and padding
Data and padding
Data and padding
Data and padding
Data and padding
FCS
FCS
FCS
FCS
Slide 46
Slide 46 text
Ethernet Frame
Preamble
Preamble
Preamble
Preamble
Preamble
Preamble
Preamble
SFD
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Type
Type
Data and padding
Data and padding
Data and padding
Data and padding
Data and padding
Data and padding
Data and padding
FCS
FCS
FCS
FCS
Slide 47
Slide 47 text
1000-BASET
• Electrical signaling.
• IEEE 802.3ab
Slide 48
Slide 48 text
Ethernet Frame
Preamble
Preamble
Preamble
Preamble
Preamble
Preamble
Preamble
SFD
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Destination Address
Source Address
Source Address
Source Address
Source Address
Source Address
Source Address
Type
Type
Data and padding
Data and padding
Data and padding
Data and padding
Data and padding
Data and padding
Data and padding
FCS
FCS
FCS
FCS
Slide 49
Slide 49 text
ARP
Slide 50
Slide 50 text
ARP
• Bridge between IP and Ethernet.
• NDP for IPv6.
• "Who has IP address 1.2.3.4?"
• In an Ethernet frame.
• Broadcast FF:FF:FF:FF:FF:FF.
Receiving
• Decode and match IP.
• Decode UDP port.
• Deliver to process.
Slide 88
Slide 88 text
DNS Server
• Decode question.
• Check local cache.
• Recursion?
Slide 89
Slide 89 text
DNS
Recursion
Slide 90
Slide 90 text
Root Servers
• 13 DNS servers.
• Fixed IP addresses.
• Maps TLDs to DNS servers.
• [a-m].root-servers.net
Slide 91
Slide 91 text
Recursion Round 1
• DNS query to 198.41.0.4
• com. IN NS a.gtld-servers.net
• com. IN NS b.gtld-servers.net.
• a.gtld-servers.net. IN A 192.5.6.30
• b.gtld-servers.net. IN A 192.33.14.30
Slide 92
Slide 92 text
Recursion Round 2
• DNS query to 192.5.6.30
• google.com. IN NS ns1.google.com.
• google.com. IN NS ns2.google.com.
• ns1.google.com. IN A 216.239.32.10
• ns2.google.com. IN A 216.239.34.10
Slide 93
Slide 93 text
Recursion Round 3
• DNS query to 216.239.32.10
• www.google.com.
IN A 216.58.192.36
Slide 94
Slide 94 text
DNS Reply
• DNS message.
• Headers & answer section.
• Sent back over the wires.
• Un-NAT.
TCP Headers
Source Port
Source Port
Source Port
Source Port
Source Port
Source Port
Source Port
Source Port Destination Port
Destination Port
Sequence Number
Sequence Number
Sequence Number
Sequence Number
Sequence Number
Sequence Number
Sequence Number
Sequence Number
Sequence Number
Sequence Number
Acknowledgement Number
Acknowledgement Number
Acknowledgement Number
Acknowledgement Number
Acknowledgement Number
Acknowledgement Number
Acknowledgement Number
Acknowledgement Number
Acknowledgement Number
Acknowledgement Number
Data
Offset
Reserved U
R
G
A
C
K
P
S
H
R
S
T
S
Y
N
F
I
N
Window
Window
Checksum
Checksum
Checksum
Checksum
Checksum
Checksum
Checksum
Checksum Urgent Pointer
Urgent Pointer
Options
Options
Options
Options
Options
Options
Options
Options
Options Padding
Slide 98
Slide 98 text
TCP Headers
Source Port
Source Port
Source Port
Source Port
Source Port
Source Port
Source Port
Source Port Destination Port
Destination Port
Sequence Number
Sequence Number
Sequence Number
Sequence Number
Sequence Number
Sequence Number
Sequence Number
Sequence Number
Sequence Number
Sequence Number
Acknowledgement Number
Acknowledgement Number
Acknowledgement Number
Acknowledgement Number
Acknowledgement Number
Acknowledgement Number
Acknowledgement Number
Acknowledgement Number
Acknowledgement Number
Acknowledgement Number
Data
Offset
Reserved U
R
G
A
C
K
P
S
H
R
S
T
S
Y
N
F
I
N
Window
Window
Checksum
Checksum
Checksum
Checksum
Checksum
Checksum
Checksum
Checksum Urgent Pointer
Urgent Pointer
Options
Options
Options
Options
Options
Options
Options
Options
Options Padding
Slide 99
Slide 99 text
TCP Headers
Source Port
Source Port
Source Port
Source Port
Source Port
Source Port
Source Port
Source Port Destination Port
Destination Port
Sequence Number
Sequence Number
Sequence Number
Sequence Number
Sequence Number
Sequence Number
Sequence Number
Sequence Number
Sequence Number
Sequence Number
Acknowledgement Number
Acknowledgement Number
Acknowledgement Number
Acknowledgement Number
Acknowledgement Number
Acknowledgement Number
Acknowledgement Number
Acknowledgement Number
Acknowledgement Number
Acknowledgement Number
Data
Offset
Reserved U
R
G
A
C
K
P
S
H
R
S
T
S
Y
N
F
I
N
Window
Window
Checksum
Checksum
Checksum
Checksum
Checksum
Checksum
Checksum
Checksum Urgent Pointer
Urgent Pointer
Options
Options
Options
Options
Options
Options
Options
Options
Options Padding
Slide 100
Slide 100 text
TCP Headers
Source Port
Source Port
Source Port
Source Port
Source Port
Source Port
Source Port
Source Port Destination Port
Destination Port
Sequence Number
Sequence Number
Sequence Number
Sequence Number
Sequence Number
Sequence Number
Sequence Number
Sequence Number
Sequence Number
Sequence Number
Acknowledgement Number
Acknowledgement Number
Acknowledgement Number
Acknowledgement Number
Acknowledgement Number
Acknowledgement Number
Acknowledgement Number
Acknowledgement Number
Acknowledgement Number
Acknowledgement Number
Data
Offset
Reserved U
R
G
A
C
K
P
S
H
R
S
T
S
Y
N
F
I
N
Window
Window
Checksum
Checksum
Checksum
Checksum
Checksum
Checksum
Checksum
Checksum Urgent Pointer
Urgent Pointer
Options
Options
Options
Options
Options
Options
Options
Options
Options Padding
Slide 101
Slide 101 text
TCP Headers
Source Port
Source Port
Source Port
Source Port
Source Port
Source Port
Source Port
Source Port Destination Port
Destination Port
Sequence Number
Sequence Number
Sequence Number
Sequence Number
Sequence Number
Sequence Number
Sequence Number
Sequence Number
Sequence Number
Sequence Number
Acknowledgement Number
Acknowledgement Number
Acknowledgement Number
Acknowledgement Number
Acknowledgement Number
Acknowledgement Number
Acknowledgement Number
Acknowledgement Number
Acknowledgement Number
Acknowledgement Number
Data
Offset
Reserved U
R
G
A
C
K
P
S
H
R
S
T
S
Y
N
F
I
N
Window
Window
Checksum
Checksum
Checksum
Checksum
Checksum
Checksum
Checksum
Checksum Urgent Pointer
Urgent Pointer
Options
Options
Options
Options
Options
Options
Options
Options
Options Padding