· Имеется оборудование, которое использует несовместимые технологии организации сетей, и есть потребность связать их (как упомянуто выше).
Как организуются подсети
После того, как вы определите, что нуждаетесь в сетевом адресе, вам надо узнать, как это сделать? Далее идет краткий обзор шагов, которые будут объясняться ниже в деталях:
· Установите физическую связанность (сетевые соединения - типа маршрутизаторов);
· Решите, какой (большой/маленькой) должна быть каждая подсеть, т.е. какое количество IP-адресов требуется для каждого сегмента.
· Вычислите соответствующую сетевую маску и сетевые адреса;
· Установите каждому интерфейсу на каждой сети его собственный IP адрес и соответствующую сетевую маску;
· Установите направления связи на маршрутизаторах и соответствующих шлюзах, направления связи и/или заданные по умолчанию направления связи на сетевых устройствах;
· Протестируйте систему, исправьте ошибки и расслабьтесь!
В качестве примера предположим, что мы - организуем подсеть класса C с номером: 192.168.1.0
Это предусматривает максимум 254 связанных интерфейсов (хостов), плюс обязательный сетевой номер (192.168.1.0) и широковещательный адрес (192.168.1.255).
Установка физической связанности
Чтобы выполнить физическое размещение, вы должны будете установить правильную инфраструктуру для всех устройств, которые хотите связать.
Вам будет также нужен механизм, чтобы связать различные сегменты вместе (маршрутизаторы, конверторы, хабы и т.д.).
Детальное обсуждение этого здесь невозможно. Если вам нужна справка, имеются сетевые консультанты по проектированию/установке сетей, которые обеспечивают это обслуживание. Бесплатный совет доступен также в ряде конференций (например, comp.os.linux.networking).
Установление размеров подсети
Каждая сеть имеет два адреса, не используемых для сетевых интерфейсов (компьютеров) - сетевой номер сети и широковещательный адрес. Когда вы организуете подсеть, каждая из них требует собственный, уникальный IP адрес и широковещательный адрес, и они должны быть правильными внутри диапазона адресов сети, которую вы организуете.
Таким образом, разделение сети на две подсети приводит к тому, что образуются два адреса сети и два широковещательных адреса - увеличивается число "неиспользуемых" адресов интерфейсов; создание 4-х подсетей приведет к образованию 8-и неиспользуемых адресов интерфейсов и т.д.
Фактически, самая маленькая пригодная для использования подсеть состоит из 4 IP адресов:
· Два используются для интерфейсов - один для маршрутизатора в этой сети, другой для единственной машины в этой сети.
· Один адрес сети.
· Один широковещательный адрес.
Если у вас в сети один компьютер, то любые сетевые сообщения должны отправляться в другую сеть. Однако этот пример служит для того, чтобы показать зависимость количества подсетей и используемых адресов.
В принципе, вы можете разделить ваш сетевой номер на 2ˆn (где n на единицу меньше, чем число битов поля машины в вашем сетевом адресе), получаем одинаковые размеры подсетей (однако, вы можете делить подсети на подсети, и/или объединять их).
Так будьте реалистом, относительно разработки вашей сети - вам необходимо минимальное число отдельных локальных сетей, которые является совместимыми по управлению, физически, по оборудованию и безопасности!
Вычисление сетевой маски и сетевых адресов
Сетевая маска позволяет разделить сеть на несколько подсетей.
Сетевая маска для сети, не разделенной на подсети - это просто четверка чисел, которая имеет все биты в полях сети, установленные в '1' и все биты машины, установленные в '0'.
Таким образом, для трех классов сетей стандартные сетевые маски выглядят следующим образом:
· Класс A (8 сетевых битов) : 255.0.0.0
· Класс B (16 сетевых бита): 255.255.0.0
· Класс C (24 сетевых бита): 255.255.255.0
Способ организации подсетей заимствует один или более из доступных битов номера хоста и заставляет интерпретировать эти заимствованные биты, как часть сетевых битов. Таким образом, чтобы получить возможность использовать, вместо одного номера подсети, два, мы должны заимствовать один бит машины, установив его (крайний левый) в сетевой маске в '1'.
Для адресов сети класса C это привело бы к маске вида 11111111.11111111.11111111.10000000 или 255.255.255.128
Для нашей сети класса C с сетевым номером 192.168.1.0, есть несколько случаев:
ЧислоЧисло машинподсетей на сеть Сетевая маска2 126 255.255.255.128 (11111111.11111111.11111111.10000000)4 62 255.255.255.192 (11111111.11111111.11111111.11000000)8 30 255.255.255.224 (11111111.11111111.11111111.11100000)16 14 255.255.255.240 (11111111.11111111.11111111.11110000)32 6 255.255.255.248 (11111111.11111111.11111111.11111000)64 2 255.255.255.252 (11111111.11111111.11111111.11111100)В принципе, нет абсолютно никакой причины следовать вышеупомянутым способам организации подсетей, где сетевые биты, добавлены от старшего до младшего бита хоста. Однако если вы не выбираете этот способ, то в результате IP адреса будут идти в очень странной последовательности! Но в результате, решение, к какой подсети принадлежит IP адрес, получается чрезвычайно трудным для нас (людей), поскольку мы не слишком хорошо считаем в двоичной арифметике (с другой стороны, компьютеры, с равным хладнокровием, будут использовать любую схему, которую вы им предложите).
Выбрав подходящую сетевую маску, вы должны определить сетевые, широковещательные адреса и диапазоны адресов, для получившихся сетей. Снова, рассматриваем только сетевые номера класса C и печатаем только заключительную часть адреса, мы имеем:
Сетевая маска Подсетей Адр.сети Шир.вещат. МинIP МаксIP Хостов Всего хостов-------------------------------------------------------------------------------- 128 2 0 127 1 126 126 128 255 129 254 126 252 192 4 0 63 1 62 62 64 127 65 126 62 128 191 129 190 62 192 255 193 254 62 248 224 8 0 31 1 30 30 32 63 33 62 30 64 95 65 94 30 96 127 97 126 30 128 159 129 158 30 160 191 161 190 30 192 223 193 222 30 224 255 225 254 30 240Как можно заметить, имеется очень строгая последовательность для этих чисел. Ясно видно, что при увеличении числа подсетей сокращается число доступных адресов для компьютеров.
С этой информацией вы теперь способны назначить адреса машин, сетевые адреса и сетевые маски.
Задание на контрольную работу № 1.
По исходным данным, приведенным в таблице № 1, выполнить задание определенное в каждом из вариантов. Выполняемый вариант соответствует последней цифре шифра.
Таблица № 1
Выполняемый вариант | Задание |
2 | В сети 192.168.55.0 необходимо выделить максимальное количество подсетей так, чтобы к каждой подсетиможно было подключить до 25 хостов. Определить маску подсети и определить IP- адреса для одной из подсетей. |
Решение:
1. Выделить максимальное количество подсетей, так чтобы в каждой подсети можно было подключить до 25 хостов.
Адрес 192.168.55.0 класс «С»
N=2n – 2, где N – количество хостов, для нашего случая N=25 и количество подсетей должно быть меньше или равно 25, т.е. 25≥2n – 2, отсюда следует 25≥24 – 2 25≥14 (подсетей), а если 25≥25 – 2 25≥30, что не соответствует нашему заданию значит количество подсетей = 14.2. Определить маску подсети для сети класса «С» 255.255.255.0 (первые три числа это номер подсети, а последняя цифра это адрес хоста) 14 подсетей, 14 хостов
11111111.11111111.11111111.11110000
255.255.255.240
На адрес сети 24 бита, на адрес хоста 8 бит.
3. Определить IP адрес подсети
192.168.55.0 – запретная область, т.к. младший адрес используется для обращения ко всей сети и если его использовать к младшей сети отдельно не обратишься.
192.168.55.16 т.к. 24 = 16
192.168.55.32
192.168.55.48
192.168.55.64 – это и есть IP адрес нашей подсети
Маршрутизация
Если вы используете Linux машину с двумя сетевыми картами, чтобы установить маршрут между двумя (или более) подсетями, вам нужно иметь ядро, скомпилированное с поддержкой пересылки IP-пакетов (Forwarding). Сделайте следущее:
cat /proc/ksyms | grep ip_forwardВы должны получить, что-то вроде...
00141364 ip_forward_Rf71ac834Если не так, тогда пересылка IP-пакетов не включена в ядро, и вам нужно перекомпилировать и установить новое ядро.
Для примера, позвольте предположить, что вы решили разделить вашу сеть класса C с адресом IP 192.168.1.0 на 4 подсети (в каждой пригодно для использования 62 IP адреса). Однако, две из этих подсетей объединяются в большую сеть, давая в общем три физических сети.
Network Broadcast Netmask Hosts192.168.1.0 192.168.1.63 255.255.255.192 62192.168.1.64 192.168.1.127 255.255.255.192 62182.168.1.128 192.168.1.255 255.255.255.126 124 (см. примечание)Примечание: последняя сеть имеет только 124 сетевых адреса (не 126, как ожидалось бы от сетевой маски) и является сетью из двух подсетей. Главные компьютеры на других двух сетях интерпретируют адрес 192.168.1.192 как сетевой адрес 'несуществующей' подсети. Подобно они будут интерпретировать 192.168.1.191 как широковещательный адрес 'несуществующей' подсети.
Так, если вы используете 192.168.1.191 или 192 как адреса хостов в третьей подсети, тогда компьютеры двух малых подсетей не смогут связаться с ними.
Это иллюстрирует важный пункт при работе с подсетями - пригодные для использования адреса определяются САМОЙ МАЛОЙ подсетью в том адресном пространстве.
Таблицы маршрутизации
Позвольте нам предположить, что компьютер с Linux действует, как маршрутизатор для этой сети. Он будет иметь три сетевых карты к локальным сетям и, возможно, четвертый интерфейс для связи с Internet (который был бы шлюзом по умолчанию).
Пусть компьютер с Linux использует самый первый доступный IP адрес в каждой подсети. Конфигурация сетевых карт будет следующей:
Interface IP Address Netmasketh0 192.168.1.1 255.255.255.192eth1 192.168.1.65 255.255.255.192eth2 192.168.1.129 255.255.255.128Таблица маршрутизации при данной конфигурации будет такой
Destination Gateway Genmask Iface192.168.1.0 0.0.0.0 255.255.255.192 eth0192.168.1.64 0.0.0.0 255.255.255.192 eth1192.168.1.128 0.0.0.0 255.255.255.128 eth2На каждой из подсетей главные компьютеры были бы конфигурированы с их собственным IP адресом и сетевой маской (соответствующий специфической сети). Каждый главный компьютер объявил бы Linux PC своим шлюзом/маршрутизатором, определяя IP адрес маршрутизатора для его сетевой карты на той части сети.