- Published on
DEVS HATE NETWORKING (But You Need It!)
- 2 mins read
Back in my bachelor’s degree, almost every developer I knew avoided networking. Can you blame us? Terms like Class A/B/C/D/E
, Ethernet
, BGP
, network prefix
, subnet mask
sound more confusing than helpful.
If you’re a developer, here are five core networking concepts that will take your career to the next level:
1. CIDR Blocks
What it is: A notation that defines IP ranges using a prefix (e.g., /24).
Examples
:
- 1.2.3.4/32 = just 1.2.3.4 (1 IP)
- 10.0.0.0/24 = 10.0.0.1 → 10.0.0.255 (254 useful IPs)
- 10.0.0.0/16 = 10.0.0.1 → 10.0.255.255 (~65,534 IPs)
- 10.0.0.0/8 = 10.0.0.1 → 10.255.255.255 (~16 million IPs)
2. Private IP vs. Public IP
Public IP: Routable on the internet — anyone can reach it (unless blocked by a firewall).
Private IP: Only accessible within a local network.
Reserved Ranges
:
- 10.0.0.0/8
- 172.16.0.0/12
- 192.168.0.0/16
Other Special Ranges
:
- 127.0.0.0/8 = Localhost
- 169.254.0.0/16 = Link-local (APIPA)
- 100.64.0.0/10 = Carrier-grade NAT (mobile operator, VPN)
Understanding which IP range to use prevents nasty routing and security surprises.
3. DNS (Domain Name System)
Think of DNS
as the internet’s phonebook — translating human-friendly domain names into IP addresses. Key record types you should know:
- A = maps a domain to an IPv4 address
- CNAME = alias to another domain name
- MX = mail server record
- TXT = arbitrary text (e.g., SPF, DKIM, validation)
If you can’t resolve a hostname, most things in your stack simply won’t work.
4. TCP/IP Model Essentials
TCP (Transmission Control Protocol)
: A reliable, connection-oriented transport protocol. Used for most web traffic (HTTP, HTTPS, database connections).ICMP (Internet Control Message Protocol)
: Used by tools like ping or traceroute to test connectivity and path.HTTP/HTTPS
: Application-layer protocols for web APIs, websites, and microservices.
Knowing when to use TCP vs. UDP vs. ICMP helps you debug connectivity issues quickly.
5. Load Balancers
Purpose
: Distribute incoming traffic across multiple servers or containers to ensure reliability and scalability.
Common Example
: Nginx (can act as a reverse proxy and load balancer).
Cloud-Native Alternatives
: AWS Elastic Load Balancer (ALB/NLB), Google Cloud Load Balancer, etc.
A solid grasp of load balancing means you can design resilient, high-traffic architectures instead of firefighting bottlenecks.