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

 

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

Например, сеть 172.16.0.0 может быть разделена на четыре сегмента:

· 172.16.1.0

· 172.16.2.0

· 172.16.3.0

· 172.16.4.0

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

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

Процесс назначения адресов в сети, которая делится на сегменты, состоит из трех этапов:

· определения маски подсети;

· назначение адреса каждой подсети;

· назначение адреса каждому узлу в каждом сегменте.

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

32-разрядная маска подсети может быть записана как четыре октета. Размещение полей маски следующее:

· двоичная 1 для битов, определяющих сеть

· двоичная 1 для битов, определяющих подсеть

· двоичный 0 для битов, определяющих узел.

 

    Сеть Узел    
  IP    
  адрес    
    Сеть Узел    
Маска по умолчанию    
для класса B    
    Сеть Подсеть Узел  
  32-битная    
маска подсети    
                     

 

Рисунок 6.7

 

Адреса классов A, B и C имеют заданные по умолчанию маски подсети, которые отражают заданное по умолчанию разделение адреса подсети / узла. Эти заданные по умолчанию маски имеют 1 в каждой позиции, соответствующей заданному по умолчанию компоненту сетевого адреса соответствующего класса IP адресов. Биты подсети начинаются с первого бита старшего октета поля адреса узла.

В адресе класса А только первый октет составляет сетевой адрес. Это эквивалентно маске подсети 255.0.0.0. Аналогично, заданная по умолчанию маска для адреса класса B имеет вид 255.255.0.0, а адрес класса С - маску 255.255.255.0.

Заданная по умолчанию маска подсети для каждого класса сети обрабатывает соответствующий адрес IP, как будто и нет никаких подсетей. Если вы захотите разделить вашу сеть на подсети, вы должны будете изменить вашу маску подсети. Точнее, вы должны будете заменить некоторые из 0 в маске на 1. Это будет означать, что часть узлового компонента каждого IP-адреса будет обрабатываться как дополнительная информация об адресации в сети.

Рассмотрим пример использования маски подсети.

Пусть какая-то корпоративная сеть имеет одиночный сетевой адрес класса B (172.16.0.0), и её хотят разделить на отдельные подсети. Чтобы сделать это, нужно изменить заданную по умолчанию маску подсети классов B 255.255.0.0. Самое простое решение, которое можно принять - определить весь третий октет адреса как сетевой адрес для подсетей, т.е. третий октет маски подсети выбрать 11111111. Теперь маска подсети будет выглядит следующим образом: 255.255.255.0. Обратите внимание, что она такая же, как заданная по умолчанию маска подсети для сетей класса C.

Когда новая маска подсети будет наложена, IP-адреса узлов в сети будут иметь три компонента. Первые два октета остаются как стандартный сетевой адрес класса B. Третий октет будет номером подсети в сети компании. Четвертый октет будет функционировать как адрес узла в каждой подсети.

С точки зрения внешних маршрутизаторов, сеть является, как бы, одиночной сетью класса B. Однако, её собственные маршрутизаторы различают подсети, как отдельные сети класса C. Когда данные посылаются извне в сеть компании (например, на адрес 172.16.2.160), маршрутизатор извлекает IP-адрес узла-получателя из пакета и восстанавливает внутреннюю маску подсети. Затем он выполняет логическую операцию AND, чтобы получить номер сети. При выполнении операции AND, часть адреса, обозначающая узел-получатель, удаляется. Это потому, что любой бит, сложенный с помощью операции AND с 0 даст 0.

Если в сети компании не были бы определены подсети, то получился бы адрес сети - 172.16.0.0. Но, т.к. сеть компании была разделена на подсети, то после операции AND из исходного IP-адреса извлечется как адрес сети, так и адрес подсети - в нашем примере это 172.16.0.2. Таким образом, решения о маршрутизации основаны только на номерах сети и подсети.

Использование всего третьего октета адреса для идентификации подсетей позволяет разделить сеть на 254 (два в восьмой степени, минус два) отдельных подсетей.

Рассмотрим случай с сетью класса C.

Заданная по умолчанию маска для сети класса C - 255.255.255.0. Установка последнего октета маски подсети в 11111111 приведет к маске 255.255.255.255. Это позволило бы создать 254 подсети, но не имеет смысла, так как не остается места для информации об адресе узла.

Использование семи маскирующих битов (11111110 в последнем октете, т.е. 254) также не имеет смысла, потому что один оставшийся бит в адресе узла, должен иметь значение или 0, или 1. Однако, адреса узлов, состоящие полностью из 1 или 0 зарезервированы и не могут быть назначены хостам. Таким образом, хотя маска 255.255.255.254 и поддерживает 126 допустимых подсетей, она не оставляет никакого адресного пространства для узлов.

Точно так же использование только одного бита для маски также бесцельно, поскольку это не приводит ни к каким подсетям. Причиной этого является то, что есть только два возможных значения для адреса подсети - 0 и 1.

Обратите внимание, что 1-разрядная маска (1000000) - не эквивалентна 0-разрядной, заданной по умолчанию маске (00000000), даже при том, что обе не приводят ни к каким подсетям. Это потому, что 1-разрядная маска имеет только семь бит, доступных для адресации узла и может поддерживать только 126 хостов. Заданная по умолчанию маска использует все восемь бит для адресации узла и может поддерживать 254 хоста.

Таблица 6.3

  Количество маскирующих бит   Двоичная маска   Десятичная маска   Количество возможных подсетей Количество возможных хостов в каждой подсети
н/о

 

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

Как видите, ограничения на число подключаемых хостов уменьшают ваши возможности разделять сеть класса C на подсети.

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

Количество возможных подсетей зависит от числа бит, отведенных адресу подсети. Оно равно количеству единиц в маске подсети минус количество единиц в заданной по умолчанию маске для конкретного класса сети. Точное число подсетей вычисляется как 2 в степени количества бит, назначенных адресу подсети, и минус два (не могут быть назначены адреса, полученные из всех 0 или 1).

Число узлов, подключаемых в подсеть получается из числа немаскирующих бит (0) в маске подсети. Точное число узлов равно 2 в степени количества немаскирующих бит, минус два (не могут быть назначены адреса, полученные из всех 0 или 1).

Рассмотрим маску подсети - 255.255.224.0.

Число подсетей, которые она может поддерживать, зависит от того, имеет ли сеть адрес класса B или класса A.

Если сеть имеет адрес класса A, то адрес подсети занимает одиннадцать бит, т.е. весь второй октет и три бита в третьем. Таким образом имеется 2 в степени 11, минус 2, возможных подсетей. Получается 2046 узлов.

Если используется адрес класса B, следовательно адрес подсети занимает только три бита в третьем октете. Т.е. сеть делится на 23-2 возможных подсети, тогда получим 6 узлов.

И независимо от того, какого класса адрес присвоен сети (класса A или класса B), последние тринадцать бит адреса отведены адресам узлов. Следовательно, есть возможность подключить 2 в степени 13, минус 2 узлов в каждую подсеть. Т.е., 8190.

Выбор 5-разрядной маски дает вам возможность организовать 30 подсетей, и перекрывает число подсетей, необходимых вам. Адреса подсети кратны 8, т.е. 192.168.5.16, 192.168.5.32, 192.168.5.48. Допустимые значения адресов подсети зависят от числа битов, отведенных для адреса подсети. Вы используете оставшиеся биты в последнем октете для номера узла. В нашем примере для этого можно использовать три бита. Назначение трех немаскирующих (0) бит для адреса узла позволит вам подключить 6 узлов в каждую подсеть. Этого достаточно, чтобы покрыть требуемое количество - 5 узлов на подсеть.

В приведенном примере первая подсеть начинается с адреса 192.168.5.8 - этот адрес определяется как идентификатор подсети и не может использоваться как адрес узла. Адреса с 192.168.5.9 по 192.168.5.14 (их 6 как и рассчитано) могут использоваться как адреса узлов. Адрес 192.168.5.15 - широковещательный адрес подсети, который вы не можете использовать как адрес узла.

Следующая подсеть начинается с 192.168.5.16 - это идентификатор подсети, и она имеет адреса узлов от 192.168.5.17 до 192.168.5.22. Широковещательный адрес подсети - 192.168.5.23.

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

 








Дата добавления: 2015-02-16; просмотров: 3167;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.008 сек.