Dot-decimal notation is a presentation format for numerical data. It consists of a string of decimal numbers, using thefull stop (dot) as aseparation character.[1]
A common use of dot-decimal notation is in information technology where it is a method of writing numbers inoctet-grouped base-10 (decimal) numbers.[2] Incomputer networking,Internet Protocol Version 4 (IPv4) addresses are commonly written using thequad-dotted notation of four decimal integers, ranging from 0 to 255 each.[3]
In computer networking, the notation is associated with the specific use ofquad-dotted notation to represent IPv4 addresses[4] and used as a synonym fordotted-quad notation.[5] Dot-decimal notation is a presentation format for numerical data expressed as a string of decimal numbers each separated by a full stop. For example, thehexadecimal number0xFF000000 may be expressed in dot-decimal notation as255.0.0.0.
An IPv4 address has 32 bits. For purposes of representation, the bits may be divided into four octets written in decimal numbers, ranging from 0 to 255, concatenated as a character string with full stop delimiters between each number.[3] This octet-grouped dotted-decimal format may more specifically be called "dotted octet" format,[6] or a "dotted quad address".[7]
For example, the address of theloopback interface, usually assigned the host namelocalhost, is 127.0.0.1. It consists of the four octets, written in binary notation:01111111,00000000,00000000, and00000001. The 32-bit number is represented in hexadecimal notation as0x7F000001.
No formal specification of this textual IP address representation exists.[6] The first mention of this format inRFC documents was in RFC 780 for theMail Transfer Protocol published May 1981, in which the IP address was supposed to be enclosed in brackets or represented as a 32-bit decimal integer prefixed by a pound sign. A table in RFC 790 (Assigned Numbers) used the dotted decimal format, zero-padding each number to three digits.[6] RFC 1123 (Requirements for Internet Hosts – Application and Support) of October 1989 mentions a requirement for host software to accept "IP address in dotted-decimal ("#.#.#.#") form", although it notes "[t]his last requirement is not intended to specify the complete syntactic form for entering a dotted-decimal host number".[8] An IETF draft intended to define textual representation of IP addresses expired without further activity.[6]
A popular implementation of IP networking, originating in4.2BSD, contains a functioninet_aton() for converting IP addresses in character string representation to internal binary storage. In addition to the basic four-decimals format and 32-bit numbers, it also supported intermediate syntax forms ofoctet.24bits (e.g. 10.1234567; forClass A addresses) andoctet.octet.16bits (e.g. 172.16.12345; for Class B addresses). It also allowed the numbers to be written inhexadecimal andoctal representations, by prefixing them with 0x and 0, respectively. These features continue to be supported in some software, even though they are considered as non-standard.[6] This means addresses with a component written with a leading zero digit may be interpreted differently in programs that do or do not recognize such formats.[9]
APOSIX-conforming variant ofinet_aton, theinet_pton() function, supports only the four-decimal variant of IP addresses.[10]
IP addresses in dot-decimal notation are also presented inCIDR notation, in which the IP address is suffixed with a slash and a number, used to specify the length of the associated routing prefix. For example, 127.0.0.1/8 specifies that the IP address has an eight-bit routing prefix, and therefore the subnet mask255.0.0.0.
Object identifiers use a style of dot-decimal notation to represent an arbitrarily deep hierarchy of objects identified by decimal numbers. They may also use textual words separated by dots, like some computer languages (see inheritance).
Software releases are often givenversion numbers in dot-decimal notation, with the first digit designating major revisions and the smaller ones progressively more minor releases. Version numbers with a leading zero, say "0.1.8", conventionally indicate that the software is still inbeta and does not yet have complete features.
Libraries use notation systems consisting of decimal numbers separated by dots, such as the olderDewey Decimal Classification and theUniversal Decimal Classification, to classify books and other works by subject. The UDC additionally codes works withmultiple dot-decimal topics, separated by colons.[11]
Dot-decimal notation is often used forsections within a large text. This was standardized inISO 2145.
Toe bones orphalanges of the foot.
Dot-decimal notation is also used to describe illnesses in a language-neutral way. For instance, theAO Foundation/Orthopaedic Trauma Association (AO/OTA) classification generates numeric codes for describingbroken toes.[12] They run88[meaning a fracture of thephalanges].[number-code of toe, with the big toe=1 and the little toe=5].[number-code of phalanx, counting 1-3 outwards from the foot].[number-code of location on the bone, with 1 being the inner end, 3 the outer, and 2 in-between].[12] So, for instance,88.5.3.2 means a fracture to the little toe's outermost bone, in the center.[12] There are other classifications for other fractures and dislocations.[13]
An IPv4 address has the following format: x . x . x . x where x is called an octet and must be a decimal value between 0 and 255. Octets are separated by periods. An IPv4 address must contain three periods and four octets. The following examples are valid IPv4 addresses:
1 . 2 . 3 . 4
01 . 102 . 103 . 104
inet_pton(3)
– Linux Library FunctionsManual