Расчёт маски подсети.

Примеры расчёта маски подсети

Некоторые примеры из тестов, и правила их решения:

Given that you have a class B IP address network range, which of the subnet mask
below will allow for 100 subnets with 500 usable host addresses per subnet?
A. 255.255.0.0
B. 255.255.224.0
C. 255.255.254.0
D. 255.255.255.0
E. 255.255.255.224

Решение:
какая степень двойки имеет значение больше 500?
2^7=128
2^8=256
2^9=512 >> девятка

теперь вычитаем девять бит с конца
11111111.11111111.11111110.00000000
в десятичном виде это
255.255.254.0



If a host on a network has the address 172.16.45.14/30, what is the address of the
subnetwork to which this host belongs?
A. 172.16.45.0
B. 172.16.45.4
C. 172.16.45.8
D. 172.16.45.12
E. 172.16.45.18

Решение:
172.16.45.14/30
/30 это  11111111.11111111.11111111.11111100
Последняя единица равна "4", это наш "прыжок".
172.16.45.0 - 172.16.45.3
172.16.45.4 - 172.16.45.7
172.16.45.8 - 172.16.45.11
172.16.45.12 - 172.16.45.15
172.16.45.16 - 172.16.45.19

Как видно, диапозон адресов 172.16.45.12 - 172.16.45.15.
и адрес сети это  172.16.45.12, ответ D


Which two of the addresses below are available for host addresses on the subnet
192.168.15.19/28? (Select two answer choices)
A. 192.168.15.17
B. 192.168.15.14
C. 192.168.15.29
D. 192.168.15.16
E. 192.168.15.31
F. None of the above

Решение:
/28 это 11111111.11111111.11111111.11110000
Последняя единица, равняется 16, это прыжок.
192.168.15.0 - 192.168.15.15
192.168.15.16 - 192.168.15.31
192.168.15.32 - 192.168.15.47

Только А и C входят в диапозон.
Е тоже входит, но является широковещательным адресом, и не может использоваться для компьютеров
Ответы A и C.


Расчёт  Wildcard-Masks (Используемая в Access Lists и OSPF )
Наша сеть 192.168.32.0 /28
Только это сеть, должна быть запрещена в ацесс листах.

1.  Рассчитываем wildcard mask
/28 это 255.255.255.240
в бинарном виде
11111111.11111111.11111111.11110000

для wildcard mask, нам интересны только нули —

11110000 переводим в десятичное значение
и считаем 128/64/32/16/8/4/2/1
это будет 8+4+2+1=15
т.е. наша wildcard mask будет:
0.0.0.15
access-list будет таким
access-list 1 deny 192.168.32.0 0.0.0.15
access-list 1 permit ip any any

теперь указываем использовать access-list на интерфейса, к примеру e0.
interface e0
ip access-group 1 out (or in!)
exit

----------------------------------------------------------------------------------

Это нужно выучить!

степени двойки
2^2=4
2^3=8
2^4=16
2^5=32
2^6=64
2^7=128
2^8=256
2^9=512
2^10=1024
2^11=2048
2^12=4096

а также запомнить и записать наиболее часто используемые сети
128 192 224 240 248 252 254

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

Например: 192.168.36.54/28
  1. /28 это 255.255.255.240
  2. 256-240=16
  3. Нас интересует четвертый октет ip  адреса. Ищем число, ближайшее к 54, но не большее его, кратное 16. Это  есть число 48 (16×3) =4.
    Т.о. мы получили адрес сети:
    192.168.36.48
  4. Широковещательн ый адрес можно  вычислить, прибавив, в данном случае, к  значению в четвертом октете  адреса сети 16 и отняв 1.
    Получим: 48+16-1=63
    192.168.36.63 - и есть  широковещательн ый адрес сети.
  5. Диапазон адресов в такой сети  следующий:
    192.168.36.49 - 192.168.36.62
  6. Число рабочих узлов в сети: 2^h-2,
    где h - количество битов, выделенных  для адресации узлов (32-28=4 бит).
    2^4-2=16-2=14 узлов.
    6) Максимальное число подсетей можно расчитать по формуле 2^s, где s - количество битов для подсетей
    (32-24-4=4 бит).
    2^4=16 подсетей (максимум).
Если мы хотим разделить эту подсеть на две части, мы должны использовать подсети.Для разделения на две подсети, мы должны использовать маску –
255.255.255.128

192.168.1.1 — 192.168.1.127

192.168.1.128 — 192.168.1.255

Это описывает:
адрес хоста - броадкаст (первая подсеть),
адрес сети - броадкаст (вторая подсеть)
Диапазон рабочих адресов лучше описать так:
первый исп. адрес - последний исп. адрес

Тогда все примет более усваиваемый вид:
192.168.1.1 - 192.168.1.126
(192.168.1.0 адрес сети,
192.168.1.127 броадкаст)

192.168.1.129 - 192.168.1.254
(192.168.1.128 адрес сети,
192.168.1.255 броадкаст)
...а также запомнить и записать наиболее часто используемые сети
”128 192 224 240 248 252 254"
Может не 254, а 255 (/32)
Пример:
Маска, пусть будет /25 - это число бит равных единице. Всего их в маске - 32, 4 секции по 8 бит. Секция называется октет
Значения битов в каждом октете такие: 128 64 32 16 8 4 2 1
Чтобы расчитать маску вида ххх.ххх.ххх.ххх нужно сделать следующее
32-25 = 7,
то есть в последнем справа налево семь ноликов, а восьмой, который отвечает за значение 128, равен единице.
Таким образом маска /25 это 255.255.255.128
Если бы маска была 26, то два левых бита были бы единицами и последний октет был бы 128+64=192, а маска 255.255.255.192
Второй вариант расчета 2^7=128 (это значение - число ip адресов в сети с маской /25, причем первый адрес - это адрес собственно сети, а последний - это широковещательный адрес). 256 -128=128 - это значение последнего октета маски.
Контрольный вопрос:
Может ли быть адрес хоста 10.31.1.0?
Прежде чем начать считать сети и маски, нужно хорошо запомнить небольшую таблицу степеней 2-ки (Таблица 1). 

Bin.
Dec.
20
1
21
2
22
4
23
8
24
16
25
32
26
64
27
128
28
256
29
512
210
1024
211
2048
212
4096


Таблица 1
Еще нужно помнить вот такую математику ( Таблица 2 и Таблица 3).

Таблица 2

Таблица 3
Кроме того, нужно помнить что маска сети, с значением отличным от 0 или 255 указывает на разделяемый октет, а ее значение указывает "шаг", с которым будут меняться адреса подсетей в данном октете. Т.е. нет необходимости переводить маску в двоичную систему исчисления, для того чтобы вычислить количество заимствованных бит для адресации подсетей и количество оставшихся бит для адресации узлов. Достаточно просто вычесть из 256 значение маски.
Пример:
Есть адрес сети класса С 192.168.5.0 / 255.255.255.0 , деленной на подсети с маской 255.255.255.224
  1. Для того чтобы рассчитать "шаг" адресации нужно из 256 вычесть 224
256 - 224 = 32
Это и есть "шаг" и, в тоже время, количество адресов в данной подсети.
Необходимо помнить что количество адресов, которые могут быть назначены узлам в данной подсети меньше на 2.  Один из которых - это адрес подсети, а второй - широковещательный адрес.
К тому же, рассчитанный "шаг" указывает на количество бит используемых для адресации в пределах подсети. В данном случае 32 = 2^5.  Т.е. в четвертом октете заимствованы 3 бита для адресов подсетей и 5 бит остается для адресации узлов. Имея такую информацию можно легко рассчитать префикс сети.
Вот так будут выглядеть адреса подсетей, расчитанные с использование значения "шага" равным 32:
192.168.5.    / 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, то инкрементируя адрес с использованием значения "шага" получаем следующий адрес сети.
Инкремент (увеличение) — операция увеличения на некоторую фиксированную величину, или же в некоторых случаях на изменяемую. Обратную операцию называют декремент (уменьшение).
  1. Для того чтобы зная "шаг" вычислить сколько получится подсетей, необходимо 256 разделить на "шаг"
256 / 32 = 8
Если вместо маски указан префикс, то все еще проще. В случае с маской 255.255.255.224 префикс выглядел бы как /27.  В это случае придется вооружится знанием степеней 2-ки.
  1. Стандартное количество бит в префиксе для сети класса С - /24, максимальное количество бит в маске 32.
  2. Количество адресов в подсети 2 ^(32 - 27) = 2 ^5 = 32
  3. Количество подсетей 2 ^(27 - 24) = 2 ^3 = 8
  1. Т.е. из одной сети класа С 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 от числа отсекаемого маской или префиксом. Адрес сети и широковещательный адрес нельзя назначать узлам сети.
Также можно предположить - это более короткие префиксы ( маски меньшего размера ) в цепочке сетей, которую нужно продолжить. Т.е. нужно выбрать адресацию для новой сети. Для примера приведены несколько сетей с префиксом, например, /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 является адресом сети.
Для проверки результатов расчёта маcок можно воспользоваться сетевым калькулятором >>>

Маршрутизация локальной сети

Объявляем, что машины с адресами вида 198.8.2.* *=1,...,254 сидят на нашем верхнем локальном сегменте ethernet, и разговаривать с ними надо напрямую, через верхний ethernet, соответствующий нашему адресу 198.8.2.1 - т.е. - elx70. А с машинами, имеющими адреса вида 198.8.3.* - через нижний ethernet - с адресом 198.8.3.1
route add  net  198.8.2.0  198.8.2.1 netmask 255.255.255.0 0
route add  net  198.8.3.0  198.8.3.1 netmask 255.255.255.0 0
Сетевые пакеты для IP-адресов, которые не лежат в нашей локальной сети, переправлять на машину с сетевым адресом 198.8.2.107 - а уж она сама будет разбираться, что с ними делать, и как доставить их до конкретных адресатов.
route add default      198.8.2.107  1
Последний аргумент команды route - метрика. Ее можно интерпретировать как "расстояние" до "того" gateway'я, или "сколько пересадок между gateway'ями придется сделать IP-пакету по дороге туда. Поскольку IP-адреса 198.8.2.1 и 198.8.3.1 соответствуют нашим собственный платам ethernet, то и метрика (расстояние) до них 0. 198.8.2.107 - другая машина - "расстояние до нее" 1.
Смотрим, что у нас получилось
netstat -rn             # распечатать таблицу маршрутизации
  ping -s fedfond         # "прозвонить" узлы сети
ping -s fedfond-gate
ping -s 198.8.2.107
  netstat  -i        # статистика о работе сетевых интерфейсов

Маска задается либо количеством битов в маске сети (например 8 бит - 256 адресов, 6 бит - 64 адреса), либо битовой маской вида
11111111 11111111 11111111 00000000

которую тоже принято записывать в десятично-побайтной записи, например:
255.255.255.0 — маска на 256 адресов,
255.255.255.192 — маска на 64 адреса,
255.255.0.0 — маска на 64Kb адресов.
Например, 255.255.255.0 — маска на 256 адресов, но в сети может быть 254 компьютера
255.255.0.0 — в сети может быть 254 подсети по 254 компьютера в каждой
Вот примеры связи между масками и количеством адресов в сети:
  • Если маска например 255.255.255.0,  то диапазон адресов будет 192.168.1.0—255.
  • Если 255.255.0.0, то 192.168.0—255.0—255.
  • Для 255.0.0.0 -> 192.0-255.0—255.0—255
  • Для записи вида 192.168.1.1 /24,  префикс /24 соответствует маске 255.255.255.0
Подсетями мы можем разделить адресное пространство на части, и выделить новые, более малые сети, которые называются подсеть (subnet).
Например:
IP adress:  192.168.1.0    Subnet mask: 255.255.255.0
Это одна сеть класа C, с префиксом /24, в которой используется 253 адреса для пользователей.
Используемый IP диапазон этой сети:

192.168.1.0  - 192.168.1.254
Первый адрес чаще всего является адресом подсети. Это адрес который используется для организации маршрутизации между несколькими подсетями.
В этой сети адрес подсети - 192.168.1.0 (в адресации не используется).
Последний IP адрес в каждой подсети называется широковещательным (броадкастом).В этой сети броадкаст - 192.168.1.255 (в адресации не используется).
Если мы хотим разделить эту подсеть на две части, мы должны использовать подсети.
Для разделения на две подсети, мы должны использовать маску 255.255.255.128
192.168.1.1 — 192.168.1.127
192.168.1.128 — 192.168.1.255

Комментариев нет:

Отправить комментарий