
|
Сетевые адреса, сети, подсети, маски... |
Сетевые адреса, сети, подсети, маски...
Часто спрашивают как перевести запись IP адреса с бесклассовой маршрутизацией типа 192.168.1.0/24 в адрес сети с маской
255.255.255.0. Еще чаще спрашивают как определить количество хостов в сети, зная ее маску.
А очень просто :) Но сначала немного теории:
Во-первых формат типа 192.168.1.0/24 называется CIDR (Classless Internet Domain Routing) или "Бесклассовая маршрутизация" и позволяет
гибко управлять пространством IP-адресов, не используя жёсткие рамки классовой адресации. Спецификация описывается в документе RFC 1517.
Во-вторых все будем считать в двоичном формате, так что людям, незнакомым с двоичной логикой настоятельно рекомендую
почитать какую-нибудь теорию во переводу чисел из десятичной в двоичну систуму и наоборот.
Пара значений IP адреса и маски собственно и определяет подсеть. Рассмотрим на примере:
Пусть имеется IP адрес 192.168.1.0 и маска подсети 255.255.255.0. В двоичном формате это выглядит так:
IP адрес: 11000000.10101000.00000001.00000000
маска : 11111111.11111111.11111111.00000000
Суть маски в том чтобы закрыть (поэтому и маска) ту часть адреса, которая неизменна и определяет подсеть.
Закрывают неизменную часть единичные биты. То есть, если посмотреть на наши адреса, то получается, что может меняться только
последний разряд, а первые 3 определеяют подсеть. А что из этого следует? А то, что в нашей только что определенной
подсети "помещается" 254 хоста (уникальных адреса): 192.168.1.1 - первый, 192.168.1.254 - последний; 192.168.1.0 - определяет сеть, а 192.168.1.255 - Broadcast
(широковещательный) адрес.
С CIDR-ом еще проще: в 192.168.1.0/24 число 24 определяет количество единичных битов в маске, если считать слева направо.
Посмотрим в двоичной с/с:
11111111.11111111.11111111.00000000
что есть собственно 255.255.255.0 :) Как видите все просто - количество хостов можно посчитать очень быстро:
k=2(32-24)-2=254 где 32 - всего битов в маске (4 разряда по 8 в каждом), 24 - понятно что. а 2 отнимается за счет бродкаст адреса и идентификатора сети.
Кстати, еще есть так называемая "обратная маска" - Wildcard mask, которая используется в списках доступа (ACL)
сетевого оборудования Cisco. Но здесь мы ее рассматривать не будем :)
Автор: Юферев Денис.
|
|