Бесклассовая адресация

Разработка CIDR

Когда впервые была создана система доменных имен в Интернете (DNS), для IP-адресов использовалась классная система маршрутизации, но первые интернет-разработчики вскоре обнаружили, что в ней есть серьезный недостаток: ей не хватает масштабируемости. Чтобы решить эту проблему, Инженерная рабочая группа по Интернету создала стандарт IPv4 в 1993 году. Кроме того, CIDR была создана как система маршрутизации новых адресов IPv4. Эти стандарты были первоначально опубликованы под названиями RFC 1518 и RFC 1519. В 2006 году была опубликована новая версия стандарта как RFC 4632.

Согласно стандарту CIDR, первая часть IP-адреса является префиксом, который идентифицирует сеть. За префиксом следует идентификатор хоста, чтобы информационные пакеты можно было отправлять на конкретные компьютеры в сети. При использовании системы классовой маршрутизации отдельные сети были ограничены 256 идентификаторами хостов или перегружены 65 536 идентификаторами. Для многих сетевых предприятий 256 идентификаторов было недостаточно, а 65 536 были слишком обременительными, чтобы их можно было эффективно использовать.

В 1980-х годах, когда TCP / IP вырос в современный Интернет, была признана необходимость в более гибкой системе маршрутизации. Это вызвало необходимость разработки CIDR и подсетей. CIDR и процесс маскирования подсети переменной длины (VLSM) позволяют сетевым администраторам разделять отдельные сети на подсети различных размеров. Кроме того, адреса для связанных операций могут быть сгруппированы вместе, чтобы создать простую систему категоризации. Интернет-провайдеры также могут выделять масштабируемое количество адресов, в блоках, для организаций на основе того, сколько адресов необходимо.

Эти новые системы маршрутизации и категоризации решили большинство проблем с IP-адресами, и единственной оставшейся проблемой было решение, как их эффективно идентифицировать. В конце концов, нотация CIDR была установлена ​​и принята в качестве стандарта. В нотации CIDR IP-адреса записываются в виде префикса, и к нему прикрепляется суффикс, указывающий, сколько битов содержится во всем адресе. Суффикс устанавливается отдельно от префикса с косой чертой. Например, в нотации CIDR 192.0.1.0/24 префикс равен 192.0.1.0, а общее количество битов в адресе равно 24.

Организация подсетей

Очень редко в локальную вычислительную сеть входит более 100-200 узлов: даже
если взять сеть с большим количеством узлов, многие сетевые среды накладывают
ограничения, например, в 1024 узла. Исходя из этого, целесообразность использования
сетей класса А и В весьма сомнительна. Да и использование класса С для сетей,
состоящих из 20-30 узлов, тоже является расточительством.

Для решения этих проблем в двухуровневую иерархию IP-адресов (сеть —
узел) была введена новая составляющая — подсеть. Идея заключается в «заимствовании»
нескольких битов из узловой части адреса для определения подсети.

Полный префикс сети, состоящий из сетевого префикса и номера подсети,
получил название расширенного сетевого префикса. Двоичное число, и его десятичный
эквивалент, содержащее единицы в разрядах, относящихся к расширенному сетевому
префиксу, а в остальных разрядах — нули, назвали маской подсети.

   

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

подсеть

узел

IP адрес 

144.144.19.22 

10010000

10010000

00010011

00010110

Маска

255.255.255.0 

11111111

11111111

11111111

00000000

   

Расширенный сетевой префикс

 

Рис.4

Но маску в десятичном представлении удобно использовать лишь тогда, когда
расширенный сетевой префикс заканчивается на границе октетов, в других случаях
ее расшифровать сложнее. Допустим, что в примере на рис. 4 мы хотели бы для
подсети использовать не 8 бит, а десять. Тогда в последнем (z-ом) октете мы
имели бы не нули, а число 11000000. В десятичном представлении получаем 255.255.255.192.
Очевидно, что такое представление не очень удобно. В наше время чаще используют
обозначение вида «/xx», где хх — количество бит в расширенном сетевом
префиксе. Таким образом, вместо указания: «144.144.19.22 с маской 255.255.255.192»,
мы можем записать: 144.144.19.22/26. Как видно, такое представление более компактно
и понятно.

FLSM and VLSM

That brings us to Fixed Length Subnet Masks (FLSM) and Variable Length Subnet Masks (VLSM). FLSM and VLSM refer to how IP address space is assigned within each organization. By comparison, the terms we described ( and ) refer to how IP address space is allocated from IANA/RIRs.

We will demonstrate how FLSM and VLSM work using this topology, and the listed number of IP addresses required for each subnet:

FLSM

Fixed Length Subnet Mask (FLSM) refers to a strategy where every one of your networks within your infrastructure is the same size.

Whether you received a classful assignment or a classless assignment from your RIR, you can deploy the IP addresses in a Fixed Length manner. For example:

You are assigned by your RIR this /24: . Since the biggest segment of your networks requires 30 IP addresses, the smallest size subnet you can utilize is a , which contains 32 total IP addresses and 30 usable IP addresses.

In the FLSM world, every Subnet in your topology must be the same size. Which means if one Subnet needs to be a , then all Subnets need to be a :

In this particular topology, a total of 91 IP addresses is required, but the entire /24 (256 IP addresses) was allocated, leaving no additional room for expansion. This is a very inefficient utilization of the assigned IP address space.

The question remains though, if this was such an inefficient method of allocating IP address space, why did it ever exist? The reason: To save bits on the wire.

The early, early routing protocols (i.g., ) saved bits on the wire by not included the subnet mask in advertisements — the subnet mask for all advertised networks was assumed to be the same mask assigned to the receiving interface.

That means the original iteration of RIP only needs to send: , , , etc. Instead of: , , , etc.

RIPv1’s behavior can be seen in this post I made on Reddit: What RIP Advertises – definitive proof.

In today’s high capacity networks, saving these few bits is entirely inconsequential, but there was a time in the early history of building computer networks (1960s, 1970s), where transmitting bits was comparatively expensive.

The key point being:  FLSM is not the same thing as Classful assignments. FLSM is simply using one size subnet mask on all the router interfaces, for all the routers in your topology.

Whether the IP address space you received from IANA/RIRs was a Classful or Classless assignment is irrelevant to FLSM.

VLSM

As we can see in the example above, FLSM leads to many wasted IP addresses. The evolution from FLSM is what brought us to VLSM, or Variable Length Subnet Mask.

If FLSM is a subnet deployment strategy that requires all subnet masks to be the same size, then VLSM is a subnet deployment strategy that allows all subnet masks to be variable sizes.

The same IP assignment example above can be redone much more efficiently using VLSM.

Notice, we still required 91 host IP addresses, but we were able to accommodate that by only assigning 116 IP addresses, leaving another 140 IP addresses in our /24 to expand and scale this topology.

Granted, VLSM is not perfect — it doesn’t prevent all wasting of IP addresses, but it is a significant improvement over FLSM. VLSM is also the defacto standard for how every network is designed today.

Development of CIDR

When the Internet domain name system (DNS) was first established, the classful routing system was used for IP addresses, but early Internet developers soon discovered that it included a serious flaw in that it lacked scalability. To solve this problem, the Internet Engineering Task Force created the IPv4 standard in 1993. In addition, CIDR was created as a system of routing the new IPv4 addresses. These standards were originally published under the names RFC 1518 and RFC 1519. In 2006, a new version of the standard was published as RFC 4632.

According to the CIDR standard, the first part of an IP address is a prefix, which identifies the network. The prefix is followed by the host identifier so that information packets can be sent to particular computers within the network. With the classful routing system, individual networks were either limited to 256 host identifiers or overburdened with 65,536 identifiers. For many network enterprises, 256 identifiers were not enough and 65,536 were too burdensome to be used efficiently.

In the 1980s, as TCP/IP grew into the modern Internet, the need for a more flexible routing system was recognized. This need prompted the development of CIDR and subnets. CIDR and the process of variable-length subnet masking (VLSM) allow network administrators to divide individual networks into subnets of various sizes. In addition, addresses for related operations can be grouped together to create a simple system of categorization. Internet providers are also able to allocate a scalable number of addresses, in blocks, to organizations based on how many addresses are needed.

These new routing and categorization systems solved most of the problems with IP addresses, and the only remaining problem was deciding how to identify them efficiently. Eventually, CIDR notation was established and accepted as the standard. In CIDR notation, IP addresses are written as a prefix, and a suffix is attached to indicate how many bits are in the entire address. The suffix is set apart from the prefix with a slash mark. For instance, in the CIDR notation 192.0.1.0/24, the prefix is 192.0.1.0, and the total number of bits in the address is 24.

Mask

The Mask (routing prefix) shows what part of an IP address is
network part and which is a host part. CIDR mask in IP version 4 is 32
bits long and is usually represented using dotted decimal form. Valid
CIDR masks binary form starts with single or multiple ones (ones part)
followed by stream of zeros (zeros part). After first zero there can
only be ones. For example, 11111111.11111111.11110000.00000000
(255.255.240.0).

Maximum Addresses

Maximum number of addresses available for the specified CIDR mask.It calculated by:
232-routing_prefix — 2. Exception are networks with «/32» masks: 232-routing_prefix.

Разница между классовой и бесклассовой адресацией

Определение

Классовая адресация — это метод выделения IP-адресов, который распределяет IP-адреса в соответствии с пятью основными классами. Бесклассовая адресация — это метод выделения IP-адресов, предназначенный для замены классовой адресации, чтобы минимизировать быстрое исчерпание IP-адресов. Таким образом, в этом заключается основное различие между классной и бесклассовой адресацией.

Полезность

Еще одно различие между классной и бесклассовой адресацией заключается в их полезности. Бесклассовая адресация более практична и полезна, чем классовая адресация.

Идентификатор сети и идентификатор хоста

При групповой адресации идентификатор сети и идентификатор хоста изменяются в зависимости от классов. Однако при бесклассовой адресации нет границ для идентификатора сети и идентификатора хоста. Следовательно, это еще одно различие между классовой и бесклассовой адресацией.

Заключение

Классовая и бесклассовая адресация — это два типа IP-адресации. Основное различие между классовой и бесклассовой адресацией заключается в том, что бесклассовая адресация позволяет распределять IP-адреса более эффективно, чем классовая адресация. Короче говоря, бесклассовая адресация может избежать исчерпания IP-адресов, которые могут возникнуть при классовой адресации.

Возможные маски

  1. IPv4 CIDR

IP/маска

До последнего IP

в подсети

Маска

Всего адресов

Хостовых адресов

Класс

a.b.c.d/32

+0.0.0.0

255.255.255.255

1

(нет)

1/256 C

a.b.c.d/31

+0.0.0.1

255.255.255.254

2

2
1/128 C

a.b.c.d/30

+0.0.0.3

255.255.255.252

4

2

1/64 C

a.b.c.d/29

+0.0.0.7

255.255.255.248

8

6

1/32 C

a.b.c.d/28

+0.0.0.15

255.255.255.240

16

14

1/16 C

a.b.c.d/27

+0.0.0.31

255.255.255.224

32

30

1/8 C

a.b.c.d/26

+0.0.0.63

255.255.255.192

64

62

1/4 C

a.b.c.d/25

+0.0.0.127

255.255.255.128

128

126

1/2 C

a.b.c.0/24

+0.0.0.255

255.255.255.000

256

254

1 C

a.b.c.0/23

+0.0.1.255

255.255.254.000

512

510

2 C

a.b.c.0/22

+0.0.3.255

255.255.252.000

1024

1022

4 C

a.b.c.0/21

+0.0.7.255

255.255.248.000

2048

2046

8 C

a.b.c.0/20

+0.0.15.255

255.255.240.000

4096

4094

16 C

a.b.c.0/19

+0.0.31.255

255.255.224.000

8192

8190

32 C

a.b.c.0/18

+0.0.63.255

255.255.192.000

16 384

16 382

64 C

a.b.c.0/17

+0.0.127.255

255.255.128.000

32 768

32 766

128 C

a.b.0.0/16

+0.0.255.255

255.255.000.000

65 536

65 534

256 C = 1 B

a.b.0.0/15

+0.1.255.255

255.254.000.000

131 072

131 070

2 B

a.b.0.0/14

+0.3.255.255

255.252.000.000

262 144

262 142

4 B

a.b.0.0/13

+0.7.255.255

255.248.000.000

524 288

524 286

8 B

a.b.0.0/12

+0.15.255.255

255.240.000.000

1 048 576

1 048 574

16 B

a.b.0.0/11

+0.31.255.255

255.224.000.000

2 097 152

2 097 150

32 B

a.b.0.0/10

+0.63.255.255

255.192.000.000

4 194 304

4 194 302

64 B

a.b.0.0/9

+0.127.255.255

255.128.000.000

8 388 608

8 388 606

128 B

a.0.0.0/8

+0.255.255.255

255.000.000.000

16 777 216

16 777 214

256 B = 1 A

a.0.0.0/7

+1.255.255.255

254.000.000.000

33 554 432

33 554 430

2 A

a.0.0.0/6

+3.255.255.255

252.000.000.000

67 108 864

67 108 862

4 A

a.0.0.0/5

+7.255.255.255

248.000.000.000

134 217 728

134 217 726

8 A

a.0.0.0/4

+15.255.255.255

240.000.000.000

268 435 456

268 435 454

16 A

a.0.0.0/3

+31.255.255.255

224.000.000.000

536 870 912

536 870 910

32 A

a.0.0.0/2

+63.255.255.255

192.000.000.000

1 073 741 824

1 073 741 822

64 A

a.0.0.0/1

+127.255.255.255

128.000.000.000

2 147 483 648

2 147 483 646

128 A

0.0.0.0/0

+255.255.255.255

000.000.000.000

4 294 967 296

4 294 967 294

256 A

Количество адресов в подсети не равно количеству возможных узлов. Нулевой адрес IP резервируется для идентификации подсети, последний — в качестве широковещательного адреса, таким образом в реально действующих сетях возможно количество узлов на два меньшее количества адресов.

Возможные маски

  1. IPv4 CIDR

IP/маска

До последнего IP

в подсети

Маска

Всего адресов

Хостовых адресов

Класс

a.b.c.d/32

+0.0.0.0

255.255.255.255

1

(нет)

1/256 C

a.b.c.d/31

+0.0.0.1

255.255.255.254

2

2
1/128 C

a.b.c.d/30

+0.0.0.3

255.255.255.252

4

2

1/64 C

a.b.c.d/29

+0.0.0.7

255.255.255.248

8

6

1/32 C

a.b.c.d/28

+0.0.0.15

255.255.255.240

16

14

1/16 C

a.b.c.d/27

+0.0.0.31

255.255.255.224

32

30

1/8 C

a.b.c.d/26

+0.0.0.63

255.255.255.192

64

62

1/4 C

a.b.c.d/25

+0.0.0.127

255.255.255.128

128

126

1/2 C

a.b.c.0/24

+0.0.0.255

255.255.255.000

256

254

1 C

a.b.c.0/23

+0.0.1.255

255.255.254.000

512

510

2 C

a.b.c.0/22

+0.0.3.255

255.255.252.000

1024

1022

4 C

a.b.c.0/21

+0.0.7.255

255.255.248.000

2048

2046

8 C

a.b.c.0/20

+0.0.15.255

255.255.240.000

4096

4094

16 C

a.b.c.0/19

+0.0.31.255

255.255.224.000

8192

8190

32 C

a.b.c.0/18

+0.0.63.255

255.255.192.000

16 384

16 382

64 C

a.b.c.0/17

+0.0.127.255

255.255.128.000

32 768

32 766

128 C

a.b.0.0/16

+0.0.255.255

255.255.000.000

65 536

65 534

256 C = 1 B

a.b.0.0/15

+0.1.255.255

255.254.000.000

131 072

131 070

2 B

a.b.0.0/14

+0.3.255.255

255.252.000.000

262 144

262 142

4 B

a.b.0.0/13

+0.7.255.255

255.248.000.000

524 288

524 286

8 B

a.b.0.0/12

+0.15.255.255

255.240.000.000

1 048 576

1 048 574

16 B

a.b.0.0/11

+0.31.255.255

255.224.000.000

2 097 152

2 097 150

32 B

a.b.0.0/10

+0.63.255.255

255.192.000.000

4 194 304

4 194 302

64 B

a.b.0.0/9

+0.127.255.255

255.128.000.000

8 388 608

8 388 606

128 B

a.0.0.0/8

+0.255.255.255

255.000.000.000

16 777 216

16 777 214

256 B = 1 A

a.0.0.0/7

+1.255.255.255

254.000.000.000

33 554 432

33 554 430

2 A

a.0.0.0/6

+3.255.255.255

252.000.000.000

67 108 864

67 108 862

4 A

a.0.0.0/5

+7.255.255.255

248.000.000.000

134 217 728

134 217 726

8 A

a.0.0.0/4

+15.255.255.255

240.000.000.000

268 435 456

268 435 454

16 A

a.0.0.0/3

+31.255.255.255

224.000.000.000

536 870 912

536 870 910

32 A

a.0.0.0/2

+63.255.255.255

192.000.000.000

1 073 741 824

1 073 741 822

64 A

a.0.0.0/1

+127.255.255.255

128.000.000.000

2 147 483 648

2 147 483 646

128 A

0.0.0.0/0

+255.255.255.255

000.000.000.000

4 294 967 296

4 294 967 294

256 A

Количество адресов в подсети не равно количеству возможных узлов. Нулевой адрес IP резервируется для идентификации подсети, последний — в качестве широковещательного адреса, таким образом в реально действующих сетях возможно количество узлов на два меньшее количества адресов.

CIDR Blocks

The ability to group blocks of addresses into a single routing network is the hallmark of CIDR, and the prefix standard used for interpreting IP addresses makes this possible. CIDR blocks share the first part of the bit sequence that comprises the binary representation of the IP address, and blocks are identified using the same decimal-dot CIDR notation system that is used for IPv4 addresses. For example, 10.10.1.16/32 is an address prefix with 32 bits, which is the highest number of bits allowed in IPv4. Addresses with identical prefixes and the same number of bits always belong to the same block. In addition, larger blocks can be easily distinguished from smaller blocks by the length of the prefix. Short prefixes allow for more addresses while large prefixes identify small blocks.

CIDR notation is also used for the newer IPv6 standard, and the syntax is the same. The only difference is that IPv6 addresses may contain up to 128 bits instead of the 32-bit maximum of IPv4. Even though IPv6 addresses may be up to 128 bits in length, it is important to note that subnets on MAC layer networks always use 64-bit host identifiers.

The assignment of CIDR blocks is handled by the Internet Assigned Numbers Authority (IANA). One of the duties of the IANA is to issue large blocks of IP addresses to regional Internet registries (RIRs). These blocks are used for large geographical areas, such as Europe, North America, Africa and Australia. It is then the duty of each RIR to create smaller, but still quite large, blocks of IP addresses to be assigned to local Internet registries (LIRs). Depending on the organization of regional and local registries, blocks may be subdivided further until they are assigned to end users. The size of blocks assigned to end users is dependent on how many individual addresses will be required by each user. Most end users receive their blocks from a single Internet service provider (ISP), but organizations that make use of multiple ISPs must obtain provider-independent blocks directly from an LIR or RIR.

IPv4 CIDR IP/CIDR Δ to last IP addr Mask Hosts (*) Class
a.b.c.d/32 +0.0.0.0 255.255.255.255 1 1/256 C
a.b.c.d/31 +0.0.0.1 255.255.255.254 2 1/128 C
a.b.c.d/30 +0.0.0.3 255.255.255.252 4 1/64 C
a.b.c.d/29 +0.0.0.7 255.255.255.248 8 1/32 C
a.b.c.d/28 +0.0.0.15 255.255.255.240 16 1/16 C
a.b.c.d/27 +0.0.0.31 255.255.255.224 32 1/8 C
a.b.c.d/26 +0.0.0.63 255.255.255.192 64 1/4 C
a.b.c.d/25 +0.0.0.127 255.255.255.128 128 1/2 C
a.b.c.0/24 +0.0.0.255 255.255.255.000 256 1 C
a.b.c.0/23 +0.0.1.255 255.255.254.000 512 2 C
a.b.c.0/22 +0.0.3.255 255.255.252.000 1,024 4 C
a.b.c.0/21 +0.0.7.255 255.255.248.000 2,048 8 C
a.b.c.0/20 +0.0.15.255 255.255.240.000 4,096 16 C
a.b.c.0/19 +0.0.31.255 255.255.224.000 8,192 32 C
a.b.c.0/18 +0.0.63.255 255.255.192.000 16,384 64 C
a.b.c.0/17 +0.0.127.255 255.255.128.000 32,768 128 C
a.b.0.0/16 +0.0.255.255 255.255.000.000 65,536 256 C = 1 B
a.b.0.0/15 +0.1.255.255 255.254.000.000 131,072 2 B
a.b.0.0/14 +0.3.255.255 255.252.000.000 262,144 4 B
a.b.0.0/13 +0.7.255.255 255.248.000.000 524,288 8 B
a.b.0.0/12 +0.15.255.255 255.240.000.000 1,048,576 16 B
a.b.0.0/11 +0.31.255.255 255.224.000.000 2,097,152 32 B
a.b.0.0/10 +0.63.255.255 255.192.000.000 4,194,304 64 B
a.b.0.0/9 +0.127.255.255 255.128.000.000 8,388,608 128 B
a.0.0.0/8 +0.255.255.255 255.000.000.000 16,777,216 256 B = 1 A
a.0.0.0/7 +1.255.255.255 254.000.000.000 33,554,432 2 A
a.0.0.0/6 +3.255.255.255 252.000.000.000 67,108,864 4 A
a.0.0.0/5 +7.255.255.255 248.000.000.000 134,217,728 8 A
a.0.0.0/4 +15.255.255.255 240.000.000.000 268,435,456 16 A
a.0.0.0/3 +31.255.255.255 224.000.000.000 536,870,912 32 A
a.0.0.0/2 +63.255.255.255 192.000.000.000 1,073,741,824 64 A
a.0.0.0/1 +127.255.255.255 128.000.000.000 2,147,483,648 128 A
0.0.0.0/0 +255.255.255.255 000.000.000.000 4,294,967,296 256 A
Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *