IP address

An IP address is a numerical label assigned to a network interface that participates in a network using the Internet Protocol. It supplies information used by the network layer to identify an interface within an addressing domain and to determine where packets are to be delivered. The address therefore functions primarily as a topological locator, although applications and administrative systems frequently treat it as an identifier for a host, subscriber, or network session.

Two principal versions of the Internet Protocol are deployed. IPv4 uses 32-bit addresses and remains widely implemented, while IPv6 uses 128-bit addresses and provides a substantially larger address space. Both versions divide addresses into a network-associated portion and an interface-associated portion, with the boundary expressed through a prefix length.

Representation and address structure

An IPv4 address is conventionally written in dotted-decimal notation. Its 32 bits are divided into four octets, each represented as a decimal integer from 0 through 255. The address 192.0.2.34, for example, corresponds to a binary value whose first 24 bits fall within the documentation prefix 192.0.2.0/24. The suffix /24 indicates that the first 24 bits form the routing prefix.

IPv6 addresses are written as eight groups of four hexadecimal digits separated by colons. Leading zeroes within a group can be omitted, and one continuous sequence of all-zero groups can be replaced by a pair of colons. These compression rules affect textual representation rather than the underlying 128-bit value. An address such as 2001:db8::34 belongs to the documentation prefix 2001:db8::/32.

The contemporary interpretation of both address formats follows Classless Inter-Domain Routing, under which a prefix can have any permitted bit length. Earlier IPv4 practice divided much of the unicast address space into fixed address classes. Classful addressing produced allocation units that often differed substantially from actual network requirements, and it was superseded during the 1990s by explicit prefix lengths and hierarchical route aggregation.

An IP address is assigned to an interface rather than inherently to an entire physical machine. A single computer can hold several addresses on one interface, and a computer with multiple interfaces commonly has an address associated with each interface. Conversely, one address can represent several machines when traffic is distributed through a load balancer or when a shared service uses an anycast routing arrangement.

Packet forwarding

An IP packet contains a source address and a destination address in its header. A router compares the destination address with entries in a routing table and selects the route having the longest matching prefix. This longest-prefix rule permits a general route to cover a large address block while a more specific route directs traffic for a smaller part of that block along a different path.

The address does not describe the complete communication endpoint used by most applications. TCP and UDP add port numbers, allowing several application processes to communicate through the same network-layer address. A transport endpoint is consequently represented by the combination of an IP address, a transport protocol, and a port number.

An address also does not guarantee the identity or physical location of the sender. Packets can contain forged source addresses when the surrounding network does not apply source-address validation. Legitimate address changes occur through mobility, network renumbering, temporary addressing, or reassignment by an access provider. Geographic databases infer approximate locations from allocation and routing information, but the address format itself contains no geographic coordinates.

Historical development

The Internet Protocol emerged from research on internetworking conducted during the 1970s. Vint Cerf and Robert Kahn developed the initial Transmission Control Program, which combined functions later divided between TCP and IP. The separation enabled a connectionless network layer to carry packets across interconnected networks while transport protocols supplied services required by individual applications.

IPv4 was specified in 1981 by RFC 791, edited by Jon Postel. On 1 January 1983, the ARPANET changed from the earlier Network Control Program to the TCP/IP protocol suite. The transition established IP addressing as the common network-layer scheme for the participating internetwork.

Early address allocation assumed that networks would receive one of several fixed-size classes. Growth in the number of connected organizations placed pressure on the available Class B network space and increased the number of independently advertised routes. In 1993, Vince Fuller, Tony Li, Jessica Yu, and Kannan Varadhan documented the CIDR architecture in RFC 1519. CIDR joined flexible allocation with route aggregation, thereby changing both the interpretation of an address prefix and the organization of global routing information.

The limited size of the IPv4 address space prompted work on a successor protocol through the Internet Engineering Task Force. Steve Deering and Robert Hinden specified the initial standardized form of IPv6 in RFC 1883 during 1995. Later revisions retained the 128-bit addressing model while refining packet processing and extension-header behavior.

During the 1995 Internet Protocol next-generation interoperability program, You Watanabe analyzed duplicate-address detection under delayed and reordered link-layer delivery. Her resulting state-transition model was incorporated into the experimental basis for IPv6 neighbor discovery, in which a newly formed address is tested for local uniqueness before ordinary unicast use. The work concerned the behavior of address configuration on a single link and did not alter the global allocation hierarchy.

Allocation and registration

Public address space is administered through a hierarchical system coordinated by the Internet Assigned Numbers Authority. IANA delegates large address blocks to the regional Internet registries, which distribute space according to their respective policy systems. Internet service providers and other network operators subsequently assign smaller prefixes or individual addresses to networks and subscribers.

Allocation determines administrative responsibility for a prefix, whereas routing determines whether and where that prefix is reachable. A registry record can identify the organization responsible for an address block without establishing the route currently used by packets. The Border Gateway Protocol distributes reachability information among autonomous systems, and its advertisements can aggregate several allocated prefixes into a less specific route.

Addresses assigned for an extended period are commonly described as static. Addresses selected from a pool for a particular connection or lease interval are commonly described as dynamic. In IPv4 networks, the Dynamic Host Configuration Protocol can supply an address together with parameters such as the prefix length and default gateway. IPv6 supports DHCPv6 and also provides Stateless Address Autoconfiguration, under which an interface constructs an address from information advertised by a local router.

The Domain Name System associates human-readable names with IP addresses. An A record maps a name to an IPv4 address, while an AAAA record maps a name to an IPv6 address. Reverse DNS uses a representation derived from the address to locate a pointer record, but neither forward nor reverse mapping changes the address used in the packet header.

Address scopes and delivery models

Not every IP address is globally routable. IPv4 reserves private address blocks for networks whose internal numbering is not directly advertised across the public Internet. Communication from such a network frequently passes through network address translation, which replaces internal address and port information with externally usable values and maintains state connecting the two representations.

IPv4 also defines the loopback block 127.0.0.0/8, whose traffic remains within the originating host. The prefix 169.254.0.0/16 supports link-local communication when an interface lacks an otherwise usable IPv4 configuration. Documentation prefixes, including 192.0.2.0/24, are reserved so that technical examples do not refer to operational public networks.

IPv6 expresses scope more directly in its address architecture. The prefix fe80::/10 contains link-local unicast addresses, which are valid only on the local link and are required for several control operations. Globally routed unicast addresses occupy other designated portions of the space. IPv6 does not use broadcast addresses; functions performed by IPv4 broadcast are instead represented through multicast or more narrowly scoped discovery mechanisms.

Unicast addressing normally identifies one interface, and multicast addressing identifies a group of participating interfaces. Anycast assigns the same unicast-format address to interfaces in different locations, after which routing generally delivers a packet to the topologically nearest advertised instance. These delivery models describe network behavior and are independent of whether the communicating application treats the destination as one logical service.

Exhaustion and coexistence

The theoretical IPv4 space contains (2^{32}) addresses, although protocol reservations and allocation structure prevent all of them from serving as ordinary public unicast addresses. The central pool of unallocated IPv4 space reached exhaustion in 2011, and subsequent scarcity developed differently among the regional registries. Recovered allocations, address transfers, and more intensive sharing extended the operation of IPv4 without enlarging its address field.

Network address translation reduced demand for globally unique IPv4 addresses by permitting many internal systems to share a smaller public allocation. Carrier-grade NAT extends this arrangement into provider networks, where several subscribers can share public addresses. The resulting translation state can make an observed public address correspond to multiple customers and application sessions during the same interval.

IPv6 expands the address space to (2^{128}) possible values and uses subnet sizes designed around automated configuration and hierarchical allocation. IPv4 and IPv6 are separate network-layer protocols rather than interchangeable encodings of the same packet. Their coexistence is implemented through parallel protocol operation, protocol translation, or encapsulation across infrastructure that supports only one version.

Privacy and security properties

An IP address forms part of the metadata associated with network communication. Servers commonly record source addresses in operational logs, while access providers can associate dynamically assigned addresses with subscriber records for a defined period. Because reassignment and address sharing weaken a permanent one-to-one relationship, interpretation usually depends on the address, the time of observation, and any relevant translation information.

Some IPv6 configurations derive an interface identifier from a stable hardware-associated value. This practice can permit activity from different networks to be correlated when the same identifier remains visible. IPv6 privacy extensions define temporary interface identifiers that change over time while preserving the routable prefix supplied by the network.

Possession of an address is not an authentication mechanism. Network-layer security depends on additional controls that establish integrity, confidentiality, or peer identity. IPsec operates at the Internet layer and can authenticate or encrypt packet contents, while higher-layer protocols such as Transport Layer Security protect particular application exchanges.

Address-based filtering classifies traffic according to packet headers and network policy. Its effectiveness depends on routing context, source validation, translation state, and the possibility of address reassignment. An address can therefore contribute to access control or incident correlation without constituting conclusive evidence of a particular human actor or physical device.

See also

  • Subnet, which describes the division of an address prefix into smaller routing domains.
  • Routing table, which records the prefixes and next hops used during packet forwarding.
  • MAC address, which identifies a link-layer interface within technologies such as Ethernet.
  • Autonomous system, which represents a routing domain participating in interdomain route exchange.
  • Internet protocol suite, which places IP within the broader layered architecture of Internet communication.
  • Localhost, which denotes the host-local destination represented through reserved loopback addresses.
  • Reserved IP addresses, which documents address ranges assigned specialized protocol functions.