Что такое ip address prefix

Understanding IP Addressing and CIDR Charts

Every device connected to the Internet needs to have an identifier. Internet Protocol (IP) addresses are the numerical addresses used to identify a particular piece of hardware connected to the Internet.

The two most common versions of IP in use today are Internet Protocol version 4 (IPv4) and Internet Protocol version 6 (IPv6). Both IPv4 and IPv6 addresses come from finite pools of numbers.

For IPv4, this pool is 32-bits (2 32 ) in size and contains 4,294,967,296 IPv4 addresses. The IPv6 address space is 128-bits (2 128 ) in size, containing 340,282,366,920,938,463,463,374,607,431,768,211,456 IPv6 addresses.

A bit is a digit in the binary numeral system, the basic unit for storing information.

Not every IP address in the IPv4 or IPv6 pool can be assigned to the machines and devices used to access the Internet. Some IP addresses have been reserved for other uses, such as for use in private networks. This means that the total number of IP addresses available for allocation is less than the total number in the pool.

Network prefixes

IP addresses can be taken from the IPv4 or the IPv6 pool and are divided into two parts, a network section and a host section. The network section identifies the particular network and the host section identifies the particular node (for example, a certain computer) on the Local Area Network (LAN).

Allocation

IP addresses are assigned to networks in different sized ‘blocks’. The size of the ‘block’ assigned is written after an oblique (/), which shows the number of IP addresses contained in that block. For example, if an Internet Service Provider (ISP) is assigned a “/16”, they receive around 64,000 IPv4 addresses. A “/26” network provides 64 IPv4 addresses. The lower the number after the oblique, the more addresses contained in that “block”.

The size of the prefix, in bits, is written after the oblique. This is called “slash notation”. There is a total of 32 bits in IPv4 address space. For example, if a network has the address “192.0.2.0/24”, the number “24” refers to how many bits are contained in the network. From this, the number of bits left for address space can be calculated. As all IPv4 networks have 32 bits, and each “section” of the address denoted by the decimal points contains eight bits, “192.0.2.0/24” leaves eight bits to contain host addresses. This is enough space for 256 host addresses. These host addresses are the IP addresses that are necessary to connect your machine to the Internet.

A network numbered “10.0.0.0/8” (which is one of those reserved for private use) is a network with eight bits of network prefix, denoted by “/8” after the oblique. The “8” denotes that there are 24 bits left over in the network to contain IPv4 host addresses: 16,777,216 addresses to be exact.

Classless Inter-Domain Routing (CIDR) Chart

The Classless Inter-Domain Routing (CIDR) is commonly known as the CIDR chart and is used by those running networks and managing IP addresses. It enables them to see the number of IP addresses contained within each “slash notation” and the size of each “slash notation” in bits.

IPv6 is similar to IPv4, but it is structured so that all LANs have 64 bits of network prefix as opposed to the variable length of network prefix 1 that IPv4 networks have. All IPv6 networks have space for 18,446,744,073,709,551,616 IPv6 addresses.

Currently, most ISPs assign /48 network prefixes to subscribers’ sites (the End Users’ networks). Because all IPv6 networks have /64 prefixes, a /48 network prefix allows 65,536 LANs in an End User’s site.

The current minimum IPv6 allocation made by the RIPE NCC is a /32 network prefix. If the LIR only made /48 assignments from this /32 network prefix, they would be able to make 65,536 /48 assignments. If they decided to only assign /56 network prefixes they would have 24 bits available to them, and so could make 16,777,216 /56 assignments.

For example, if a /24 IPv6 allocation is made to an LIR, it would be able to make 16,777,216 /48 assignments or 4,294,967,296 /56 assignments.

To give some perspective, it is worth noting that there are 4,294,967,296 IPv4 addresses in total, significantly less than the number of IPv6 addresses.

Источник

Что означает сетевой префикс

IP адрес протокола IPv4 состоит из 32 бит, но не все биты в адресе имеют одинаковое значение. Биты делятся на две части: слева некоторое количество бит обозначают сеть, к которой относится данный адрес, оставшиеся биты справа идентифицируют устройство внутри сети. Подробнее об этом можно прочесть в статье про IPv4-адресацию. Граница между этими двумя группами бит может проходить в разных местах, например, для 32-битного адреса, первые 16 бит могут обозначать сеть, вторые – хост внутри сети, возможны любые другие сочетания (10 и 22, 8 и 24, 30 и 2) – в принципе, любые два числа, дающие в сумме 32 подойдут.

Для описания того, где проходит эта граница используется сетевой префикс. Он записывается обычно после адреса в виде десятичного числа через слеш, например 10.0.0.0/8 или 192.168.10.123/19 (8 и 19 – префиксы). Префикс обозначает, сколько бит в приведённом адресе хранят информацию о сети. Например, если префикс /24, это означает, что в адресе из 32-х бит 24 бита хранят информацию о сети, а оставшиеся 8 – информацию о хосте.

Предположим, что имеется такая задача: найти широковещательный адрес для адреса 172.20.35.123/20. Запишем адрес в двоичном виде 10101100.00010100.00100011.01111011, как мы помним из определения, чтобы получить широковещательный адрес, надо взять ту часть адреса, где хранится информация о хосте и заполнить её единицами. Так как префикс 20 – отсчитываем первые 20 бит и оставляем их без изменений (виде 10101100.00010100.0010), оставшиеся 12 бит заполняем единицами, так как там хранится хостовая часть адреса (1111.11111111), получится адрес 10101100.00010100.00101111.11111111, в десятичной системе это выглядит как 172.20.47.255.

Перевод префикса в маску подсети

Префикс и маска подсети обозначают одно и то же, только разными способами. Если надо найти маску подсети по префиксу, то надо просто написать столько единиц, сколько указано в префиксе, оставшуюся часть дополнить нулями (чтобы всего получилось 32 двоичные цифры) и дальше группами по 8 бит перевести в десятичную систему.

Например, стоит задача найти маску, соответствующую префиксу /19. Для этого запишем 19 единиц и дополним их 13 нулями, чтобы всего получилось 32 цифры:

11111111.11111111.11100000.00000000, то что получилось надо перевести в десятичный вид и получим маску подсети 255.255.224.0.

Сетевой префикс в IPv6

В IPv6 адрес состоит из 128 бит, и маски подсети не используются, так как пришлось бы иметь очень длинные маски — тоже по 128 бит. Вместо этого используется только префикс. Смысл префикса в IPv6 такой же как и для IPv4 — отделение части адреса, хранящей информацию о сети от части адреса, хранящей информацию о хосте. Правая часть, хранящая информацию о хосте имеет специальное название — «Идентификатор интерфейса» (Interface ID). В IPv6 клиенту выделяются сети с префиксом /64, что означает ещё 64 бита на хосты внутри сети. Таким образом, внутри сети моэет существовать 2 64 различных хостов.

Источник

IP-адреса

Определение:
IP-адрес — уникальный сетевой адрес узла в компьютерной сети, построенной по протоколу IP.

Содержание

IPv4-адреса

IPv4 использует 32-битные адреса, ограничивающие адресное пространство 4 294 967 296 (2 32 ) возможными уникальными адресами. У каждого хоста и маршрутизатора в Интеренете есть IP-адрес. IP-адрес не имеет отношения к хосту. Он имеет отношение к сетевому интерфейсу, поэтому иногда хост или маршрутизатор могут иметь несколько IP-адресов.

IP-адреса имеют иерархическую организацию. Первая часть имеет переменную длину и задает сеть, а последняя указывает на хост.

Обычно IP-адреса записываются в виде 4 десятичных чисел, каждое в диапозоне от 0 до 255, разделенными точками (dot-decimal notation). Каждая часть представляет один байт адреса. Например, шестнадцатиричный адрес 80D00297 записывается как 128.208.2.151.

Определение:
Префикс — непрерывный блок пространства IP-адресов, соответствующий сети, в которой сетевая часть совпадает для всех хостов.

Префикс задается наименьшим IP-адресом в блоке и размером блока. Размер определяется числом битов в сетевой части, оставшиеся биты в части хоста могут варьироваться. Таким образом, размер является степенью двойки. Он записывается после префикса IP-адреса в виде слэша и длины сетевой части в битах. В предыдущем примере префикс содержит 2 8 адресов и поэтому для сетевой части отводится 24 бита. Записывается так: 128.208.2.0/24.

Классы IP-сетей

Также, сколько бит используется сетевым ID и сколько бит доступно для идентификации хостов (интерфейсов) в этой сети, определяется сетевыми классами.

Всего 3 класса IP-адресов:

  • Класс A. IP сетевых адресов использует левые 8 бит (самый левый байт) для указания сети, оставшиеся 24 бита (оставшиеся три байта) для идентификации интерфейса хоста в этой сети. Адреса класса A всегда имеют самый левый бит самого левого байта нулевым, то есть значения от 0 до 127 для первого байта в десятичной нотации. Таким образом доступно максимум 128 адресов сетей класса A, каждый из которых может содержать до 33,554,430 интерфейсов. Однако сети 0.0.0.0 (известная как маршрут по умолчанию) и 127.0.0.0 (loop back сеть) имеют специальное назначение и не доступны для использования в качестве идентификаторов сети. Поэтому доступно только 126 адресов сетей класса A.
  • Класс B. IP сетевых адресов использует левые 16 бит (два левых байта) для идентификации сети, оставшиеся 16 бит (последние два байта) указывают хостовые интерфейсы. Адрес класса B всегда имеет самые левые два бита установленными в 1 0. Таким образом для номера сети остается 14 бит, что дает 32767 доступных сетей класса B. Первый байт адреса сети класса B может принимать значения от 128 до 191, и каждая из таких сетей может иметь до 32,766 доступных интерфейсов.
  • Класс C. IP сетевых адресов использует левые 24 бит (три левых байта) для идентификации сети, оставшиеся 8 бит (последний байт) указывает хостовый интерфейс. Адрес класса С всегда имеет самые левые три бита установленными в 1 1 0. Таким образом для номера сети остается 14 бит, что дает 4,194,303 доступных сетей класса B. Первый байт адреса сети класса B может принимать значения от 192 до 255, и каждая из таких сетей может иметь до 254 доступных интерфейсов. Однако сети класса C с первым байтом больше, чем 223, зарезервированы и не используются.

Существует также специальные адреса, которые зарезервированы для ‘несвязанных’ сетей — это сети, которые используют IP, но не подключены к Internet. Вот эти адреса:

  • Одна сеть класса A: 10.0.0.0
  • 16 сетей класса B: 172.16.0.0 — 172.31.0.0
  • 256 сетей класса С: 192.168.0.0 — 192.168.255.0

Сетевые адреса, адреса интерфейсов и широковещательные адреса

IP адрес может означать одно из трех:

  • Адрес IP сети (группа IP устройств, имеющих доступ к общей среде передаче — например, все устройства в сегменте Ethernet). Сетевой адрес всегда имеет биты интерфейса (хоста) адресного пространства установленными в 0 (если сеть не разбита на подсети — как мы еще увидим);
  • Широковещательный адрес IP сети (адрес для ‘разговора’ со всеми устройствами в IP сети). Широковещательные адреса для сети всегда имеют интерфейсные (хостовые) биты адресного пространства установленными в 1 (если сеть не разбита на подсети — опять же, как мы вскоре увидим).
  • Адрес интерфейса (например Ethernet-адаптер или PPP интерфейс хоста, маршрутизатора, сервера печать итд). Эти адреса могут иметь любые значения хостовых битов, исключая все нули или все единицы — чтобы не путать с адресами сетей и широковещательными адресами.
  • Для сети класса A: (один байт под адрес сети, три байта под номер хоста)
    • 10.0.0.0 сеть класса А, потому что все хостовые биты равны 0.
    • 10.0.1.0 адрес хоста в этой сети
    • 10.255.255.255 широковещательный адрес этой сети, поскольку все сетевые биты установлены в 1
  • Для сети класса B: (два байта под адрес сети, два байта под номер хоста)
    • 172.17.0.0 сеть класса B
    • 172.17.0.1 адрес хоста в этой сети
    • 172.17.255.255 сетевой широковещательный адрес
  • Для сети класса C: (три байта под адрес сети, один байт под номер хоста)
    • 192.168.3.0 адрес сети класса C
    • 192.168.3.42 хостовый адрес в этой сеть
    • 192.168.3.255 сетевой широковещательный адрес

Почти все доступные сетевые IP-адреса принадлежат классу C.

Маска подсети

Длина префикса не выводится из IP-адреса, поэтому протоколу маршрутизации вынуждены передавать префиксы на маршрутизаторы. Иногда префиксы задаются с помощью указания длины.

Определение:
Маска подсети — двоичная маска, соответствующая длине префикса, в которой единицы указывают на сетевую часть.

То есть маска подсети определяет как будут локально интерпретироваться IP адреса в сегменте IP сети, что для нас весьма важно, поскольку определяет процесс разбивки на подсети.

Стандартная маска подсети — все сетевые биты в адресе установлены в ‘1’ и все хостовые биты установлены в ‘0’. Это означает, что стандартные маски подсети для трех классов сетей:

  • A класс — маска подсети: 255.0.0.0
  • B класс — маска подсети: 255.255.0.0
  • C класс — маска подсети: 255.255.255.0

Выполненение операции И между маской и IP-адресом позволяет выделить сетевую часть.

О маске подсети нужно помнить три вещи:

  • Маска подсети предназначена только для локальной интерпретации локальных IP адресов (где локальный значит — в том же сетевом сегменте);
  • Маска подсети — не IP адрес — она используется для локальной модификации интерпретации IP адреса.

Бесклассовая междоменная маршрутизация

Изначально использовалась классовая адресация (INET), но со второй половины 90-х годов XX века она была вытеснена бесклассовой адресацией (CIDR), при которой количество адресов в сети определяется маской подсети.

Никто не знает точно, сколько всего сетей подключено к Интернету, но очевидно, что их много — возможно, порядка миллиона. Различные алгоритмы маршрутизации требуют, чтобы каждый маршрутизатор обменивался информацией о доступных ему адресах с другими маршрутизаторами. Чем больше размер таблицы, тем больше данных необходимо передавать и обрабатывать. С ростом размера таблицы время обработки растет как минимум линейно. Чем больше данных приходится передавать, тем выше вероятность потери (в лучшем случае временной) части информации по дороге, что может привести к нестабильности работы алгоритмов выбора маршрутов.

К счастью, способ уменьшить размер таблиц маршрутизации все же существует. Применим тот же принцип, что и при разбиении на подсети: маршрутизатор может узнавать о расположении IP-адресов по префиксам различной длины. Но вместо того чтобы разделять сеть на подсети, мы объединим несколько коротких префиксов в один длинный. Этот процесс называется агрегацией маршрута (route aggregation). Длинный префикс, полученный в результате, иногда называют суперсетью (supernet), в противоположность подсетям с разделением блоков адресов.

При агрегации IP-адреса содержатся в префиксах различной длины. Один и тот же IP-адрес может рассматриваться одним маршрутизатором как часть блока /22 (содержащего 2 10 адресов), а другим — как часть более крупного блока /20 (содержащего 2 12 адресов). Это зависит от того, какой информацией обладает маршрутизатор. Такой метод работает и для разбиения на подсети и называется CIDR (Classless InterDomain Routing — бесклассовая междоменная маршрутизация).

Источник