ТЕОРИЯ_Адресное пространство сети
Адресное пространство сети: IP-адреса используются для идентификации устройств в сети. Для взаимодействия по сети IP-адрес должен быть назначен каждому сетевому устройству (в том числе компьютерам, серверам, маршрутизаторам, принтерам и т.д.). Такие устройства в сети называют хостами. С помощью маски подсети определяется максимально возможное число хостов в конкретной сети. Маски подсети позволяют разделить одну сеть на несколько подсетей. Структура IP-адреса Одна часть IP-адреса представляет собой номер сети, другая – идентификатор хоста. Точно так же, как у разных домов на одной улице в адресе присутствует одно и то же название улицы, у хостов в сети в адресе имеется общий номер сети. И точно так же, как у различных домов имеется собственный номер дома, у каждого хоста в сети имеется собственный уникальный идентификационный номер – идентификатор хоста. Номер сети используется маршрутизаторами для передачи пакетов в нужные сети, тогда как идентификатор хоста определяет конкретное устройство в этой сети, которому должны быть доставлены пакеты. IP-адрес состоит из четырех частей, записанных в виде десятичных чисел с точками (например, 192.168.1.1). Каждую из этих четырех частей называют октетом. Октет представляет собой восемь двоичных цифр (например, 11000000, или 192 в десятичном виде). Таким образом, каждый октет может принимать в двоичном виде значения от 00000000 до 11111111, или от 0 до 255 в десятичном виде. На следующем рисунке показан пример IP-адреса, в котором первые три октета (192.168.1) представляют собой номер сети, а четвертый октет (16) – идентификатор хоста. Рис 2. Номер сети и идентификатор хоста Количество двоичных цифр в IP-адресе, которые приходятся на номер сети, и количество цифр в адресе, приходящееся на идентификатор хоста, могут быть различными в зависимости от маски подсети.
Маски подсети Маска подсети используется для определения того, какие биты являются частью номера сети, а какие – частью идентификатора хоста (для этого применяется логическая операция конъюнкции – «И»). Маска подсети включает в себя 32 бита. Если бит в маске подсети равен «1», то соответствующий бит IP-адреса является частью номера сети. Если бит в маске подсети равен «0», то соответствующий бит IP-адреса является частью идентификатора хоста. На следующем рисунке показана маска подсети, выделяющая номер сети (полужирным шрифтом) и идентификатор хоста в IP-адресе (который в десятичном виде записывается как 192.168.1.2). Маски подсети всегда состоят из серии последовательных единиц начиная с самого левого бита маски, за которой следует серия последовательных нулей, составляющих в общей сложности 32 бита. Маску подсети можно определить как количество бит в адресе, представляющих номер сети (количество бит со значением «1»). Например, «8-битной маской» называют маску, в которой 8 бит – единичные, а остальные 24 бита – нулевые. Маски подсети записываются в формате десятичных чисел с точками, как и IP-адреса. В следующих примерах показаны двоичная и десятичная запись 8-битной, 16-битной, 24битной и 29-битной масок подсети. Маски подсети всегда состоят из серии последовательных единиц начиная с самого левого бита маски, за которой следует серия последовательных нулей, составляющих в общей сложности 32 бита. Маску подсети можно определить как количество бит в адресе, представляющих номер сети (количество бит со значением «1»). Например, «8-битной маской» называют маску, в которой 8 бит – единичные, а остальные 24 бита – нулевые. Размер сети Количество разрядов в номере сети определяет максимальное количество хостов, которые могут находиться в такой сети. Чем больше бит в номере сети, тем меньше бит остается на идентификатор хоста в адресе. IP-адрес с идентификатором хоста из всех нулей представляет собой IP-адрес сети (192.168.1.0 с 24-битной маской подсети, например). IP-адрес с идентификатором хоста из всех единиц представляет собой широковещательный адрес данной сети (192.168.1.255 с 24битной маской подсети, например). Так как такие два IP-адреса не могут использоваться в качестве идентификаторов отдельных хостов, максимально возможное количество хостов в сети вычисляется следующим образом:
Поскольку маска всегда является последовательностью единиц слева, дополняемой серией нулей до 32 бит, можно просто указывать количество единиц, а не записывать значение каждого октета. Обычно это записывается как «/» после адреса и количество единичных бит в маске. Например, адрес 192.1.1.0 /25 представляет собой адрес 192.1.1.0 с маской 255.255.255.128. Пример 1 : Пусть есть адреса 192.168.0.1 и 192.168.0.65, какой из них находится в подсети 192.168.0.0 с маской 255.255.255.192 (или в нотации CIDR 192.168.0.0/26).
192.168.0.1 | = 11000000.10101000.00000000.00000001 |
255.255.255.192 | = 11111111.11111111.11111111.11000000 |
сумма | = 11000000.10101000.00000000.00000000 = 192.168.0.0 |
192.168.0.65 | = 11000000.10101000.00000000.01000001 |
255.255.255.192 | = 11111111.11111111.11111111.11000000 |
сумма | = 11000000.10101000.00000000.01000000 = 192.168.0.64 |
Как видно, адрес 192.168.0.65 при сложении с маской подсети дал другую подсеть, он находится в подсети 192.168.0.64/26. Пример 2: Пусть есть IP-адрес 192.168.0.148 и маска подсети 255.255.255.248. Определим основные параметры данной подсети: Применяем побитовым умножением (операция И) маски сети и ip адреса: 11000000.10101000.00000000.10010100 (192.168.0.148) 11111111.11111111.11111111.11111000 (255.255.255.248) 11000000.10101000.00000000.10010000 (192.168.0.144) Тогда имя подсети 192.168.0.144, Префикс сети — 29 (29 единиц двоичного кода в маске сети), Применяем побитовое сложение (операция ИЛИ) маски сети и ip адреса: 11000000.10101000.00000000.10010100 (192.168.0.148) 00000000.00000000.00000000.00000111 (!255.255.255.248) 11000000.10101000.00000000.10010111 (192.168.0.151) Тогда максимальный (широковещательный) адрес будет 192.168.0.151. Все адреса находящиеся между 144 и 151 (но не 144 и 151) мы можем назначать компьютерам, маршрутизаторам и прочему сетевому оборудованию (хостам).