Visual RFC.
ALL RFCs / RFC 791
Read the RFC ↗

RFC 791 / START HERE

IPv4, before the details

IPv4: Internet Protocol version 4

IPv4 gives packets source and destination addresses so routers can carry them between networks. It does not promise that every packet arrives or arrives in order.

The idea in one picture

  1. A device addresses a packet

  2. Routers forward it

  3. The destination may receive it

A simplified picture of the idea; the chapters explain the actual mechanisms.

Why it exists

Different networks need a common packet format and addressing scheme to participate in the Internet.

A familiar example

Your router forwards a packet toward a server using the destination's IPv4 address.

Helpful background

You can start here without reading another RFC. The guide introduces its essential concepts as you go.

What you’ll learn next

Begin with chapter one, or choose a topic.

  1. Route a datagram across networksIPv4 provides best-effort datagram delivery through interconnected networks.
  2. Read the IPv4 headerVersion, header length, length, lifetime, protocol, addresses, and a header checksum describe the packet.
  3. Limit a packet’s lifetimeTime to Live limits how long a datagram may continue circulating.
  4. Fragment for a smaller linkIPv4 can split a datagram when a next link cannot carry its full size, unless fragmentation is prohibited.
  5. Reassemble at the destinationFragment offsets place data into a reassembly buffer at the destination.
Start with chapter one →
EXPLORE THIS PROTOCOL

IP versions

IPv4 and IPv6 coexist. IPv6 is a different protocol version, not an edited copy of the IPv4 RFC.

This introduction explains RFC 791 (1981). Read the original RFC ↗