DevOps and cloud

Stage 2 of 7 · 8 lessons · ~7 weeks

Networking for engineers

Most production incidents that look mysterious are networking problems. Learn how IP, DNS, TCP, TLS and HTTP fit together and how to run a reverse proxy in front of an app.

Start: IP addresses, subnets and CIDR

Lessons· one lesson for each topic, in this order

  1. 1IP addresses, subnets and CIDR
  2. 2TCP, UDP and ports
  3. 3DNS records and resolution
  4. 4HTTP requests and responses
  5. 5TLS and certificates
  6. 6Firewalls and exposing only what you need
  7. 7Nginx as reverse proxy and load balancer
  8. 8Debugging with dig, curl, ss and traceroute

Start with

Practise

  • Answer its networking questions before reading the answers to find your gaps

Keep handy

  • Official guide to serving files and proxying to an app, the base of every config

  • The HTTP guides on headers, caching and status codes, for debugging proxies

Also worth your time

Before moving on: Point a domain at a cloud VM, serve an app behind Nginx with a free TLS certificate, restrict the firewall to ports 22, 80 and 443, and debug a deliberately broken DNS record with dig.

Tauseef's advice
Get good with dig, curl -v, ss and traceroute, because they answer most networking questions faster than any diagram. Subnetting and CIDR feel dry, but you will need them the first day you build a VPC.

Mark this stage as not done?