«

»

Июн 24

Сетевая математика. Деление на подсети и все такое.

С самого начала хочу обратить внимание на тот факт, что данная статья не является теоретическим материалом по VLSM, это всего лишь более простой способ расчета. Прежде чем знакомится с ним, нужно понимать теорию по данному вопросу и быть готовым в любой момент проверить полученный результат в двоичной форме.
Так вот, для того чтобы сдать экзамен CCNA нужно уметь рассчитывать подсети. Это занятие, само по себе, трудно назвать увлекательным. Особенно когда не получается. Залог успеха в данном мероприятии — знание степеней 2-ки от 0 до 12. На экзамене больше не понадобится, а в большинстве реальных ситуаций этого будет даже много. Еще нужно знать некоторые закономерности IP — адреса и маски подсети.
Меня с этими закономерностями познакомил один, в прямом смысле этого слова, «бородатый админ», который сопровождал привезенный нам на контору CISCO-роутер. Занося в серверную новую железяку, он застал меня за расчетом подстей. Классика жанра: адреса и маски в бинарной форме, огромное количество изведенной бумаги… В общем, все плохо… Мне было предложено аккуратно все собрать и отправить в урну. После этого мне был показан «мастер-класс» по расчету подсетей и масок. Этот способ позволяет рассчитать подсети в уме…

Прежде чем начать считать сети и маски, нужно хорошо запомнить небольшую таблицу степеней 2-ки (Таблица 1).

ТАБЛИЦА 1

Еще нужно помнить вот такую математику ( Таблица 2 и Таблица 3). Это в общем-то и посчитать можно, но лучше если это помнить… Это может сэкономить время на экзамене.

ТАБЛИЦА 2

ТАБЛИЦА 3

Кроме того, нужно помнить что маска сети, с значением отличным от 0 или 255 указывает на разделяемый октет, а ее значение указывает «шаг», с которым будут меняться адреса подсетей в данном октете. Т.е. нет необходимости переводить маску в двоичную систему исчисления, для того чтобы вычислить количество заимствованных бит для адресации подсетей и количество оставшихся бит для адресации узлов. Достаточно просто вычесть из 256 значение маски.

Пример:
Есть адрес сети класса С 192.168.5.0 / 255.255.255.0 деленной на подсети с маской 255.255.255.224
Для того чтобы рассчитать «шаг» адресации нужно из 256 вычесть 224

256 — 224 = 32

Это и есть «шаг» и, в тоже время, количество адресов в данной подсети. Необходимо помнить что количество адресов, которые могут быть назначены узлам в данной подсети меньше на 2. Один из которых — это адрес подсети, а второй — широковещательный адрес. К тому же, рассчитанный «шаг» указывает на количество бит используемых для адресации в пределах подсети. В данном случае 32 = 2^5. Т.е. в четвертом октете заимствованы 3 бита для адресов подсетей и 5 бит остается для адресации узлов. Имея такую информацию можно легко рассчитать префикс сети.

Вот так будут выглядеть адреса подстетей, рассчитанные с использование значения «шага» равным 32
192.168.5.0 / 255.255.255.224 — 192.168.5.31 / 255.255.255.224
192.168.5.32 / 255.255.255.224 — 192.168.5.63 / 255.255.255.224
192.168.5.64 / 255.255.255.224 — 192.168.5.95 / 255.255.255.224
192.168.5.96 / 255.255.255.224 — 192.168.5.127 / 255.255.255.224
192.168.5.128 / 255.255.255.224 — 192.168.5.159 / 255.255.255.224
192.168.5.160 / 255.255.255.224 — 192.168.5.191 / 255.255.255.224
192.168.5.192 / 255.255.255.224 — 192.168.5.223 / 255.255.255.224
192.168.5.224 / 255.255.255.224 — 192.168.5.255 / 255.255.255.224

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

256 / 32 = 8

Если вместо маски указан префикс, то все еще проще. В случае с маской 255.255.255.224 префикс выглядел бы как /27. В это случае придется вооружится знанием степеней 2-ки.
Стандартное количество бит в префиксе для сети класса С — /24, максимальное количество бит в маске 32.

Количество адресов в подсети 2 ^(32 — 27) = 2 ^5 = 32
Количество подсетей 2 ^(27 — 24) = 2 ^3 = 8

Т.е. из одной сети класа С 192.168.5.0/255.255.255.0 получается 8 подсетей по 32 адреса ( 30 из которых можно назначить узлам) если использовать маску 255.255.255.224 или префикс /27.

Немного иначе обстоят дела с сетью класса В. Общие принципы расчета остаются прежними. В тоже время, когда речь ведется о расчете подсетей в пределах сети класса В, нужно быть предельно внимательным, так как именно в этом случае может возникнуть возможность для «вопроса с подвохом». По крайней мере, две таких возможности:
1. 4-й октет адреса равный 0 не всегда указывает на адрес подсети;
2. 4-й октет адреса равный 255 не всегда указывает на широковещательный адрес;
Это обусловлено тем, что адрес узла начинается в третьем октете, и если в четвертом октете 0 (все биты 4-го октета установлены в 0 ) или 255 (все биты 4-го октета установлены в 1 ), то это не означает на 100%, что в третьем октете, в части адреса используемой для адресации узлов, тоже самое. Так что если в вопросе просят указать адреса сетей или широковещательные адреса, и если среди вариантов есть разделенная сеть класса В, то нужно сразу начинать подозревать создателей экзамена в подвохе. Хотя более правильным будет подозревать их в этом с самого начала экзамена, с самого первого вопроса…

Пример:
Есть адрес сети класса В 172.16.0.0 деленная на подсети с маской 255.255.240.0
Для того чтобы рассчитать «шаг» адресации нужно из 256 вычесть 240

256 — 240 = 16

Это и есть «шаг», но в отличии от предыдущего примера с сетью класса С , это значение не является количеством адресов в данной подсети. Это обусловлено тем, что разделение происходит в третьем октете, и еще есть четвертый октет, значения которого может меняться от 0 до 255 (всего 256 возможных вариантов). Для того, чтобы рассчитать количество адресов в подсети, нужно «шаг» ( в нашем случае 16 ) умножить на 256. Звучит угрожающе, и кажется, что не обойтись без калькулятора, но в действительности это всего-лишь 4 раза по 1024, что уже не так уж страшно.

256*16 = 1024 * 4 = 4096

Не забываем о том, что количество адресов, которые могут быть назначены узлам в данной подсети меньше на 2. Один из которых — это адрес подсети, а второй — широковещательный адрес. К тому же, рассчитанный «шаг» указывает на количество бит данного октета, используемых для адресации в пределах подсети. В данном случае 16 = 2^4. Т.е. в третьем октете заимствованы 4 бита для адресов подсетей и 4 бита третьего октета для адресации узлов В данном случае, это не полное количество бит, используемое для адресации внутри подсети, так как есть еще и четвертый октет с его 8-и битами.

Вот так будут выглядеть адреса подстетей, рассчитанные с использование значения «шага» равным 16

172.16.0.0 / 255.255.240.0 — 172.16.15.255 / 255.255.240.0
172.16.16.0 / 255.255.240.0 — 172.16.31.255 / 255.255.240.0
172.16.32.0 / 255.255.240.0 — 172.16.47.255 / 255.255.240.0
172.16.48.0 / 255.255.240.0 — 172.16.63.255 / 255.255.240.0
172.16.64.0 / 255.255.240.0 — 172.16.79.255 / 255.255.240.0
172.16.80.0 / 255.255.240.0 — 172.16.95.255 / 255.255.240.0
172.16.96.0 / 255.255.240.0 — 172.16.111.255 / 255.255.240.0
172.16.112.0 / 255.255.240.0 — 172.16.127.255 / 255.255.240.0
172.16.128.0 / 255.255.240.0 — 172.16.143.255 / 255.255.240.0
172.16.144.0 / 255.255.240.0 — 172.16.159.255 / 255.255.240.0
172.16.160.0 / 255.255.240.0 — 172.16.175.255 / 255.255.240.0
172.16.176.0 / 255.255.240.0 — 172.16.191.255 / 255.255.240.0
172.16.192.0 / 255.255.240.0 — 172.16.207.255 / 255.255.240.0
172.16.208.0 / 255.255.240.0 — 172.16.223.255 / 255.255.240.0
172.16.224.0 / 255.255.240.0 — 172.16.239.255 / 255.255.240.0
172.16.240.0 / 255.255.240.0 — 172.16.255.255 / 255.255.240.0

Тоже самое, но с использованием префикса. В случае с маской 255.255.240.0 префикс выглядел бы как /20. Снова вооружаемся знанием степеней 2-ки.
Стандартное количество бит в префиксе для сети класса В — /16, максимальное количество бит в маске 32.

Количество адресов в подсети 2 ^(32 — 20) = 2 ^12 = 4096
Количество подсетей 2 ^(20 — 16) = 2 ^4 = 16

Т.е. из одной сети класа В 172.16.0.0 / 255.255.0.0 получается 16 подсетей по 4096 адресов ( 4094 из которых можно назначить узлам) если использовать маску 255.255.240.0 или префикс /20.

В общем все не очень-то сложно. Если нужно просто «нарезать» подсети исходя из выдвигаемых требований к количеству узлов или сетей. Но не нужно расслабляться. Таких вопросов будет не так уж много. Создатели экзамена не упустят возможности подловить нас на чем-нибудь не слишком очевидном. Для того чтобы не попасться на уловки, нужно постараться предусмотреть все или, хотя бы, большую часть возможных каверз.

Первое о чем не стоит забывать это о том, что реальное доступное к использованию количество адресов всегда меньше на 2 от числа отсекаемого маской или префиксом. Адрес сети и широковещательный адрес нельзя назначать узлам сети.

Второе о чем следует помнить — это наличие в CISCO CLI команды «ip subnet-zero», которая позволяет использовать первую и последнюю подсети. Как правило, в таких случаях использование данной команды явно указывается в тексте вопроса. Но все равно не стоит об этом забывать.

Третье что можно предположить — это более короткие префиксы ( маски меньшего размера ) в цепочке сетей, которую нужно продолжить. Т.е. нужно выбрать адресацию для новой сети. Для примера приведены несколько сетей с префиксом, например, /28, а последняя префиксом, например, /27. В заданий будет требоваться выбрать адресацию для следующей сети. Как правило в таких случаях на автомате выбирается вариант ответа который не учитывает размер последней сети из примера.
Пример того как может выглядеть последовательность сетей на схеме

192.168.104.0/28
192.168.104.16/28
192.168.104.32/28
192.168.104.48/28
192.168.104.64/27

Возможный варианты ответов, два из которых могут выглядеть примерно так

192.168.104.80/28
192.168.104.96/28

В таком случае, если не обратить внимание на префикс последней сети, логичным будет выбрать 192.168.104.80/28, но из-за более короткого префикса 192.168.104.64/27, получается что адреса накладываются, что неприемлемо. В таком случае правильный ответ 192.168.104.96/28.

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

192.168.5.159 / 27

172.16.94.255 / 20

Так и тянет выбрать 172.16.94.255 / 20 в качестве широковещательного адреса, а это адрес узла. Из этих двух вариантов 192.168.5.159 / 27 является широковещательным адресом.

Тоже самое, но вместо широковещательных адресов — адреса сети. Варианты ответов, часть из которых легко узнаются как адреса сети, а также два адреса которые могут выглядеть так:

192.168.5.48 / 29

172.16.94.0 / 20

Опять хочется выбрать 172.16.94.0 / 20 в качестве адреса сети, а это опять адрес узла. Из этих двух вариантов только 192.168.5.48 / 29 является адресом сети.
Других вариантов пока не вижу. Буду очень признателен за идеи в данном направлении. Очень хочется, отдавая 350 американских монет за возможность сдать экзамен, хотя бы частично контролировать ситуацию на экзамене, а это возможно только в случае готовности ко большинству возможных вариантов развития событий.

Источник

Похожие записи:

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

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

Вы можете использовать эти теги HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

188 views