Trace exactly what happens when you type a URL and press Enter — every step from DNS lookup to rendered HTML.
Learn the core concepts of How the Internet Works and apply them in practical exercises.
Most developers use the internet every day and can't explain how it works. This matters because understanding the journey helps you debug connection failures, DNS issues, and slow page loads.
1. You type: https://github.com 2. DNS lookup: 'What IP is github.com?' → Resolver queries root → TLD → authoritative DNS → Returns: 140.82.112.3 3. TCP handshake to 140.82.112.3:443 → SYN → SYN-ACK → ACK 4. TLS handshake (HTTPS) → Exchange certificates → Agree on encryption 5. HTTP GET / request sent 6. Server processes request 7. HTTP 200 response with HTML → Browser parses HTML → Fetches CSS, JS, images → Renders the page
# See DNS resolution dig github.com nslookup github.com # Trace the full DNS path dig +trace github.com # Check what DNS server you're using cat /etc/resolv.conf nscurl -s https://dns.google/resolve?name=github.com | python3 -m json.tool
dig github.com. If it returns an IP, DNS is working. Then try curl -v https://github.com to test the connection.Before moving on, confirm understanding of these key concepts: