DEV Community

Sreekanth Kuruba
Sreekanth Kuruba

Posted on

Linux Networking Basics for Beginners

Most Linux “server down” problems are not actually system failures.

They are network issues.

👉 The system is running fine
👉 But it cannot talk to the outside world

That’s why networking is one of the most critical skills in Linux, DevOps, and cloud environments.

Let’s simplify it.


Basic Networking Concepts (Must Know First)

What is an IP Address?

An IP address is a unique address assigned to a device in a network.

Example:

192.168.1.10
Enter fullscreen mode Exit fullscreen mode

👉 Used for communication between systems.


What is localhost (127.0.0.1)?

localhost refers to your own computer.

127.0.0.1
Enter fullscreen mode Exit fullscreen mode

👉 This means “your own computer”

Used for:

  • testing apps
  • local development
  • debugging services

What is DNS?

DNS (Domain Name System) converts domain names into IP addresses.

Example:

google.com → 142.x.x.x
Enter fullscreen mode Exit fullscreen mode

👉 Without DNS, we would need to remember IPs manually.


What is a Port?

Ports are like “doors” for services.

Ports are communication endpoints used by applications.

Examples:

  • Port 80 → HTTP
  • Port 443 → HTTPS
  • Port 22 → SSH

👉 One server can run multiple services using different ports.


1. Check Internet Connectivity with ping

ping google.com
Enter fullscreen mode Exit fullscreen mode

Limit requests:

ping -c 4 google.com
Enter fullscreen mode Exit fullscreen mode

👉 First command used in troubleshooting.

Checks:

is host reachable?
is network working?


2. Test Web Requests with curl

curl google.com
Enter fullscreen mode Exit fullscreen mode

Headers only:

curl -I google.com   # Show only HTTP headers
Enter fullscreen mode Exit fullscreen mode

Verbose mode:

curl -v google.com   # Verbose (detailed output)
Enter fullscreen mode Exit fullscreen mode

Used for:

API testing
checking web services
debugging HTTP issues


3. Check DNS Resolution

nslookup google.com

# More detailed DNS lookup
dig google.com
Enter fullscreen mode Exit fullscreen mode

👉 If DNS fails:

website won’t open
even if internet is working


4. Check Your IP Address

ip a          # full network interface details
hostname -I   # Show only IP addresses
Enter fullscreen mode Exit fullscreen mode

👉 Shows your system’s network identity


5. Check Routing path

ip route
ip route | grep default   # Show default gateway
Enter fullscreen mode Exit fullscreen mode

👉 Shows how traffic leaves your system


6. Check Open Ports

ss -tuln               # Show listening ports
ss -tuln | grep :80    # Check specific port
Enter fullscreen mode Exit fullscreen mode

Shows which services are listening on your system.

Modern replacement for netstat.


7. Trace Network Path with traceroute

traceroute google.com
Enter fullscreen mode Exit fullscreen mode

Install if needed:

sudo apt install traceroute    # Ubuntu/Debian
sudo dnf install traceroute    # Fedora/RHEL
Enter fullscreen mode Exit fullscreen mode

👉 Shows where delay or failure happens in network path


8. Enhanced Traceroute with mtr

mtr is a powerful combination of ping and traceroute. It continuously monitors the connection.

mtr google.com
Enter fullscreen mode Exit fullscreen mode

Install if needed:

sudo apt install mtr
Enter fullscreen mode Exit fullscreen mode

👉 Combines:

ping
traceroute

Real-time network diagnostics tool


Simple Troubleshooting Flow (VERY IMPORTANT)

  1. ping 8.8.8.8 → check internet
  2. ping google.com → check DNS
  3. ip a → check IP
  4. ip route → check routing
  5. curl -I site → check HTTP
  6. traceroute / mtr → find failure point

👉 This is real DevOps incident workflow


⚠️ Common Beginner Mistakes

  • assuming internet is down (when DNS is broken)
  • not checking IP address first
  • using old tools (ifconfig, netstat)
  • routing checks

Simple Mental Model

Think of networking like delivery:

IP → house address
DNS → contact name → address lookup
Port → door number
Routing → delivery path
ping → “are you there?”


Summary

You learned:

IP address basics
localhost (127.0.0.1)
DNS resolution
ports (80, 443, 22)
ping → connectivity
curl → web/API testing
nslookup, dig → DNS tools
ip a, ip route → network config
ss → open ports
traceroute, mtr → path debugging


Why This Matters

Networking is the backbone of:

cloud systems
DevOps pipelines
APIs
production servers

👉 If networking breaks, everything breaks


Next Post:
Linux Logs Explained Simply,(journalctl, /var/log)


Question for You

Have you ever faced a situation where:

internet was working
but website still didn’t load?

That’s usually DNS — I’ll show debugging in Part 8.

Top comments (0)