IP address

From Anarchopedia
Jump to: navigation, search

An IP address (Internet Protocol address) is a unique number, a kind of telephone number, used by machines (usually computers) to refer to each other when sending information through the Internet. This allows machines passing the information onwards on behalf of the sender to know where to send it next, and for the machine receiving the information to know that it is the intended destination.

An example IP address is 207.142.131.236. Converting to such numbers from the more human-readable form of domain addresses, such as www.wikipedia.org, is done via the Domain Name System. The process of conversion is known as resolution of the domain name.

More detail

The Internet Protocol (IP) knows each logical host interface by a number, the so-called IP address. On any given network, this number must be unique among all the host interfaces that communicate through this network. Users of the Internet are sometimes given a host name in addition to their numerical IP address by their Internet service provider.

The IP addresses of users browsing the world wide web are used to enable communications with the server of the web site. Also, it is usually in the header of email messages one sends. In fact, for all programs that utilize the TCP/IP protocol, the sender IP address and destination IP address are required in order to establish communications and send data.

Depending on one's Internet connection the IP address can be the same every time one connects (called a static IP address), or different every time on connects, (called a dynamic IP address). In order to use a dynamic IP address, there must exist a server which can provide the address. IP addresses are usually given out through a service called DHCP or the Dynamic Host Configuration Protocol.

Internet addresses are needed not only for unique enumeration of hosted interfaces, but also for routing purposes, therefore a high fraction of them are always unused or reserved.

IP version 4

Addressing

In version 4 of the Internet protocol (IPv4), the current standard protocol for the Internet, IP addresses consist of 32 bits, which makes for 4,294,967,296 (over 4 billion) unique host interface addresses in theory. In practice the address space is sparsely populated due to routing issues, so that there is some pressure to extend the address range via IP version 6 (see below).

IPv4 addresses are commonly expressed as a dotted quad, four octets (8 bits) separated by periods. The host known as www.wikipedia.org currently has the number 3482223596, written as 207.142.131.236 in base-256: 3482223596 equals 207×2563 + 142×2562 + 131×2561 + 236×2560. (Resolving the name "www.wikipedia.org" to its associated number is handled by Domain Name System servers.)

Historically, IPv4 addresses originally had only two parts. A later change increased that to three parts: the network part, the subnetwork part, and the host part, in that order. However, with the advent of classless inter-domain routing (CIDR), this is no longer true, and the address can have an arbitrary number of levels of hierarchy. (Technically, this was already true any time after the advent of subnets, since a site could elect to have more than one level of subnetting inside a network number.)

IP version 5

What would be considered as IPv5 existed only as an experimental non-IP real time streaming protocol called ST2 described in RFC 1819. This protocol was abandoned in favour of RSVP.

IP version 6

In IPv6, the new (but not yet widely deployed) standard protocol for the Internet, addresses are 128 bits wide, which, even with generous assignment of netblocks, should suffice for the foreseeable future. In theory, there would be exactly 2128, or about 3.403 × 1038 unique host interface addresses. If the earth were made entirely out of 1 cubic millimetre grains of sand, then you could give a unique address to each grain in 300 million planets the size of the earth. This large address space will be sparsely populated, which makes it possible to again encode more routing information into the addresses themselves.

A version 6 address is written as eight 4-digit (16-bit) hexadecimal numbers separated by colons. One string of zeros per address may be left out, so that 1080::800:0:417A is the same as 1080:0:0:0:0:800:0:417A.

Global unicast IPv6 addresses are constructed as two parts: a 64-bit routing part followed by a 64-bit host identifier.

Netblocks are specified as in the modern alternative for IPv4: network number, followed by a slash, and the number of relevant bits of the network number (in decimal). Example: 12AB::CD30:0:0:0:0/60 includes all addresses starting with 12AB00000000CD3.

IPv6 has many improvements over IPv4 other than just bigger address space, including autorenumbering and mandatory use of IPsec.

Further reading: Internet RFCs including RFC 791, RFC 1519 (IPv4 addresses), and RFC 2373 (IPv6 addresses).


External links