Skip to main content

Command Palette

Search for a command to run...

Week 1 – Networking Fundamentals for DevOps (What Finally Made Sense)

Updated
4 min read
Week 1 – Networking Fundamentals for DevOps (What Finally Made Sense)

TL;DR

  • Networking felt overwhelming at first like OSI, ports, DNS, traceroute… too much flying around

  • EC2 + Security Groups taught me how traffic actually flows

  • Fixed beginner issues like SSH key permissions, blocked ports, missing tools

  • Ended the week with a clear idea of how machines talk

Why I Started With Networking

Before touching CI/CD, Docker, Kubernetes, or anything flashy, I wanted to understand the basics.
If the network layer fails, nothing else works not APIs, not deployments, not SSH, not monitoring.

So I chose to start with the fundamentals instead of blindly copying commands.


📌 What Confused Me (and how I got unstuck)

OSI & TCP-IP Model

I didn’t get why there were so many layers. It felt unnecessary.

What helped:

  • Seeing real tools mapped to layers

  • Understanding that each layer has a role in how data travels

  • Realizing the layers aren’t something to memorize ,they’re a mental model

https://www.rtautomation.com/wp-content/uploads/2023/01/osi-tcpip-diagram.jpg


Inbound vs Outbound Traffic

I mixed these up all the time.

What finally made it click:

  • Inbound = who can reach my EC2

  • Outbound = where my EC2 is allowed to go

Once I saw them as “incoming door” vs “outgoing door,” Security Groups became simple.


SSH Key Annoyances

Small issues but extremely irritating at first:

  • PEM file must have strict permissions
chmod 400 key.pem
  • Wrong file location → SSH breaks

  • SSH just refuses if permissions are too open

  • Port 22 must be open in the SECURITY GROUPS


DNS, Dig & Traceroute

DNS felt confusing until I understood that it’s literally the internet’s phonebook.

Traceroute also looked chaotic until I focused on:

  • The hop where latency spikes

  • The hop where timeout begins

After that, interpreting it became easier.


📌 What I Did This Week

1. OSI & TCP/IP

  • Learned each layer’s role

  • Connected tools (ping/curl/dig) to specific layers

  • Stopped memorizing and started understanding

2. Protocols & Ports

  • Understood why DevOps cares about specific ports

  • Covered: SSH 22, HTTP 80, HTTPS 443, DNS 53, DB ports, Redis 6379

  • Looked at ports used by tools like Jenkins, Kubernetes API, Prometheus, Docker registry

3. Launched EC2

  • Picked Ubuntu 22.04

  • t2.micro free tier

  • Enabled public IP

  • Created and secured PEM key

4. Configured Security Groups

  • Opened port 22 for my IP

  • Allowed HTTP/HTTPS

  • Understood inbound/outbound behaviour

  • Saw how 1 wrong SECURITY GROUP rule breaks everything

5. Networking Commands

Used practical tools instead of just reading theory:

  • ping → basic connectivity

  • traceroute → see the path

  • ss/netstat → check listening ports

  • curl → test APIs/services

  • dig / nslookup → DNS behaviour


📌 Small Beginner Issues That Took Time

These are the tiny mistakes that slow down beginners the most:

  • SSH wouldn’t connect → permissions wrong or port 22 closed

  • netstat missing → needed sudo apt install net-tools

  • curl failing while ping worked → DNS or HTTP issue, not connectivity

  • dig giving different results due to caching

  • For some commands, tools simply weren’t installed


📌 Commands That Helped Me Understand Stuff

These were the most useful this week:

# SSH login
ssh -i key.pem ubuntu@<ip>

# DNS record
dig +short example.com

# Port check
ss -tuln

# Check API or web server
curl -I http://<server-ip>

# Route packets take
traceroute google.com

They’re simple, but they exposed what was actually happening under the hood.


📌 EC2 + Security Groups (My Biggest Learning)

Launch screen is easy.
The real learning:

  • A perfectly healthy EC2 instance feels “dead” if SECURITY GROUPS rules block it

  • SSH depends on two things: your key + SECURITY GROUPS

  • HTTP/HTTPS need explicit opening

  • Inbound/outbound rules matter more than I expected

  • Understanding SECURITY GROUPS makes cloud debugging so much faster


📌 What I Learned At The End

  • Networking is not scary it is just logical once you break it down

  • Small mistakes (like key permissions or blocked ports) cause the biggest headaches

  • Understanding DNS and SECURITY GROUPS prevents most “why is this not working?” moments

  • Tools like curl, dig, traceroute, and ss give real visibility

  • Knowing fundamentals early makes everything else (Docker, Kubernetes, AWS networking) easier later


📌 GitHub (All My Week 1 Tasks)

https://github.com/Harish1685/90DaysOfDevOps.git


If you learned networking recently, I’d like to hear what confused you the most. Always open to suggestions.