Как найти адрес сети в информатике

Приветствую вас на очередном выпуске. И сегодня речь пойдет о том, какие бывают IP-адреса, и как ими пользоваться. Что такое маска подсети, как она считается, и для чего она нужна. Как делить сети на подсети и суммировать их. Заинтересовавшихся приглашаю к прочтению.

Начнем, или уже продолжим, с самого популярного, заезженного и больного. Это IP-адреса. На протяжении 4-х статей это понятие встречалось по несколько раз, и скорее всего вы уже либо сами поняли для чего они, либо нагуглили и почитали о них. Но я обязан вам это рассказать, так как без ясного понимания двигаться дальше будет тяжело.

Итак IP-адрес — это адрес, используемый узлом на сетевом уровне. Он имеет иерархическую структуру. Что это значит? Это значит, что каждая цифра в его написании несет определенный смысл. Объясню на очень хорошем примере. Примером будет номер обычного телефона — +74951234567. Первой цифрой идет +7. Это говорит о том, что номер принадлежит зоне РФ. Далее следует 495. Это код Москвы. И последние 7 цифр я взял случайными. Эти цифры закреплены за районной зоной. Как видите здесь наблюдается четкая иерархия. То есть по номеру можно понять какой стране, зоне он принадлежит. IP адреса придерживаются аналогично строгой иерархии. Контролирует их организация IANA(англ. Internet Assigned Numbers Authority). Если на русском, то это «Администрация адресного пространства Интернет». Заметьте, что слово «Интернет» с большой буквы. Мало кто придает этому значение, поэтому объясню разницу. В англоязычной литературе термин «internet» используется для описания нескольких подключённых друг к другу сетей. А термин «Internet» для описания глобальной сети. Так что примите это к сведению.

Несмотря на то, что тема статьи больше теоретическая, нежели практическая, я настоятельно рекомендую отнестись к ней со всей серьезностью, так как от нее зависит понимание дальнейших тем, а особенно маршрутизации. Не для кого, я думаю, не секрет, что мы привыкли воспринимать числовую информацию в десятичном формате (в числах от 0-9). Однако все современные компьютеры воспринимают информацию в двоичном (0 и 1). Не важно при помощи тока или света передается информация. Вся она будет воспринята устройством как есть сигнал (1) или нет (0). Всего 2 значения. Поэтому был придуман алгоритм перевода из двоичной системы в десятичную, и обратно. Начну с простого и расскажу, как выглядят IP адреса в десятичном формате. Вся эта статья посвящена IP адресам версии 4. О версии 6 будет отдельная статья. В предыдущих статьях, лабах, да и вообще в жизни, вы видели что-то вроде этого «193.233.44.12». Это и есть IP адрес в десятичной записи. Состоит он из 4-х чисел, называемых октетами и разделенных между собой точками. Каждое такое число (октет) может принимать значение от 0 до 255. То есть одно из 256 значений. Длина каждого октета равна 8 битам, а суммарная длина IPv4 = 32 битам. Теперь интересный вопрос. Каким образом этот адрес воспримет компьютер, и как будет с ним работать?

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

Вместо «x» записывается либо 1, либо 0. Таблица разделена на 8 колонок, каждая из которых несет в себе 1 бит (8 колонок = 8 бит = 1 октет). Расположены они по старшинству слева направо. То есть первый (левый) бит — самый старший и имеет номер 128, а последний (правый) — самый младший и имеет номер 1. Теперь объясню, откуда эти числа взялись. Так как система двоичная, и длина октета равна 8-ми битам, то каждое число получается возведением числа 2 в степень от 0 до 7. И каждая из полученных цифр записывается в таблицу от большего к меньшему. То есть слева направо. От 2 в 7-ой степени до 2 в 0-ой степени. Приведу таблицу степеней 2-ки.

Думаю теперь понятно, каким образом строится таблица. Давайте теперь разберем адрес «193.233.44.12» и посмотрим, как он выглядит в двоичном формате. Разберем каждый октет отдельно. Возьмем число 193 и посмотрим, из каких табличных комбинаций оно получается. 128 + 64 + 1 = 193.

Те числа, которые участвовали в формировании комбинации получают 1, а все остальные получают 0.

Берем первый октет 233. 128 + 64 + 32 + 8 + 1.

Для 44 — это 32 + 8 + 4.

И напоследок 12. 8 + 4.

Получается длинная битовая последовательность 11000001.11101001.00101100.00001100. Именно с данным видом работают сетевые устройства. Битовая последовательность обратима. Вы можете так же вставить каждый октет (по 8 символов) в таблицу и получить десятичную запись. Я представлю совершенно случайную последовательность и приведу ее к десятичному виду. Пусть это будет 11010101.10110100.11000001.00000011. Строю таблицу и заношу в нее первый блок.

Получаю 128 + 64 + 16 + 4 + 1 = 213.

Вычисляю второй блок.

Считаю 128 + 32 + 16 + 4 = 180.

Третий блок.

128 + 64 + 1 = 193.

И напоследок четвертый.

2 + 1 = 3

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

Задача №1

1) 10.124.56.220
2) 113.72.101.11
3) 173.143.32.194
4) 200.69.139.217
5) 88.212.236.76
6) 01011101.10111011.01001000.00110000
7) 01001000.10100011.00000100.10100001
8) 00001111.11011001.11101000.11110101
9) 01000101.00010100.00111011.01010000
10) 00101011.11110011.10000010.00111101

Ответы

1) 00001010.01111100.00111000.11011100
2) 01110001.01001000.01100101.00001011
3) 10101101.10001111.00100000.11000010
4) 11001000.01000101.10001011.11011001
5) 01011000.11010100.11101100.01001100
6) 93.187.72.48
7) 72.163.4.161
8) 15.217.232.245
9) 69.20.59.80
10) 43.243.130.61

Теперь IP-адреса не должны быть чем-то страшным, и можно углубиться в их изучение.
Выше мы говорили о структуре телефонных номеров и их иерархии. И вот на заре рождения Интернета в том представлении, в каком мы его привыкли видеть, возник вопрос. Вопрос заключался в том, что IP-адреса нужно как-то сгруппировать и контролировать выдачу. Решением было разделить все пространство IP-адресов на классы. Это решение получило название классовая адресация (от англ. Classful). Она уже давно устарела, но практически в любой книге на нее отводятся целые главы и разделы. Cisco тоже не забывает про это и в своих учебных материалах рассказывает про нее. Поэтому я пробегусь по этой теме и покажу, чем она блистала с 1981 по 1995 год.

Пространство было поделено на 5 классов. Каждому классу был назначен блок адресов.

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

В чем суть. Первый октет, то есть 8 бит, остаются за адресом сети, а 3 последних октета (то есть оставшиеся 24 бита) назначаются хостам. Вот для того, чтобы показать, какой кусок относится к сети, а какой к хостам, используется маска. По структуре записи она аналогична записи IP-адреса. Отличие маски от IP-адресов в том, что 0 и 1 не могут чередоваться. Сначала идут 1, а потом 0. Таким образом, там где есть единица, значит это участок сети. Чуть ниже, после разбора классов, я покажу, как с ней работать. Сейчас главное знать, что маска класса A — 255.0.0.0. В таблице еще упомянут какой-то первый бит и для класса A он равен 0. Этот бит как раз нужен для того, чтобы сетевое устройство понимало, к какому классу оно принадлежит. Он же еще задает начальный и конечный диапазон адресов. Если в двоичном виде записать на всех октетах единицы, кроме первого бита в первом октете (там всегда 0), то получится 127.255.255.255, что является границей класса A. Например, возьмем адрес 44.58.63.132. Мы знаем, что у класса A первый октет отдается под адрес сети. То есть «44» — это адрес сети, а «58.63.132» — это адрес хоста.

Поговорим про класс B

Этому классу был дан блок поменьше. И адреса из этого блока предназначались для сетей средних масштабов. 2 октета отданы под адрес сети, и 2 — под адрес хостов. Маска у B класса — 255.255.0.0. Первые биты строго 10. А остальные меняются. Перейдем к примеру: 172.16.105.32. Два первых октета под адрес сети — «172.16». А 3-ий и 4-ый под адрес хоста — «105.32».

Класс C

Этот класс обделили адресами и дали ему самый маленький блок. Он был предназначен для мелких сетей. Зато этот класс отдавал целых 3 октета под адрес сети и только 1 октет — под хосты. Маска у него — 255.255.255.0. Первые биты 110. На примере это выглядит так — 192.168.1.5. Адрес сети «192.168.1», а адрес хоста «5».

Классы D и E. Я неcпроста объединил их в один. Адреса из этих блоков зарезервированы и не могут назначаться сетям и хостам. Класс D предназначен для многоадресной рассылки. Аналогию можно привести с телевидением. Телеканал вещает группе лиц свой эфир. И те, кто подключены, могут смотреть телепередачи. То есть в распоряжение администраторов могут попасть только 3 первых класса.

Напомню, что первые биты у класса D — это 1110. Пример адреса — 224.0.0.5.

А первые биты у класса E — это 1111. Поэтому, если вдруг увидите адрес вида 240.0.0.1, смело говорите, что это адрес E класса.

Про классы обмолвились. Теперь озвучу вопрос, который мне недавно задали. Так зачем тогда маски? У нас итак хосты понимают в каком они классе. Но суть вот в чем. Например, у вас есть маленький офис, и вам нужен блок IP-адресов. Никто не будет вам выдавать все адреса класса C. А дадут только его кусок. Например 192.168.1.0 с маской 255.255.255.0. Так вот эта маска и будет определять вашу границу. Мы уже говорили, что октет варьируется в значении от 0 до 255. Вот этот 4 октет полностью в вашем распоряжении. За исключением первого адреса и последнего, то есть 0 и 255 в данном случае. Первый адрес — это адрес сети (в данном случае 192.168.1.0), а последний адрес — широковещательный адрес (192.168.1.255). Напомню, что широковещательный адрес используется в том случае, когда надо передать информацию всем узлам в сети. Поэтому есть правило. Если вам надо узнать номер сети, то все биты относящиеся к хосту обращаете в 0, а если широковещательный, то все биты — в 1. Поэтому, если из 256 адресов забирается 2 адреса, то на назначение хостам остается 254 адреса (256 — 2). На собеседованиях и экзаменах часто любят спрашивать: «Количество IP-адресов в сети?» и «Сколько доступных IP-адресов в сети для назначения хостам?». Два разных вопроса, которые могут поставить в тупик. Ответом на первый будет — все адреса, включая адрес сети и широковещательный адрес, а на второй вопрос — все адреса, кроме адреса сети и широковещательного адреса.

Теперь углубимся в изучении маски.

Я записал адрес класса C 192.168.1.1 с маской 255.255.255.0 в десятичном и двоичном формате. Обратите внимание на то, как выглядит IP-адрес и маска в двоичном формате. Если в IP-адресе 0 и 1 чередуются, то в маске сначала идут 1, а потом 0. Эти биты фиксируют адрес сети и задают размер. По таблице выше можно сделать вывод, что в двоичном виде маска представлена последовательностью 24 единиц подряд. Это говорит о том, что целых 3 октета выделено под сеть, а 4 октет свободен под адресацию для хостов. Здесь ничего необычного. Это стандартная маска класса C.

Но вот в чем загвоздка. Например, в вашем офисе 100 компьютеров, и расширяться вы не планируете. Зачем плодить сеть из 250+ адресов, которые вам не нужны?! На помощь приходит разделение на подсети. Это очень удобная вещь. Объясню принцип на примере того же класса C. Как бы вы не хотели, но трогать 3 октета нельзя. Они фиксированы. Но вот 4 октет свободен под хосты, поэтому его можно трогать. Заимствуя биты из хостового куска, вы дробите сеть на n-ое количество подсетей и, соответственно, уменьшаете в ней количество адресов для хостов.

Попробуем это воплотить в реальность. Меняю маску. Заимствую первый бит из хостовой части(то есть 1-ый бит 4-ого октета выставляю в единицу). Получается следующая маска.

Данная маска делит сеть на 2 части. Если до дробления у сети было 256 адресов(от 0 до 255), то после дробления у каждого куска будет по 128 адресов(от 0 до 127 и от 128 до 255).
Теперь посмотрю, что изменится в целом с адресами.

Красным цветом я показал те биты, которые зафиксированы и не могут изменяться. То есть маска ей задает границу. Соответственно биты помеченные черным цветом определены для адресации хостов. Теперь вычислю эту границу. Чтобы определить начало, надо все свободные биты(помеченные черным цветом) обратить в ноль, а для определения конца обратить в единицы. Приступаю.

То есть в четвертом октете меняются все биты, кроме первого. Он жестко фиксирован в рамках этой сети.

Теперь посмотрим на вторую половину сети и вычислим ее адреса. Деление у нас производилось заимствованием первого бита в 4-ом октете, значит он является делителем. Первая половина сети получалась, когда этот бит принимал значение 0, а значит вторая сеть образуется, когда этот бит примет значение 1. Обращаю этот бит в 1 и посмотрю на границы.

Приведу в десятичный вид.

Соответственно .128 и .255 назначать хостам нельзя. Значит в доступности 128-2=126 адресов.
Вот таким образом можно при помощи маски управлять размером сети. Каждый заимствованный бит делит сеть на 2 части. Если откусить 1 бит от хостовой части, то поделим на 2 части (по 128 адресов), 2 бита = 4 части (по 64 адреса), 3 бита = 8 (по 32 адреса) и так далее.

Если вы рассчитали количество бит, отдаваемые под хосты, то количество доступных IP-адресов можно вычислить по формуле

В книге У. Одома по подготовке к CCNA R&S приведена хорошая формула для расчета битов, отдаваемых на подсеть и хосты:

N + S + H = 32, где N — кол-во битов сети (класс A — 8 бит, B — 16 бит, C — 24 бита), S — кол-во заимствованных битов на подсеть (это то, что мы делали выше, когда заимствовали 1 бит из хостовой части), H — кол-во бит отводимых хостам.

Внесу ясность и объясню, как и где применять эти формулы.

Возьмем пример:

Нам выдали сеть 172.16.0.0 и попросили создать 120 подсетей со 180 хостами и записать маску. Приступим.

В качестве шпаргалки, и для быстроты вычисления, я ниже подготовил таблицу степеней двойки.

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

Теперь смотрим на выданную сеть. Путем логических размышлений понимаем, что это адрес класса B. А значит его N (кол-во битов сети) = 16. Ок. Значит на хосты выделено тоже 16 бит. Вспоминаем условия задачи. Нужно создать 120 подсетей. «Откусывать» биты от сетевой части запрещено, значит кусаем от хостовой части.

Теперь нужно взять такое кол-во бит, чтобы хватило для 120 подсетей, однако оставляло достаточное кол-во под биты для хоста. Смотрим на таблицу выше. Если взять 7 бит, то получим 128. 128>120, следовательно попадаем под условие. Если возьмем 6 бит, то получим 64. 64<128, поэтому не попадаем под условие и отбрасываем этот вариант.

Ок. Выяснили, что S надо выделить не меньше 7 бит. Теперь посмотрим, что осталось под хосты.
Если N + S + H = 32 => H = 32 — (N + S) => H = 32 — (16 + 7) = 9. Смотрим на таблицу выше (или возводим 2 в 9 степень в уме) и получаем число 512. Отнимаем 2 (адрес сети и широковещательный адрес) и получаем 510 адресов. Нам нужно 180, а значит под условие мы попадаем причем с большим запасом. В таких случаях вам предоставляется право выбора. Сделать больше подсетей или хостов на подсеть. Объясняю, что это значит. У нас есть 9 бит на хосты. Если мы возьмем 8 бит, то получим число 256. 256 — 2 = 254 адреса. Этот вариант нам тоже подходит. Возьмем 7 бит. Получаем 128. Даже не отнимая 2 адреса, становится понятно, что это меньше 180 => данный вариант отбрасывается сразу. Итого получаем, что минимальное количество для подсети — 7 бит, а для хостов — 8 бит. Поэтому свободный бит можно отдать либо на подсеть, либо на хосты. Маска получается сложением N и S. В нашем случае получаем, если под подсеть отдаем 7 бит, то получаем 23. В десятичном виде маска будет выглядеть 255.255.254.0. А если отдадим под подсеть 8 бит, то получим 24 (или в десятичном виде 255.255.255.0). Иногда бывает, что под задачу существует всего одна маска. Ну и, конечно, могут быть случаи, когда маска не попадает не под какие условия. В этих случаях нужно брать сеть другого класса или доказывать заказчику, что это невозможно.

Думаю теперь понятно, как работала классовая адресация, и как ее рассчитывали. Возможно с первого раза голова не переварит этого, поэтому перечитывайте еще раз и повнимательнее. Как только начнет что-то проясняться, потренируйтесь на задачках, которые я оставлю.

Задача №2

1) Записать маску для проекта: сеть 172.16.0.0. 250 подсетей и 220 хостов.
2) Записать маску для проекта: сеть 10.0.0.0. 2000 подсетей и 1500 хостов.
3) Записать маску для проекта: сеть 192.168.0.0. 4 подсети и 60 хостов.

Ответы на задачи

1) 24 бита или 255.255.255.0
2) 19 бит (255.255.224.0), 20 бит (255.255.240.0), 21 бит (255.255.248.0)
3) 26 бит или 255.255.255.192

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

Поняли ведущие умы, что использовать классовые сети не удобно и нужно от них отказываться. Это привело к созданию бесклассовой адресации и маскам переменной длины, о чем мы ниже поговорим. Но перед этим пару слов о видах IP-адресов. Несмотря на то, что переход от классовой адресации к бесклассовой предполагал экономию IP-адресов, на деле эта проблема все равно решалась не полностью. Все упиралось в саму технологию IPv4. Объясню почему. Выше я говорил, что длина IP адреса равна 32 бита. Каждый бит может принимать значение 0 или 1, то есть два значения. Соответственно, чтобы вычислить все комбинации, надо возвести 2 в 32-ую степень. Получаем 4294967296 адресов. Если вычесть отсюда зарезервированные для специальных нужд и прочего, то останется примерно 4.2 млрд. адресов, когда на Земле проживает около 7.3 млрд. человек. Поэтому ведущие умы быстро просекли эту фишку и начали искать решение. Они решили выделить некое адресное пространство, которое будет использоваться только в пределах локальной сети и не будет использоваться в Интернете. Это разделило адреса на 2 лагеря: белые или публичные (англ. public) и серые или частные (англ. private).

Привожу диапазон адресов, которые выделены под локальные сети:

1) 10.0.0.0 — 10.255.255.255 с маской 255.0.0.0 (или кратко 10/8).
2) 172.16.0.0 — 172.31.255.255 с маской 255.240.0.0 (или кратко 172.16/12).
3) 192.168.0.0 — 192.168.255.255 (или кратко 192.168/16).

Если честно, я мало где видел применение адресации 172.16.X.X. Обычно в корпоративной среде всегда используется 10.X.X.X, а в домах/квартирах и мелких офисах 192.168.X.X.

Теперь прошу обратить внимание на очень важную вещь, которую многие путают. Не путайте классовую адресацию и диапазон частных адресов. Очень много людей наступают на эти грабли и свято верят, что диапазон частных адресов 10.0.0.0 — 10.255.255.255 — это диапазон A класса.
Разобрались, что такое частные адреса или private адреса. Но это еще не все. Есть еще список зарезервированных адресов, которые не могут светиться в Интернете. По ним написана целая документация на IETF. Привожу ссылку, где можете прочитать оригинал. Я кратко опишу часто встречающиеся.

1) 0.0.0.0/8 — диапазон адресов, используемый хостами для самоидентификации. Обычно это можно увидеть, когда хост пытается получить IP-адрес от DHCP сервера. Так как изначально у него нету IP-адреса, то в поле источника он вставляет адрес из данного диапазона.

2) 127.0.0.0/8 — loopback или localhost адреса. Это IP-адреса, используемые компьютером, чтобы обратиться к самому себе. Очень полезно для проверки работы TCP/IP. Дело в том, что независимо от наличия соединения с Интернетом или локальной сетью, адреса из этого пула должны всегда пинговаться. Если этого не происходит, значит система накрылась или накрывается медным тазом.

3) 169.254.0.0/16 — link-local address или локальные адреса. Автоматически используются хостами при отсутствии DHCP-сервера или его недоступности. Это позволяет быстро организовать локальную сеть и проверить работу узлов. Однако данный пул адресов не маршрутизируется. Следовательно, выйти в Интернет с них не получится.

4) 224.0.0.0/4 — блок адресов, зарезервированный под многоадресную рассылку или multicast. Для тех, кто хочет побольше узнать про multicast, оставляю ссылку.

Бесклассовая адресация (англ. Classless Inter-Domain Routing или CIDR). Описана была в стандарте RFC1519 в 1993 году. Она отказалась от классовых рамок и фиксированной маски. Адреса делятся только на публичные и зарезервированные, о которых написано выше. Если в классовой адресации маска нарезалась единой для всех подсетей, то в бесклассовой — у каждой подсети может быть своя маска. На теории все хорошо и красиво, но нет ничего лучше, чем практика. Поэтому перехожу к ней и объясню, как можно делить на подсети с разным количеством хостов.

В качестве шпаргалки приведу список всех возможных масок.

Представим ситуацию. Вам выдали сеть 192.168.1.0/24 и поставили следующие условия:

1) Подсеть на 10 адресов для гостей.
2) Подсеть на 42 адреса для сотрудников.
3) Подсеть на 2 адреса для соединения 2 маршрутизаторов.
4) Подсеть на 26 адресов для филиала.

Ок. Данная маска показывает, что в нашем распоряжении находятся 256 адресов. По условию эту сеть надо каким-то образом разделить на 4 подсети. Давайте попробуем. 256 очень хорошо делится на 4, давая в ответе 64. Значит один большой блок в 256 адресов можно поделить на 4 равных блока по 64 адреса в каждом. И все было бы прекрасно, но это порождает большое число пустых адресов. Для сотрудников, которым нужно 42 адреса, ладно, может в дальнейшем компания еще наймет. Но вот подсеть для маршрутизаторов, которая требует всего 2 адреса, оставит 60 пустых адресов. Да, вы можете сказать, что это private адреса, и кому дело до них. А теперь представьте, что это публичные адреса, которые маршрутизируются в Интернете. Их и так мало, а тут мы еще будем их отбрасывать. Это не дело, тем более, когда мы можем гибко управлять адресным пространством. Поэтому возвращаемся к примеру и нарежем подсети так, как нам нужно.

Итак, какие подсети должны быть нарезаны, чтобы вместились все адреса, заданные по условию?!

1) Для 10 хостов, наименьшей подсетью будет блок из 16 адресов.
2) Для 42 хостов, наименьшей подсетью будет блок из 64 адресов.
3) Для 2 хостов, наименьшей подсетью будет блок из 4 адресов.
4) Для 26 хостов, наименьшей подсетью будет блок из 32 адресов.

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

Вот у нас блок, состоящий из 256 адресов.

После деления на 4 части получается следующая картинка.

Выше мы выяснили, что при таком раскладе адреса используются не рационально. Теперь обратите внимание, как стало выглядеть адресное пространство после нарезки подсетей разной длины.

Как видите, в свободном доступе осталось куча адресов, которые мы в дальнейшем сможем использовать. Можно посчитать точную цифру. 256 — (64 + 32 + 16 + 4) = 140 адресов.

Вот столько адресов мы сэкономили. Двигаемся дальше и ответим на следующие вопросы:

— Какими будут сетевые и широковещательные адреса?
— Какие адреса можно будет назначить хостам?
— Как буду выглядеть маски?

Механизм деления на подсети с разной маской получил название VLSM (от англ. Variable Length Subnet Mask) или маска подсети переменной длины. Дам важный совет! Начинайте адресацию с самой большой подсети. Иначе вы можете попасть на то, что адреса начнут перекрываться. Поэтому сначала планируйте сеть на бумаге. Нарисуйте ее, изобразите в виде фигур, просчитайте вручную или на калькуляторе и только потом переходите настройке в боевых условиях.

Итак, самая большая подсеть состоит из 64 адресов. С нее и начнем. Первый пул адресов будет следующий:

Адрес подсети — 192.168.1.0.
Широковещательный адрес — 192.168.1.63.
Пул адресов для назначения хостам от 192.168.1.1 до 192.168.1.62.
Теперь выбор маски. Тут все просто. Отнимаем от целой сети нужный кусок и полученное число записываем в октет маски. То есть 256 — 64 = 192 => маска 255.255.255.192 или /26.

Дальше идет подсеть поменьше. Состоит она из 32 адресов. Если первая заканчивалась на .63, то эта будет начинаться с .64:

Адрес подсети — 192.168.1.64.
Широковещательный адрес — 192.168.1.95.
Пул адресов для назначения хостам будет от 192.168.1.65 до 192.168.1.94.
Маска: 256 — 32 = 224 => 255.255.255.224 или /27.

3-я подсеть, которая предназначена для филиала, начнет старт с .96:

Адрес подсети — 192.168.1.96.
Широковещательный адрес — 192.168.1.111.
Пул адресов для назначения хостам будет от 192.168.1.97 до 192.168.1.110.
Маска: 256 — 16 = 240 => 255.255.255.240 или /28.

Ну и для последней подсети, которая уйдет под интерфейсы, соединяющие роутеры, будет начинаться с .112:

Адрес подсети — 192.168.1.112.
Широковещательный адрес — 192.168.1.115.
Разрешенными адресами будут 192.168.1.113 и 192.168.1.114.
Маска: 256 — 4 = 252 => 255.255.255.252 или /30.

Замечу, что адрес 192.168.1.115 является последним используемым адресом. Начиная с 192.168.1.116 и до .255 свободны.

Вот таким образом, при помощи VLSM или масок переменной длины, мы экономно создали 4 подсети с нужным количеством адресов в каждой. Думаю это стоит закрепить задачкой для самостоятельного решения.

Задача №3

Разделите сеть 192.168.1.0/24 на 3 разные подсети. Найдите и запишите в каждой подсети ее адреса, широковещательный адрес, пул разрешенных к выдаче адресов и маску. Указываю требуемые размеры подсетей:

1) Подсеть на 120 адресов.
2) Подсеть на 12 адресов.
3) Подсеть на 5 адресов.

Ответ

1) Адрес подсети — 192.168.1.0.
Широковещательный адрес — 192.168.1.127.
Пул адресов для назначения хостам будет от 192.168.1.1 до 192.168.1.126.
Маска: 256 — 128 = 128 => 255.255.255.128 или /25.

2) Адрес подсети — 192.168.1.128.
Широковещательный адрес — 192.168.1.143.
Пул адресов для назначения хостам будет от 192.168.1.129 до 192.168.1.142.
Маска: 256 — 16 = 240 => 255.255.255.240 или /28.

3) Адрес подсети — 192.168.1.144.
Широковещательный адрес — 192.168.1.151.
Пул адресов для назначения хостам будет от 192.168.1.145 до 192.168.1.150.
Маска: 256 — 8 = 248 => 255.255.255.248 или /29.

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

Представим, что у меня компания состоящая из главного здания и корпусов. Я работаю в главном здании, а в корпусах коллеги. Хоть у меня и главное здание, но в нем всего 4 подсети:

— 192.168.0.0/24
— 192.168.1.0/24
— 192.168.2.0/24
— 192.168.3.0/24

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

Посмотрите внимательно на таблицу. Как видите, у 4 подсетей первые 22 бита одинаковые. Соответственно, если я возьму 192.168.0.0 с маской /22 или 255.255.252.0, то покрою свои 4 подсети. Но обратите внимание на 5 подсеть, которую я специально ввел. Это подсеть 192.168.4.0. 22-ой бит у нее отличается от предыдущих 4-х, а значит выше выбранное не покроет эту подсеть.
Ок. Теперь я отправлю коллегам суммированную подсеть, и, если они все правильно пропишут, то маршрутизация до моих подсетей будет работать без проблем.

Возьмем тот же пример и немного изменим условия. Нас попросили прислать суммарный маршрут для подсетей 192.168.0.0 и 192.168.1.0. Я не поленюсь и создам еще одну таблицу.

Обратите внимание, что у 2 первых подсетей одинаковые не 22 бита, а 23 бита. Это значит, что их можно просуммировать еще компактнее. В принципе работать будет и так, и так. Но как говорилось в одной рекламе: «Если нет разницы — зачем платить больше?». Поэтому старайтесь суммировать, не задевая при этом соседние подсети.

Таким образом, переводя подсети в двоичный формат и находя одинаковые биты, можно их суммировать.

Вообще суммирование полезно применять, когда надо объединить несколько подсетей, расположенных вблизи друг с другом. Это позволит сэкономить ресурсы маршрутизаторов. Однако это не всегда возможно. Просуммировать, например, подсеть 192.168.1.0 и 192.168.15.0, не захватив при этом соседние подсети, невозможно. Поэтому перед суммированием стоит подумать над ее целесообразностью. Поэтому повторюсь еще раз, что начинать какую-либо революцию надо на бумажке. Ну и для закрепления материала оставлю небольшую задачу.

Задача №4

Даны 4 подсети:

1) 10.3.128.0
2) 10.3.129.0
3) 10.3.130.0
4) 10.3.131.0

Просуммируйте подсети и найдите маску, которая сможет покрыть их, не задевая при этом соседние подсети.

Ответ


Исходя из этого, ответом будет 10.3.128.0/22 (255.255.252.0)

Пришло время закругляться. Статья получилась не очень длинной. Я бы даже сказал наоборот. Но все, что требует знать Cisco про IPv4, мы рассмотрели. Самое главное, что требуется от вас — это научиться работать с адресами и масками и уметь конвертировать их из десятичной в двоичную и обратно. Ну и, конечно, правильно делить на подсети и распределять адресное пространство. Спасибо, что дочитали. А если еще и задачки все сами прорешали, то цены вам нет) А если еще не прорешали, то приятного времяпровождения.

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

Чтобы узнать IP-адрес вашего устройства, можно открыть терминал и ввести ipconfig в Windows или ifconfig в macOS и Linux:

Вывод команды ipconfig
Скриншот: Skillbox Media

Чаще всего это четыре числа, которые разделены между собой точками (такой формат поддерживается в протоколе IPv4). Например, вот один из самых популярных IP-адресов — вы могли вводить его, чтобы зайти на свой роутер:

Изображение: Skillbox Media

Каждое из чисел в адресе — это восьмизначное двоичное число, или октет. Оно может принимать значения от 0000 0000 до 1111 1111. Или же от 0 до 255 в десятичной системе счисления — то есть 256 разных значений.

Получается, диапазон IP-адресов стартует с 0.0.0.0 и заканчивается 255.255.255.255. Если посчитать количество всех адресов в этом диапазоне, получится 4 294 967 296.

Формат адресов IPv4 — не единственный, хоть и один из самых популярных в интернете. Есть ещё стандарт IPv6 — его адреса состоят уже из 128 битов (в IPv4 — 32 бита). Таким образом, IPv6 позволяет пронумеровать 2128 устройств (по 300 миллионов на каждого жителя Земли).

Ниже мы будем говорить только об IPv4, однако эти принципы хорошо ложатся и на IPv6.

На самом деле IP-адрес — это чуть больше, чем просто набор чисел. Он всегда состоит из двух частей: номера хоста (устройства) и номера сети.

Например, IPv4-адрес 192.168.1.34 состоит из таких смысловых частей:

Скриншот: Skillbox Media

В нём первые три числа означают номер сети, а четвёртое — номер хоста (то есть вашего устройства). Все устройства, идентификаторы которых начинаются с 192.168.1, находятся в одной сети.

Инфографика: Skillbox Media

Устройство, идентификатор которого начинается, например, с 192.168.2, будет принадлежать к другой сети и не сможет связываться с устройствами из сети 192.168.1. Чтобы это сделать, понадобится роутер, который соединит две сети между собой.

Он будет мостом, по которому данные переходят из одной сети в другую. Если же говорить техническим языком, то роутер — это сеть более высокого уровня, которая объединяет несколько подсетей. Со стороны это будет выглядеть так, будто у роутера есть устройства, которым он передаёт данные и которые могут связываться между собой.

Инфографика: Skillbox Media

Номер сети может храниться не только в первых трёх октетах, но и в первых двух или даже в одном. Остальные числа — это номера устройств в сети.

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

  • Если первый бит — это 0, значит, компьютер имеет дело с большой сетью, на которую указывает только одно, самое первое число.

При этом первый бит у нас уже зарезервирован под такой «свитч», поэтому всего таких сетей может быть 128 (от нуля до 127), а устройств в них — более 16 миллионов.

Изображение: Skillbox Media
  • Если первые два бита — это 10 (то есть 2 в десятичной системе счисления), значит, IP-адрес принадлежит к средней сети и использует два числа как указатель на неё.

У такого адреса уже зарезервировано два первых бита, а значит, для номера сети остаётся только 14 битов — это более 16 тысяч сетей и более 65 тысяч устройств.

Изображение: Skillbox Media
  • Если первые три бита — это 110, значит, компьютеру попался IP-адрес из маленькой сети, в качестве указателей на которую используются только три первых числа.

Всего таких сетей существует более двух миллионов, а подключаемых устройств в каждой — 256. Диапазон значений — от 192.0.0.0 и до 223.255.255.0 (223 — потому что у нас зарезервировано три бита).

Изображение: Skillbox Media

Все эти виды IP-адресов имеют свои названия: класс A, B и C. Класс А — это большие сети, B и C — средние и маленькие. Кроме них существуют ещё сети класса D и E. В них входят зарезервированные адреса — например, 127.0.0.0 или 192.168.X.X. Первый указывает сам на себя — когда он отправляет данные по этому адресу, они тут же приходят обратно (его ещё называют localhost). А второй — это стандартный идентификатор интернет-модемов и Wi-Fi-роутеров.

Бывает, что хостов в сети больше, чем доступных IP-адресов, — в современном интернете дела обстоят именно так. В этом случае интернет-провайдеры выдают устройствам адреса формата IPv6. При этом адрес IPv4 можно легко переделать в формат IPv6, а вот в обратную сторону это уже не работает.

Однако не все интернет-провайдеры перешли на новую версию IP-адресов, и это создало новую проблему: невозможно напрямую отправлять данные с устройств, поддерживающих IPv4, на устройства с IPv6. Проблему решили с помощью туннелирования — создали специальный канал между двумя устройствами, по которому обмениваются информацией между сетями с разными версиями протокола.

Маска подсети — это более удобный способ разделить IP-адрес на номер сети и номер хоста. Она пришла на смену алгоритму, который мы описали выше. Маска подсети состоит из тех же четырёх чисел и похожа на IP-адрес:

Изображение: Skillbox Media

В двоичном представлении такая маска выглядит как 1111 1111 0000 0000. Нули показывают, где находится номер хоста, а единицы — номер сети.

Чтобы применить маску, нужно воспользоваться логическими операторами «И» и «НЕ». Первый работает по следующим правилам:

Изображение: Skillbox Media

Оператор «НЕ» просто меняет все нули на единицы, а единицы на нули. И делает он это справа налево:

Изображение: Skillbox Media

Давайте применим к IP-адресу 192.168.1.34 маску подсети 255.255.255.0:

Изображение: Skillbox Media

На картинке показано, как мы сначала перевели IP-адрес и маску подсети в двоичную систему счисления. А затем побитово справа налево применили операцию логического «И». Маска помогла удалить ненужную часть адреса, и мы выделили номер сети — 192.168.1.0.

Чтобы выделить номер хоста, нужно сначала применить операцию логического «НЕ» к маске подсети, а затем — операцию логического «И» к IP-адресу и полученной маске:

Изображение: Skillbox Media

Так мы получили маску для выделения номера устройства. А теперь применим операцию логического «И»:

Изображение: Skillbox Media

У нас получился адрес 0.0.0.34. Это и есть номер хоста.

Обычно маска задаётся программистами в настройках серверов или пользователями в настройках системы. Например, на MacBook маску подсети можно посмотреть в разделе «Сеть» → «Дополнительные настройки»:

Скриншот: Skillbox Media

Маска показывает, сколько битов включает в себя номер сети. Например, у большой сети номером будет только первое число (8 битов), а маска будет состоять из восьми единиц и 24 нулей: 255.0.0.0.

Если IP-адрес принадлежит к маленькой сети, то первые три числа в нём будут представлять номер сети. Значит, маска будет выглядеть так: 255.255.255.0.

Есть и слегка необычные маски подсетей — например, 255.255.254.0. Они тоже означают, сколько битов используется в номере сети. Только в данном случае их будет 23 — по 8 в первых двух числах и 7 в третьем. Остальные биты будут принадлежать номеру хоста.

Выделять номера хостов и сетей удобно, но это не самая интересная часть использования масок. Их главная суперсила — умение разделять большие сети на несколько маленьких.

Допустим, у нас есть номер сети 185.12.0.0 с маской 255.255.0.0. В такой сети может быть более 65 тысяч устройств, чего вполне хватит, чтобы вместить все компьютеры в одном большом офисе.

Но что если у нас есть несколько маленьких офисов в одном здании, и мы хотим их все подключить к сети? Создавать новую сеть с 65 тысячами IP-адресов для каждого офиса нерационально. Поэтому мы можем разбить сеть 185.12.0.0 на подсети.

Для этого вместо маски 255.255.0.0 мы возьмём маску 255.255.255.0. Так у нас появится 256 новых подсетей внутри одной большой. При этом в каждой подсети будет по 256 устройств.

Если в офисе понадобится больше устройств, мы можем взять другую маску — например, 255.255.254.0. И теперь нам будет доступно 512 устройств, а количество подсетей сократится до 128.

IP-адреса нужны, чтобы передавать данные внутри сетей. Их делят на классы A, B и C — для больших, средних и маленьких сетей. Ещё есть классы D и E, но они нужны для служебных задач.

Логически IP-адрес поделён на номер сети и номер хоста (устройства). Эти части позволяют определить, к какой сети подключено устройство и какой у него номер.

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

Ещё маски позволяют создавать подсети внутри одной сети. В этом случае подсети будут соединены одним компьютером, который похож на роутер. Он помогает хостам из разных сетей общаться между собой.

Содержание

  1. Задача №12. Адресация в интернете. Восстановление IP- адресов, определение адреса сети, определение количества адресов и номера компьютера в сети.
  2. Как найти номер компьютера в сети по ip и маске
  3. Информатика ЕГЭ 12 задание разбор
  4. Объяснение заданий 12 ЕГЭ по информатике
  5. Адресация в Интернете
  6. Сетевые адреса
  7. Расчет номера сети по IP-адресу и маске сети
  8. Порядковый номер компьютера в сети
  9. Число компьютеров в сети
  10. Решение заданий 12 ЕГЭ по информатике
  11. Ip-адрес и доменное имя сайта: правила построения
  12. Определение адреса сети по IP-адресу и маске сети
  13. Определение маски сети
  14. Количество различных значений маски
  15. Определение номера компьютера
  16. Количество адресов компьютеров
  17. Приступаем к решению

Задача №12. Адресация в интернете. Восстановление IP- адресов, определение адреса сети, определение количества адресов и номера компьютера в сети.

Адрес документа в Интернете состоит из следующих частей:

IP-адрес состоит из двух частей: адреса сети и номера компьютера в этой сети. Для деления адреса на части используют маску. Маска – это 32-битное число, в двоичной записи которого сначала стоят единицы, а потом – нули. Единицы определяют часть адреса, относящуюся к адресу сети, а нули – часть адреса, относящуюся к номеру компьютера в сети.

Адрес файла в интернете

A .net
Б ftp
В ://
Г http
Д /
Е .org
Ж txt

При записи адреса файла в интернете сначала указывается протокол, затем ставится последовательность символов ://, затем имя сервера, затем символ /, и лишь потом имя файла: http://txt.org/ftp.net.

Восстановление IP-адресов

Петя за­пи­сал IP-адрес школь­но­го сер­ве­ра на лист­ке бу­ма­ги и по­ло­жил его в кар­ман куртки. Пе­ти­на мама слу­чай­но по­сти­ра­ла курт­ку вме­сте с за­пис­кой. После стир­ки Петя обнаружил в кар­ма­не че­ты­ре об­рыв­ка с фраг­мен­та­ми IP-ад­ре­са. Эти

фрагменты обо­зна­че­ны бук­ва­ми А, Б, В и Г. Вос­ста­но­ви­те IP-адрес. В от­ве­те ука­жи­те по­сле­до­ва­тель­ность букв, обо­зна­ча­ю­щих фраг­мен­ты, в по­ряд­ке, со­от­вет­ству­ю­щем IP-ад­ре­су.

by4

IP-адрес пред­став­ля­ет собой 4 числа, разделенные точ­ка­ми, при­чем эти числа не боль­ше 255.

По­смот­рим вни­ма­тель­нее на дан­ные фраг­мен­ты: под бук­вой Г мы видим «.42». Так как числа в IP-ад­ре­се не могут быть боль­ше 255, мы не можем ничего дописать к этому числу, а фраг­мен­тов, на­чи­на­ю­щих­ся с точки, боль­ше нет, сле­до­ва­тель­но, этот фраг­мент – по­след­ний.

На фрагменте под буквой Б число без точек, зна­чит, это либо по­след­ний фраг­мент, либо пер­вый. Место по­след­не­го фраг­мен­та уже за­ня­то, зна­чит фраг­мент Б первый.

Определение адреса сети

По за­дан­ным IP-ад­ре­су узла и маске опре­де­ли­те адрес сети.

IP-адрес узла: 218.137.218.137

При за­пи­си от­ве­та вы­бе­ри­те из при­ведённых в таб­ли­це чисел че­ты­ре эле­мен­та IP-ад­ре­са и за­пи­ши­те в нуж­ном по­ряд­ке со­от­вет­ству­ю­щие им буквы без ис­поль­зо­ва­ния точек.

При за­пи­си от­ве­та вы­бе­ри­те из при­ве­ден­ных в таб­ли­це чисел 4 фраг­мен­та че­ты­ре эле­мен­та IP-ад­ре­са и за­пи­ши­те в нуж­ном по­ряд­ке со­от­вет­ству­ю­щие им буквы без точек.

Источник

Как найти номер компьютера в сети по ip и маске

Маской подсети называется 32-разрядное двоичное число, которое определяет, какая часть IP-адреса компьютера относится к адресу сети, а какая часть IP-адреса определяет адрес компьютера в подсети. В маске подсети старшие биты, отведенные в IP-адресе компьютера для адреса сети, имеют значение 1; младшие биты, отведенные в IP-адресе компьютера для адреса компьютера в подсети, имеют значение 0.

Если маска подсети 255.255.255.224 и IP-адрес компьютера в сети 162.198.0.157, то порядковый номер компьютера в сети равен_____

2. Запишем число 224 в двоичном виде.

8870d80ff9a60c1df1cb8b00ccec7805

3. Запишем последний октет IP-адреса компьютера в сети:

48907880364d55008a3db17fd68362d9

4. Сопоставим последний октет маски и адреса компьютера в сети:

Жирным выделена нужная нам часть, отвечающая (по условию) за адрес компьютера в подсети. Переведем её в десятичную систему счисления:

4a50c875a8593ecab3c819b8b57d320a.

Маской подсети называется 32-разрядное двоичное число, которое определяет, какая часть IP-адреса компьютера относится к адресу сети, а какая часть IP-адреса определяет адрес компьютера в подсети. В маске подсети старшие биты, отведенные в IP-адресе компьютера для адреса сети, имеют значение 1; младшие биты, отведенные в IP-адресе компьютера для адреса компьютера в подсети, имеют значение 0.

Если маска подсети 255.255.255.192 и IP-адрес компьютера в сети 10.18.134.220, то номер компьютера в сети равен_____

2. Запишем число 192 в двоичном виде.

62857f1f86887c242789869758b9dfd4

3. Запишем последний октет IP-адреса компьютера в сети:

5c9fb3240a47496302f7a89bf7344887

4. Сопоставим последний октет маски и адреса компьютера в сети:

Жирным выделена нужная нам часть. Переведем её в десятичную систему счисления:

4c37361a1a8a964c2f19f5afa6c67f18.

Маской подсети называется 32-разрядное двоичное число, которое определяет, какая часть IP-адреса компьютера относится к адресу сети, а какая часть IP-адреса определяет адрес компьютера в подсети. В маске подсети старшие биты, отведенные в IP-адресе компьютера для адреса сети, имеют значение 1; младшие биты, отведенные в IP-адресе компьютера для адреса компьютера в подсети, имеют значение 0.

Если маска подсети 255.255.248.0 и IP-адрес компьютера в сети 112.154.133.208, то номер компьютера в сети равен_____

2. Запишем число 248 в двоичном виде.

2f528f01058ce53166317ec5d43105b2

Итого, последние два октета маски записываются как 11111000 00000000

3. Запишем последние два октета IP-адреса компьютера в сети:

b47c0d3d5e3162c151bbd33519c61538

61e4318aa423b2b882675059cc9fa1a0

Итого, последние два октета IP-адреса компьютера в сети записываются так: 10000101 11010000

4. Сопоставим последние октеты маски и адреса компьютера в сети:

Жирным выделена нужная нам часть. Переведем её в десятичную систему счисления:

26b67ecfd48e6b6b3888a809603cd189.

Маской подсети называется 32-разрядное двоичное число, которое определяет, какая часть IP-адреса компьютера относится к адресу сети, а какая часть IP-адреса определяет адрес компьютера в подсети. В маске подсети старшие биты, отведенные в IP-адресе компьютера для адреса сети, имеют значение 1; младшие биты, отведенные в IP-адресе компьютера для адреса компьютера в подсети, имеют значение 0.

Если маска подсети 255.255.224.0 и IP-адрес компьютера в сети 206.158.124.67, то номер компьютера в сети равен_____

2. Запишем число 224 в двоичном виде.

8870d80ff9a60c1df1cb8b00ccec7805

Итого, последние два октета маски записываются как 11100000 00000000

3. Запишем последние два октета IP-адреса компьютера в сети:

9be312ad0342da2b6f97a2714cba2a5f

cbf32a660fcd4cc41b2a9233e7e29687

Итого, последние два октета IP-адреса компьютера в сети записываются так: 01111100 01000011

4. Сопоставим последние октеты маски и адреса компьютера в сети:

Жирным выделена нужная нам часть. Переведем её в десятичную систему счисления:

e5e7ac110bed7415cab3c2524321a84e.

2. Запишем число 254 в двоичном виде.

534ae6506367bb3b267f615b6264240d

В конце этого числа стоит 1 ноль, еще 8 нолей мы получаем из последнего октета маски. Итого у нас есть 9 двоичных разрядов для того, чтобы записать адрес компьютера.

3. 9ffd5121b6fb3a977449a5b367c430a2но, так как два адреса не используются, получаем 2e0c898e641d76380c8a57fe6e21e8b0

Источник

Информатика ЕГЭ 12 задание разбор

Объяснение заданий 12 ЕГЭ по информатике

Адресация в Интернете

Адрес документа в Интернете (с английского — URL — Uniform Resource Locator) состоит из следующих частей:

Каталоги на сервере разделяются прямым слэшем «/»

1 127

Сетевые адреса

Физический адрес или MAC-адрес – уникальный адрес, «вшитый» на производстве — 48-битный код сетевой карты (в 16-ричной системе):

IP-адрес – адрес компьютера (32-битное число), состоящий из: номер сети + номер компьютера в сети (адрес узла):

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

1 89

Та часть IP-адреса, которая соответствует битам маски равным единице, относится к адресу сети, а часть, соответствующая битам маски равным нулю – это числовой адрес компьютера

1 11 4

Расчет номера сети по IP-адресу и маске сети

1 1 12

Порядковый номер компьютера в сети

2

Число компьютеров в сети

Если маска:
1 11 31
То число компьютеров в сети:

Из них 2 специальных: адрес сети и широковещательный адрес

Решение заданий 12 ЕГЭ по информатике

Ip-адрес и доменное имя сайта: правила построения

На месте преступления были обнаружены четыре обрывка бумаги. Следствие установило, что на них записаны фрагменты одного IP-адреса. Криминалисты обозначили эти фрагменты буквами А, Б, В и Г. Восстановите IP-адрес. В ответе укажите последовательность букв, обозначающих фрагменты, в порядке, соответствующем IP-адресу.
000 69

Ответ: ВГАБ

На сервере school.edu находится файл rating.net, доступ к которому осуществляется по протоколу http. Фрагменты адреса данного файла закодированы буквами а, Ь, с… g (см. таблицу). Запишите последовательность этих букв, которая кодирует адрес указанного файла в Интернете.

Ответ:fgbadec

Определение адреса сети по IP-адресу и маске сети

По заданным IP-адресу узла сети и маске определите адрес сети:

При записи ответа выберите из приведенных в таблице чисел четыре элемента IP-адреса и запишите в нужном порядке соответствующие им буквы без точек.

A B C D E F G H
145 255 137 128 240 88 92

✍ Решение:

Результат: BHEA

Предлагаем посмотреть подробный видеоразбор:

Определение маски сети

Например, если IP-адрес узла равен 211.132.255.41, а маска равна 255.255.201.0, то адрес сети равен 211.132.201.0

Для узла с IP-адресом 200.15.70.23 адрес сети равен 200.15.64.0. Чему равно наименьшее возможное значение третьего слева байта маски? Ответ запишите в виде десятичного числа.

✍ Решение:

Результат: 192

Пошаговое решение данного 12 задания ЕГЭ по информатике доступно в видеоуроке:

Например, если IP-адрес узла равен 231.32.255.131, а маска равна 255.255.240.0, то адрес сети равен 231.32.240.0.

Для узла с IP-адресом 57.179.208.27 адрес сети равен 57.179.192.0. Каково наибольшее возможное количество единиц в разрядах маски?

✍ Решение:

Результат: 19

Подробное решение 12 задания демоверсии ЕГЭ 2018 года смотрите на видео:

Два узла, находящиеся в разных подсетях, имеют IP-адреса 132.46.175.26 и 132.46.170.130. В масках обеих подсетей одинаковое количество единиц. Укажите наименьшее возможное количество единиц в масках этих подсетей.

Ответ: 22

Количество различных значений маски

Для узла с IP-адресом 93.138.161.94 адрес сети равен 93.138.160.0. Для скольких различных значений маски это возможно?

✍ Решение:

Результат: 5

Видеоразбор задания:

Определение номера компьютера

Если маска подсети 255.255.255.128 и IP-адрес компьютера в сети 122.191.12.189, то номер компьютера в сети равен _____.

✍ Решение:

Результат: 61

Подробное решение данного задания смотрите на видео:

Количество адресов компьютеров

Для некоторой подсети используется маска 255.255.255.192. Сколько различных адресов компьютеров теоретически допускает эта маска, если два адреса (адрес сети и широковещательный) не используют?

✍ Решение:

Результат: 62

Видеоразбор задания смотрите ниже:

Источник

small

На этом уроке будем проходить, как решать 12 задание из ЕГЭ по информатике

Тематика двенадцатого задания из ЕГЭ по информатике затрагивает организацию компьютерных сетей, адресацию, протоколы передачи данных.

Перейдём непосредственно к решению типовых задач.

Например, если IP-адрес узла равен 231.32.255.131, а маска равна 255.255.240.0, то адрес сети равен 231.32. 240.0.

Для узла с IP-адресом 111.81.88.168 адрес сети равен 111.81.88.160.

Найдите наименьшее значение последнего байта маски. Ответ запишите в виде десятичного числа.

В подобных задачах в первых двух абзацах даётся краткая теория, которая почти не меняется от задаче к задаче. Сам вопрос, который нас интересует, находится в последних двух абзацах!

Чтобы понять суть происходящего, выпишем IP-адрес, под ним адрес сети, пропустив свободную строчку. В свободной строчке мы должны записать байты маски.

Маска так же, как и IP-адрес, адрес сети, состоит из четырёх десятичных чисел (байт), которые не могут превышать значение 255.

ege po informatike zadanie 12 bayti maski

Рассмотрим левый столбик. В IP-адресе и в адресе сети одинаковое число 111. Значит, первый слева байт маски равен числу 255

Если записать числа в двоичной системе в виде 8 разрядов (1 байта) (в случае, когда число в двоичном представлении имеет меньше 8 (восьми) разрядов, нужно дополнить старшие разряды нулями до 8 разрядов), то поразрядное логическое умножение двоичных разрядов байта IP-адреса и байта маски должно давать байт адреса сети

ege po informatike zadanie 12 logicheskoye umnozhenie bayta ip adresa i bayta maska

ege po informatike zadanie 12 ne verniy bayt maski

Существует ещё одно правило формирования байтов маски: Если нули в маске пошли, то их НЕ ОСТАНОВИТЬ!

Т.е. если мы хотя бы один нолик в двоичном представлении числа байта маски поставили, то все правые разряды обязаны занулить.

ege po informatike zadanie 12 ne verniy bayt maski2

Но тогда у нас не получится число 111 (011011112) в байте адреса сети.

Более того, правило, что нули не остановить, сработает и для правых байтов. Т.е. если мы нолик поставили в двоичном представлении левого байта маски, то должны занулять и все правые байты!

ege po informatike zadanie 12 osnovnoye pravilo formirovaniya maski

Т.е. если соединить все байты маски в двоичном представлении, у нас будет только один переход от единиц к нулям.

После того, как разобрались с теорией, перейдём к нашей задаче!

Теперь мы понимаем, что три левых байта маски могут принимать значение только 255 (В двоичном представлении все единицы 111111112), из-за того, что совпадают числа IP-адреса и адреса сети в трёх левых байтах. К тому же, если бы попался хотя бы один нолик, в этих байтах, правые байты бы занулились!

ege po informatike zadanie 12 neizvestno znacheniye poslednego bayata

Значение последнего байта маски нужно проанализировать и сделать его как можно меньшим, исходя из условия задачи.

Приступаем к решению

Ⅰ) Переводим числа 168 и 160 в двоичную систему счисления.

ege po informatike zadanie 12 perevod chisla v dvoichnuyu sistemu

Число 168 в двоичной системе будет 101010002.

ege po informatike zadanie 12 perevod chisla v dvoichnuyu sistemu2

Число 160 в двоичной системе будет 101000002.

Ⅱ) Записываем байт IP-адреса и под ним, пропустив свободную строчку для байта маски, записываем байт адреса сети. Здесь уже 8 разрядов в каждом двоичном числе, поэтому не нужно дополнять нулями старшие разряды.

ege po informatike zadanie 12 ishem bayt maski

Видно, что можно поставить пять нулей справа в байте маски.

ege po informatike zadanie 12 bayt maski s naimenshim znacheniem

В шестой разряд справа уже нельзя поставить 0, потому что 1 * 0 будет 0, а должна быть 1! Плюс ко всему, если мы единицу поставили, дальше влево должны идти только единицы, чтобы не нарушалось главное правило составления маски.

Примечание: Мы забили нулями по максимуму байт маски, но так же было бы корректно байт маски представить в таком виде 111100002, однако такое представление не делает байт маски минимальным в числовом значении.

Переводим в десятичную систему получившийся минимальный из возможных в числовом значении байт маски 111000002.

0 * 2 0 + 0 * 2 1 + 0 * 2 2 + 0 * 2 3 + 0 * 2 4 + 1 * 2 5 + 1 * 2 6 + 1 * 2 7 = 224
Ответ: 224

Задача (ЕГЭ по информатике, 2019, Москва)

Например, если IP-адрес узла равен 231.32.255.131, а маска равна 255.255.240.0, то адрес сети равен 231.32. 240.0.

Для узла с IP-адресом 113.191.169.34 адрес сети равен 113.191.160.0

Чему равно наибольшее возможное количество нулей в разрядах маски сети?

В этой задаче нужно понять, какое может быть максимальное число нулей во всей маске (в 4 байтах).

Выпишем IP-адрес, под ним адрес сети, пропустив строчку, куда запишем байты маски.

ege po informatike zadanie 12 maksimalnoye kolichestvo nuley v maske

Первые слева два байта маски равны 255 (111111112), потому что два числа слева IP-адреса равны двум числам слева адреса сети.

Второй байт маски справа уже имеет в своих разрядах некоторое количество нулей, т.к. соответствующие числа IP-адреса и адреса сети различаются! Различие могут сделать только нули в байте маски!

Видно, что нули начинаются во втором справа байте маски, а если нули пошли, то их не остановить, поэтому самый первый байт маски справа полностью занулён, и в двоичной системе представляет собой 8 нулей. Из-за этого самый правый байт адреса сети тоже полностью занулён! (Ведь каждый разряд двоичного представления числа 34 умножен на 0)

Проанализируем второй справа байт маски.

1) Переведём числа 169 и 160 в двоичную систему.

Число 160 переводили в предыдущей задаче. Получилось число 101000002.

ege po informatike zadanie 12 perevod chisla v dvoichnuyu sistemu3

Получилось, что число 169 в двоичной системе 101010012.

2) Выписываем байт IP-адреса и под ним, пропустив строчку для байта маски, байт адреса сети.

ege po informatike zadanie 12 maksimalnoye kolichestvo nuley v bayte maski

Начинаем забивать нулями справа байт маски. Пять нулей можно записать, потому что в 5 разрядах справа адреса сети стоят нули, и логическое умножение разрядов будет верно исполняться.

В шестом разряде справа в байте адреса сети стоит 1. В соответствующем разряде байта IP-адреса тоже 1. Значит и в соответствующем разряде байта маски тоже должна быть 1. (Если мы поставим ноль то получится 1*0=1, что неверно!).

Если единицы влево пошли, то их тоже уже не остановить в байте маски.

Примечание: Допустимо было значение 111100002 для байта маски, но нам нужно максимальное количество нулей!

5 нулей в байте маски, и в самом правом байте 8 нулей. Значит, ответ будет 5 + 8 = 13 нулей во всей маске.

В терминологии сетей TCP/IP маской сети называется двоичное число, определяющее, какая часть IP-адреса узла сети относится к адресу сети, а какая – к адресу самого узла в этой сети. При этом в маске сначала (в старших разрядах) стоят единицы, а затем с некоторого места – нули. Обычно маска записывается по тем же правилам, что и IP-адрес – в виде четырёх байтов, причём каждый байт записывается в виде десятичного числа. Адрес сети получается в результате применения поразрядной конъюнкции к заданному IP-адресу узла и маске.

Например, если IP-адрес узла равен 231.32.255.131, а маска равна 255.255.240.0, то адрес сети равен 231.32.240.0.

Для узла с IP-адресом 93.138.70.47 адрес сети равен 93.138.64.0. Каково наибольшее возможное общее количество единиц во всех четырёх байтах маски? Ответ запишите в виде десятичного числа.

Напишем общую ситуацию для IP-адреса и адреса сети.

ege po informatike zadanie 12 naibolshee kolichestvo edinic

Переведём числа 70 и 64 в двоичную систему, чтобы узнать второй справа байт маски.

ege po informatike zadanie 12 perevodim v dvoichnuyu sistemu4

Число 70 в двоичной системе 10001102.

ege po informatike zadanie 12 perevodim v dvoichnuyu sistemu5

Число 64 в двоичной системе 10000002.

Дополняем старшие разряды нулями, чтобы всего было 8 разрядов!

ege po informatike zadanie 12 maksimalnoye kolichestvo edinic v maske

Начинаем забивать единицы слева в байте маске. В 5 разрядах слева это можно сделать, но в шестом слева разряде должны поставить 0. Если поставить единицу получится 1*1=1, а должен получится ноль в разряде адреса сети.

А если нули пошли, то их не остановить.

Примечание: Варианты для байта маски могли быть следующие: 110000002, 111000002, 111100002, 111110002, но мы выбрали тот, где больше всего единиц, исходя из условия задачи.

Во втором справа байте маски получилось наибольшее количество получилось 5 единиц. Тогда ответ будет 8 + 8 + 5 = 21 единица во всех 4 байтах маски.

Задача (Редкая, адреса компьютеров)

В терминологии сетей TCP/IP маской подсети называется 32-разрядное двоичное число, определяющее, какие именно разряды IP-адреса компьютера являются общими для всей подсети – в этих разрядах маски стоит 1. Обычно маски записываются в виде четверки десятичных чисел – по тем же правилам, что и IP-адреса. Для некоторой подсети используется маска 255.255.248.0. Сколько различных адресов компьютеров допускает эта маска?

Примечание. На практике для адресации компьютеров не используются два адреса: адрес сети и широковещательный адрес.

Здесь нам дана только маска и у этой задачи совсем другой вопрос. Ключевой фразой здесь является: «адресов компьютеров».

Для начала нужно узнать сколько нулей в маске (4 байтах).

Последний (самый правый байт полностью занулён), значит, 8 нулей уже есть. Нули начинаются во втором справа байте, ведь первые два байта маски имеют значение 255, что в двоичной системе обозначает 8 единиц (111111112)

Переведём число 248 в двоичную систему.

ege po informatike zadanie 12 perevodim v dvoichnuyu sistemu6

Число 248 в в двоичной системе будет 111110002.

Итого, во всей маске у нас получается 8 + 3 = 11 нулей!

Именно нули в маске показывают количество адресов компьютеров! Применяем формулу:

N = 2 11 = 2048 адресов компьютеров

Задача (Редкая, порядковый номер компьютера)

Маской подсети называется 32-разрядное двоичное число, которое определяет, какая часть IP-адреса компьютера относится к адресу сети, а какая часть IP-адреса определяет адрес компьютера в подсети. В маске подсети старшие биты, отведенные в IP-адресе компьютера для адреса сети, имеют значение 1; младшие биты, отведенные в IP-адресе компьютера для адреса компьютера в подсети, имеют значение 0.

Если маска подсети 255.255.255.224 и IP-адрес компьютера в сети 162.198.0.157, то порядковый номер компьютера в сети равен_____

В этой задаче ключевой фразой является: «порядковый номер компьютера». Нужно знать, как решать данную тренировочную задачу из ЕГЭ по информатике.

Первые 3 слева байты маски равны 255 (111111112), значит, они не участвуют в решении этой задачи.

Мы фокусируем внимание на том байте IP-адреса, под которым байт маски имеет не все единицы в своих разрядах.

Переведём числа 224 и 157 в двоичную систему.

ege po informatike zadanie 12 perevodim v dvoichnuyu sistemu7

Число 224 в двоичной системе равно 111000002.

ege po informatike zadanie 12 perevodim v dvoichnuyu sistemu8

Число 157 в двоичной системе равно 100111012.

Запишем друг под другом данные числа в двоичной системе

ege po informatike zadanie 12 poraydkoviy nomer komputera

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

Нужно перевести это двоичное число 111012 в десятичную систему, это и будет ответ.

Предположим IP адрес будет 162.198.157.10, а маска подсети 255.255.224.0, тогда запишем байты IP-адреса, а под ними байты маски:

100 11101 00001010
11100000 00000000

То берём всё равно ту часть ip-адреса, которая находится над нулями! Не ограничиваемся 8-ю разрядами!

На месте преступления были обнаружены четыре обрывка бумаги. Следствие установило, что на них записаны фрагменты одного IP-адреса. Криминалисты обозначили эти фрагменты буквами А, Б, В и Г. Восстановите IP-адрес. В ответе укажите последовательность букв, обозначающих фрагменты, в порядке, соответствующем IP-адресу.

ege po informatike zadanie 12 vosstanovite ip adres
Решение:

Основным правилом для данной тренировочной задачи из ЕГЭ по информатике является то, что каждое из четырёх чисел ip-адреса не может превышать значение 255.

Так же помним, что числа ip-адреса разделены точкой. Пробуем составить адрес. Он должен составляться единственным образом, не нарушая правила.

Получился такой ip-адрес:

ege po informatike zadanie 12 vosstanovlenniy ip adres

В этой задаче нужно пробовать составлять ip-адрес, пока не получится.

Доступ к файлу www.com, находящемуся на сервере http.txt, осуществляется по протоколу ftp. В таблице фрагменты адреса файла закодированы буквами от A до G. Запишите последовательность этих букв, кодирующую адрес указанного файла.

А B C D E F G
:// www .txt http ftp .com /

Решение:

В этой задачке из тренировочного варианта ЕГЭ по информатике мы должны пользоваться схемой составления адреса файла.

ege po informatike zadanie 12 adres faila

В ответе запишем EADCGBF

Источник

  • Главная

  • Инструкции

  • Сети и безопасность

  • Маска подсети: что такое и как узнать по IP

В статье рассмотрим, что такое и зачем нужна маска подсети. А начнем с того, как устроены IP-адреса, потому что от понимания структуры айпи зависит и понимание назначения маски подсети.

IP можно назвать указателями, которые заключают в себе данные о расположении устройств в сетях, организованным по протоколам TCP/IP, по которым работает большинство хостов (устройств, подключенных к сети). Благодаря этим адресам данные, посылаемые через Интернет или по внутренним сетям, попадают куда нужно.

IP-адрес в формате протокола IPv4 представляет собой 4 числа, разделенные точками. При этом каждое число сетевые устройства воспринимают в виде двоичного кода. Например, 127.0.0.0 — это 01111111.00000000.00000000.00000000, а 192.168.0.111000000.10101000.00000000.00000001.

Интересный факт: люди могут не знать IP компьютера, за которым работают, но если у них дома есть роутер, они прекрасно знают адрес 192.168.0.1. Именно по нему доступны в сети большинство маршрутизаторов.

Минимально возможное значение для айпи — 0.0.0.0, максимальное — 255.255.255.255, потому что протокол IPv4 поддерживает только 32-битные числа или 256 значений на каждую из 4 частей IP-адреса. При этом ряд диапазонов уже зарезервированы: например, диапазон 127.0.0.0127.255.255.255 используется для интерфейсов типа localhost. Адрес 192.168.0.1 — тоже один из примеров зарезервированного IP.

Первые три числа часто представляют собой номер сети, а последнее — номер хоста, конкретного устройства в этой сети. Теперь понятно, что сеть 192.168.0 зарезервирована для внутренних номеров, а последняя единица означает первое устройство (хост) в подобной сети, то есть маршрутизатор. Поэтому-то адрес маршрутизатора вот такой: 192.168.0.1. А почему не 192.168.0.0? Дело в том, что 0 используется в качестве адреса сети, поэтому конкретные хосты он обозначать не может.

Что такое и для чего нужна маска подсети

Для настройки интернет-соединения по TCP/IP также требуется указать, помимо IP-адреса, и маску подсети. Все сети подразделяются на несколько классов, которые маркируются литерами A, B, C (есть еще D и E — это специальные сети). Сети класса A (самые крупные) имеют вид «сеть-хост-хост-хост», B — «сеть-сеть-хост-хост» и C — «сеть-сеть-сеть-хост».

Однако системные администраторы, чтобы обеспечить всех достаточным количеством адресов, разбивают сети соответствующего класса на более мелкие структуры — подсети. И для подсети, конечно же, нужно задать границы. Для этого как раз и используется маска подсети.

Обычная запись маски подсети в сетях класса C: 255.255.255.0. Если не совсем понятно в десятичном виде, давайте преобразуем ее в двоичный код: 11111111.11111111.11111111.00000000. Первые три октета (октет — группа из 8 бит) — наборы единиц, а последний — нули. В маске подсети единицы идентифицируют сетевую часть, а нули — хосты. Сетевая часть неизменна, а вот с самым правым октетом, заполненным нулями, можно работать.

Нетрудно подсчитать, что здесь у нас поместится 256 устройств, если поставить все возможные комбинации нулей и единиц. Однако на самом деле не 256, а 254, первое (0) и последнее (255) значения зарезервированы. Про 0 мы уже говорили: 0 является адресом сети (в данном случае подсети), а 255 используется в качестве широковещательного адреса.

Таким образом, маска подсети позволяет задать границы подсети, которые будут видеть маршрутизаторы. Понятно, что виды масок подсети зависят от классов сетей, для которых они используются. Например, самый распространенный вариант маски подсети для сетей класса B — 255.255.0.0, а для класса A — 255.0.0.0.

Какую маску подсети выбрать

Стандартный вариант маски для сетей класса C: 255.255.255.0. Но совершенно не обязательно оставлять её такой. Например, если в вашей сети около сотни компьютеров и расширения не планируется, нетрудно подсчитать, что понадобится только половина от доступных IP-адресов. Поэтому можно разделить сеть на две части, просто изменив маску, вот так: 255.255.255.128. Давайте посмотрим, как это будет выглядеть в двоичном коде: 11111111.11111111.11111111.10000000. Слева в правом октете появилась единица, то есть работать в этой сети теперь можно уже только со 128, а точнее, со 126 значениями (помним про идентификатор сети и широковещательный адрес).

Если же нам потребуется разделить сеть на 4 подсети, используем маску 255.255.255.192 или 11111111.11111111.11111111.11000000. Это позволит работать уже с 64 адресами. Для разбивки сетей на 8 подсетей маска уже будет иметь вид 255.255.255.224 или 11111111.11111111.11111111.11100000. Думаем, принцип вы поняли: отталкиваемся от количества хостов в нашей сети и соответствующим образом выставляем маску, чтобы не плодить лишних айпи.

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

Понятно, что протокола IPv4 с его 4 миллиардами адресов (точное число: 4 294 967 296 уникальных адресов, но помним про значительные диапазоны зарезервированных) уже не хватает. Поэтому для адресации стали использовать протокол IPv6, который поддерживает уже 128-битные значения (8 чисел в шестнадцатеричной системе счисления). Здесь количество возможных адресов неизмеримо больше, чем у протокола IPv4 (в 1028 раз), что абсолютно точно покроет все потребности человечества даже в не слишком обозримом будущем. Однако, поскольку шестнадцатеричный формат совершенно другой, то и маски подсетей здесь задаются по иным правилам.

Для построения сетей в рамках протокола IPv6 используется бесклассовая адресация, CIDR. Применение CIDR позволяет настраивать подсети значительно более гибко, так как этот метод делает возможным применять больше масок подсетей. В шестнадцатеричном формате каждая позиция может принимать значения от 0 до F (числа 0-9 и буквы A-F как раз дают последовательность из 16 символов). Поэтому, чтобы задать маску, используем F для сетевой части.

Например: ffff:ffff:ffff:ffff:ffff:ffff:ffff:0000. Такая маска позволит нам работать с 65536 адресами. А если нам нужно сократить количество адресов наполовину, то используем такой вариант: ffff:ffff:ffff:ffff:ffff:ffff:ffff:8000. Примерным соответствием маски для сети класса C (конечно, это не совсем корректно, так как классы в IPv6 отсутствуют, но сравнить с чем-то нужно для наглядности) здесь будет ffff:ffff:ffff:ffff:ffff:ffff:ffff:ff00. Эта запись позволит выделить 256 IP-адресов в формате IPv6. Почему именно такая запись? Всё просто: свободны два разряда в правой части. В каждом разряде у нас 16 возможных значений, следовательно: 16*16 = 256.

Как узнать адрес сети по IP-адресу и маске подсети

Если вы не знакомы с побитовыми операциями, самое время приступить к освоению этой, в общем-то не самой сложной, части программирования. Итак, давайте для примера попробуем выяснить, к какой сети принадлежит адрес 192.168.1.2 с маской 255.255.254.0. Переведем их в двоичный вид и будем складывать методом поразрядного сложения (побитовое И). Здесь нужно запомнить одно простое правило: единица на выходе получается только в том случае, если в одинаковых разрядах обоих чисел тоже единицы. Если хотя бы в одном из чисел в этом месте ноль, то и на выходе всегда будет ноль. И вот что у нас вышло:

11000000 10101000 00000001 00000010
11111111 11111111 11111110 00000000
_________________________________
11000000 10101000 00000000 00000000

Приводим получившееся число к десятичному виду (задачу по переводу чисел в разные системы счисления вам облегчит этот калькулятор). Вуаля, вот и искомый адрес сети: 192.168.0.0. Как видите, ничего сложного: нужно только немного привыкнуть к двоичному виду чисел и битовым операциям.

Заключение

Итак, мы узнали о структуре IP-адреса, масках подсети в форматах IPv4 и IPv6 и научились изменять их под потребности своей сети. А еще освоили побитовое сложение для нахождения адреса сети по айпи и маске.

Определение адресных параметров сети по IP-адресу и префиксу

Для работы компьютера (ноутбука, смартфона и т.п.) в сети устройству присваивается IP-адрес. Как правило, вместе с информацией об адресе узла можно узнать и маску сети (или префикс). Маска сети указывает на количество бит в IP-адресе, отведенных под номер сети. Соответственно оставшиеся биты используются под номер узла. Маска и префикс — это разные записи одного и того же значения. Записывается только одно из них. В операционных системах Windows обычно используется маска, в операционных системах на основе Linux могут применяться оба варианта записи. Приведем пример.

Определение адресных параметров сети по IP-адресу и префиксу

Запись в левом столбце идентична записи в правом. Используется один из приведенных вариантов.

По информации об IP-адресе и префиксу можно определить параметры сети, а именно, IP-адрес сети, маску сети, широковещательный адрес сети, диапазон IP-адресов, предназначенных для адресации узлов (с первого адреса до последнего и их количество). Рассчитанные параметры могут понадобиться для добавления узла в существующую локальную сеть. Другие параметры, необходимые для работы в сети, такие как адрес шлюза и DNS-сервера (серверов) можно узнать из настроек сетевого адаптера.

Рассмотрим два примера для решения подобных задач.

Ⅰ Пример. IP-адрес узла и префикс:

10.0.0.10/25

Необходимо определить номер сети, маску сети, широковещательный адрес сети, диапазон и количество адресов.

Ход решения:

1. Переведем IP-адрес и префикс сети в двоичную систему счисления. Двоичный код адреса запишем первым, ниже запишем префикс. Число, обозначающее префикс показывает количество бит, отведенных под номер сети. В данном случае это 25 единиц, остальное нули (так как IP-адрес четвертой версии протокола IP состоит из 32 бит). В данном виде записывается маска в двоичной системе счисления. Биты адреса и префикса записываем на одной вертикальной линии.

Принимаем нумерацию бит справа налево. То есть самый правый бит нумеруем как первый, а самый левый как тридцать второй. Затем определим границу сети в соответствии с маской (по правую сторону от границы должны быть только нули, по левую сторону – только единицы), в данном случае граница сети проходит между восьмым и седьмым битами (под номер сети отводится 25 бит).

Определение адресных параметров сети по IP-адресу и префиксу

2. Определяем номер сети и маску сети. Для этого все биты, принадлежащие IP-адресу узла и находящиеся справа от границы сети, заменяем нулями, а те биты, что слева, – переписываем без изменений:

Определение адресных параметров сети по IP-адресу и префиксу

Переводим номер сети в десятичную систему счисления:

10.0.0.0.

Префикс записанный в первом пункте в двоичном коде также переводим в десятичную систему счисления и вычисляем маску сети:

255.255.255.128

3. Находим широковещательный адрес данной сети. Для этого все, что в номере сети находится слева от границы, записываем без изменений, а все, что справа, – заполняем единицами:

Определение адресных параметров сети по IP-адресу и префиксу

Переводим широковещательный адрес в десятичную систему счисления:

10.0.0.127.

4. Теперь необходимо определить диапазон и количество адресов узлов в сети. Нужно понимать, что нумерация сети состоит из непрерывного диапазона адресов. При этом самый первый адрес (не обязательно заканчивающийся на ноль) – это адрес сети, а самый последний – это широковещательный адрес сети (для групповой рассылки всем узлам сети). Соответственно адресация узлов каждой сети находится между этими двумя значениями. Таким образом, для того чтобы вычислить адрес первого узла в сети, необходимо к номеру сети прибавить единицу (10.0.0.1), а для того чтобы определить адрес последнего узла, – от широковещательного адреса сети отнять единицу (10.0.0.126). Получаем следующий диапазон адресов узлов:

10.0.0.1 – 10.0.0.126.

Таким образом, максимальное количество адресов в сети 10.0.0.0/25 составляет 126 (от 10.0.0.1 до 10.0.0.126).

Пример записи решения:

Определение адресных параметров сети по IP-адресу и префиксу

(1 строка – IP-адрес узла, 2 – номер сети, 3 – маска сети, 4 – широковещательный адрес сети)

Преобразуем все записи из двоичной системы счисления в десятичную:

Номер сети: 10.0.0.0

Маска: 255.255.255.128

Широковещательный IP-адрес: 10.0.0.127

Адрес первого узла в сети: 10.0.0.1

Адрес последнего узла в сети: 10.0.0.126

Количество адресов (максимально возможное количество узлов в данной сети) составляет 126 единиц.

Ⅱ Пример. IP-адрес узла и префикс:

3.0.3.110/20

Необходимо определить номер сети, маску сети, широковещательный адрес сети, диапазон и количество адресов.

Ход решения практически такой же, как и в первом примере. Но из-за того, что префикс сети менее 24, то могут возникнуть определенные сложности при вычислении, поэтому рассмотрим пример более подробно.

1. Переведем IP-адрес и префикс сети в двоичную систему счисления, Граница сети в соответствии с маской (по правую сторону от границы должны быть только нули, по левую сторону – только единицы) проходит между тринадцатым (13) и двенадцатым (12) битами (под номер сети отводится 20 бит):

Определение адресных параметров сети по IP-адресу и префиксу

2. Определяем номер сети. Для этого все биты, что находятся справа от границы сети, заменяем нулями, а те биты, что слева, – переписываем без изменений:

Определение адресных параметров сети по IP-адресу и префиксу

Переведём номер сети в десятичную систему счисления:

3.0.0.0

Префикс записанный в первом пункте в двоичном коде также переводим в десятичную систему счисления и вычисляем маску сети:

255.255.240.0

3. Определим широковещательный адрес данной сети. Для этого все, что слева от границы, записываем без изменений, как в номере сети, а все, что справа, – заполняем единицами:

Определение адресных параметров сети по IP-адресу и префиксу

Переводим в десятичную систему:

3.0.15.255

4. Определяем диапазон адресов узлов в сети. Для того чтобы вычислить адрес первого узла в сети, необходимо к номеру сети прибавить единицу (3.0.0.1), а для того чтобы определить адрес последнего узла, – от широковещательного адреса сети отнять единицу (3.0.15.254). Получаем следующий диапазон адресов узлов: 3.0.0.1 – 3.0.15.254. Таким образом, максимальное количество адресов в сети 3.0.0.0/20 составляет 4094.

Пример записи решения:

Определение адресных параметров сети по IP-адресу и префиксу

(1 – IP-адрес узла, 2 – номер сети, 3 – маска сети, 4 – номер адреса широкого вещания)

Номер сети: 3.0.0.0

Маска: 255.255.240.0

Номер адреса широкого вещания: 3.0.15.255

1-ый узел в сети: 3.0.0.1

Последний узел в сети: 3.0.15.254

Количество адресов (максимально возможное количество узлов в данной сети) составляет 4094 единиц.

Теперь более подробно об определении количества IP-адресов. Как видим в данном случае изменяется содержимое не только четвертого, но также и третьего байта. Распишем изменения чисел, когда третий байт равен нулю

3.0.0.1 – 3.0.0.255 (то есть 255 адресов)

При дальнейшем прибавлении единицы четвертый байт станет равным нулю и изменится третий байт, то есть

3.0.1.0

При третьем байте равным единицы, четвертый байт будет изменяться следующим образом

3.0.1.0 – 3.0.1.255 (то есть 256 адресов)

далее

3.0.2.0 – 3.0.2.255 (256 адресов)

и так далее

3.0.14.0 – 3.0.14.255 (256 адресов)

последний байт

3.0.15.0. – 3.0.15.254 (255 адресов)

Рассчитывая подобным образом получим общее число адресов

255+256*14+255=4094

То есть два диапазона – первый и последний (3.0.0.* и 3.0.15.*) имеют по 255 адресов.

Четырнадцать диапазонов (3.0.1.*, 3.0.2.*, 3.0.3.*, 3.0.4.*, 3.0.5.*, 3.0.6.*, 3.0.7.*, 3.0.8.*, 3.0.9.*, 3.0.10.*, 3.0.11.*, 3.0.12.*, 3.0.13.* и 3.0.14.*) по 256 адресов.

Распределение IP-сети на подсети описано в статье

Добавить комментарий