Маски подсети — различия между версиями

Материал из megapuper
Перейти к: навигация, поиск
(Полностью удалено содержимое страницы)
 
Строка 1: Строка 1:
−
Маска и обратная маска
 
  
−
 
−
Обычная сеть на 256 адресов: 192.168.0.0/24
 
−
IP-адрес. Десятичная запись        192        168        0          0
 
−
IP-адрес. Двоичная запись          11000000  10101000    00000000  00000000
 
−
Маска подсети. Двоичная запись      1111111    111111111  11111111  00000000
 
−
Маска подсети. Десятичная запись    255        255        255        0
 
−
 
−
 
−
IP-адрес состоит из 32 бит, поделенных на 4 части по 8 бит в каждой.
 
−
Маска подсети также имеет длину 32 бита — она фактически шаблон, трафарет, по которому определяется принадлежность адреса подсети. Там, где в маске стоят единицы, значение меняться не может, то есть часть 172.16.5 совершенно неизменна и она будет одинакова для всех хостов этой подсети, а вот та, где нули — варьируется.
 
−
То есть во взятом нами примере 172.16.5.0/24 — это адрес сети, а хосты будут 172.16.5.1-172.16.5.254 (последний 255 — широковещательный), потому что 00000001 — это 1, а 11111110 — 254 (речь о последнем октете адреса). /24 означает, что длина маски 24 бита, то есть у нас идёт 24 единицы — неизменная часть и 8 нулей.
 
−
Другой случай, когда маска у нас, например, 30 бит, а не 24.
 
−
К примеру 172.16.2.4/30. Распишем это так: IP-адрес. Десятичная запись 172 16 2 4
 
−
IP-адрес. Двоичная запись 10101100 00010000 00000010 00000100
 
−
Маска подсети. Двоичная запись 11111111 11111111 11111111 11111100
 
−
Маска подсети. Десятичная запись 255 255 255 252
 
−
 
−
 
−
Как видите, для этой подсети могут меняться только последние два бита. Последний октет может принимать следующие 4 значения:
 
−
00000100 — адрес подсети (4 в десятичной системе)
 
−
00000101 — адрес узла (5)
 
−
00000110 — адрес узла (6)
 
−
00000111 — широковещательный (7)
 
−
Всё, что за пределами этого — уже другая подсеть
 
−
 
−
То есть теперь вам должно быть чуть-чуть понятно, что маска подсети — это последовательность 32-х бит, где сначала идут единицы, означающие адрес подсети, потом идут нули, означающие адрес хоста. При этом чередоваться нули и единицы в маске не могут чередоваться. То есть маска 11111111.11100000.11110111.00000000 невозможна
 
−
 
−
А что же такое обратная маска (wildcard)?
 
−
Для подавляющего большинства админов и некоторых инженеров — это не более, чем инверсия обычной маски. То есть нули вначале задают адрес части, которая должна совпадать обязательно, а единицы наоборот свободную часть.
 
−
То есть на взятом нами первом примере, если вы хотите отфильтровать все хосты из подсети 172.16.5.0/24, то вы зададите правило в Access-листе:
 
−
…. 172.16.5.0 0.0.0.255
 
−
Потому что обратная маска будет выглядеть так:
 
−
 
−
00000000.00000000.00000000.11111111
 
−
 
−
Во втором примере с сетью 172.16.2.4/30 обратная маска будет выглядеть так: 30 нулей и две единицы:
 
−
Обратная маска. Двоичная запись 00000000 00000000 00000000 00000011
 
−
Обратная маска. Десятичная запись 0 0 0 3
 
−
 
−
 
−
Соответственно параметр в access-листе будет выглядеть так:
 
−
…. 172.16.2.4 0.0.0.3
 
−
Позже, когда вы съедите собаку на просчётах масок и обратных масок, вы запомните самые употребляемые цифры, количество хостов в той или иной маске, поймёте, что в описанных ситуациях последний октет обратной маски получается вычитанием из 255 цифры последнего октета обычной маски (255-252=3) и т.д. А пока нужно много трудиться и считать)
 
−
 
−
Но на самом деле обратная маска — это несколько более богатый инструмент, здесь вы можете объединять адреса внутри одной подсети или даже объединять подсети, но самое главное отличие, вы можете чередовать нули и единицы. Это позволяет вам, например, отфильтровать определённый узел (или группу) в нескольких подсетях одной строкой.
 
−
 
−
Пример 1
 
−
Дано: сеть 172.16.16.0/24
 
−
Надо: отфильтровать первые 64 адреса (172.16.16.0-172.16.16.63)
 
−
Решение: 172.16.16.0 0.0.0.63
 
−
 
−
Пример 2
 
−
Дано: сети 172.16.16.0/24 и 172.16.17.0/24
 
−
Надо: отфильтровать адреса из обеих сетей
 
−
Решение: 172.16.16.0 0.0.1.255
 
−
 
−
Пример 3
 
−
Дано: Сети 172.16.0.0-172.16.255.0
 
−
Надо: отфильтровать хост с адресом 4 из всех подсетей
 
−
Решение: 172.16.16.0 0.0.255.4
 
−
 
−
Признаться ни разу в жизни не приходилось встречаться с последним сценарием применения. Это какие-то жутко специфические должны
 

Текущая версия на 19:00, 16 апреля 2014