DEV Community

Cristian Sifuentes
Cristian Sifuentes

Posted on

IP Addresses & the Internet Protocol — From Numbers to Global

IP Addresses & the Internet Protocol — From Numbers to Global Connectivity

IP Addresses & the Internet Protocol — From Numbers to Global Connectivity

Summary

Understanding IP addresses is fundamental for anyone interested in technology and programming. These addresses act as a digital ID card for every device connected to a network, enabling communication across the internet. As the internet evolved, so did its addressing systems—moving from a limited model to one with virtually unlimited capacity.

This article builds a clear mental model of how IP addresses work, why IPv6 exists, and why this knowledge still matters for modern software engineers.


What Are IP Addresses and How Do They Work?

An IP (Internet Protocol) address is a numerical identifier used to locate a device on a network.

Just like your home has a physical address, every computer, phone, or server connected to the internet or a local network has an IP address.

IPv4 Example

128.100.20.5
Enter fullscreen mode Exit fullscreen mode

An IPv4 address:

  • Contains four groups of numbers
  • Each group ranges from 0 to 255
  • Each group represents one byte (8 bits)

Why This Specific Format?

IPv4 is deeply tied to binary computation:

  • 1 byte = 8 bits
  • 8 bits can represent 256 values (0–255)
  • IPv4 uses 4 bytes (32 bits total)

This allows:

2³² ≈ 4.3 billion unique addresses
Enter fullscreen mode Exit fullscreen mode

When IPv4 was designed by DARPA in the early days of the internet, this number seemed practically infinite.

Spoiler: it wasn’t.


The IPv4 Address Exhaustion Problem

By the late 1990s, it became clear that IPv4 addresses would run out.

Every connected device needs an IP:

  • Servers
  • Laptops
  • Smartphones
  • Smart TVs
  • IoT devices

The Solution: IPv6

IPv6 was officially ratified in 2017.

Key differences:

  • Uses 128 bits instead of 32
  • Represented using hexadecimal
  • Written in 8 groups of 4 hex digits

Example:

2001:0db8:85a3:0000:0000:8a2e:0370:7334
Enter fullscreen mode Exit fullscreen mode

Compressed form:

2001:0db8:85a3::8a2e:0370:7334
Enter fullscreen mode Exit fullscreen mode

IPv6 provides more addresses than atoms on Earth’s surface.

Yes—literally.


Who Manages IP Addresses?

IP address allocation is managed globally by:

IANA — Internet Assigned Numbers Authority

IANA distributes address ranges to:

  • Regional registries
  • Internet Service Providers (ISPs)
  • Large organizations

Public vs. Private IP Addresses

Public IP Addresses

  • Visible on the internet
  • Globally unique
  • Assigned by ISPs or purchased

Private IP Addresses

  • Used inside local networks (home, office)
  • Can be reused across different networks
  • Invisible to the public internet

Examples of private ranges:

  • 192.168.x.x
  • 10.x.x.x
  • 172.16.x.x – 172.31.x.x

NAT — The IPv4 Lifesaver

NAT (Network Address Translation) allows:

  • Many private devices
  • To share one public IP address

Your router:

  • Translates private IPs → public IP
  • Tracks outgoing requests
  • Routes responses back correctly

Without NAT, IPv4 would have died decades ago.


The Special Address Every Developer Knows

127.0.0.1
Enter fullscreen mode Exit fullscreen mode

Also called localhost.

It always points to your own machine, regardless of where you are.

Used for:

  • Local development
  • API testing
  • Running servers without internet access

If you’ve ever typed:

http://localhost:3000
Enter fullscreen mode Exit fullscreen mode

You were using this address.


Why IP Knowledge Still Matters

Even though modern apps hide IPs behind domain names, developers still need to understand them for:

  • Debugging distributed systems
  • Security (firewalls, allowlists, rate limits)
  • Server configuration
  • Performance tuning
  • Cloud architecture

Abstractions don’t remove responsibility—they just move it.


Final Thoughts

IP addresses are the foundation of all networked systems.

Once you understand:

  • IPv4 vs IPv6
  • Public vs private IPs
  • NAT
  • Localhost

You stop seeing networking as magic—and start seeing it as a well‑designed system of trade‑offs.

Have you ever configured a server, router, or firewall rule?
What part of IP networking was unclear until now?

Let’s keep building strong software engineering fundamentals.

✍️ Written for developers who want to understand the internet—not just use it.

Top comments (0)