- •Решение задач по ip‐адресации и статической маршрутизации (учебно–методическое пособие)
- •1. Стек протоколов tcp/ip
- •Ip протокол версии 4
- •Адресация в iPv4
- •Ipадреса
- •Разделение ipадреса на номер сети и номер узла на основе классов
- •Разделение ipадреса на номер сети и номер узла на основе масок
- •Соответствие блоков адресов номерам сетей на основе классов
- •Неэффективность адресации на основе классов
- •Бесклассовая междоменная маршрутизация
- •Вычисление номера сети и номера узла по заданному ip-адресу и маске
- •Соответствие блоков адресов номерам сетей на основе масок
- •Деление блоков адресов на части с помощью маски
- •Использование масок (префиксов) различной длины
- •Правила выделения адресных блоков
- •Распределение ipадресов
- •Ipадреса для изолированных сетей
- •Специальные ipадреса
- •4. Протокол arp
- •Маршрутизация
- •Принципы маршрутизации
- •Основные функции маршрутизаторов
- •Виды алгоритмов маршрутизации
- •Минимальная таблица маршрутизации
- •Замечания:
4. Протокол arp
ARP (Address Resolution Protocol) – протокол определения адреса, предназначенный для получения “локального адреса” по известному IP-адресу (RFC 826).
В соответствии с принципами модели стека TCP/IP, при передаче IP-пакетов меду узлами “локальной сети” производится инкапсуляция пакетов в кадры технологии, на основе которой построена “локальная сеть”.
Пример 15
Рассмотрим сеть Ethernet, построенную на основе коммутатора, к которому подключены четыре компьютера (см. рис. 12).
Рис. 12. Инкапсуляция IP‐пакетов в Ethernet‐кадры
Предположим, что узлу №1 с IP-адресом IP1 необходимо передать IP-пакет узлу №2 с адресом IP2. Модулю операционной системы, реализующему функции IP-протокола в узле
№1, известен IP-адрес узла 2, указанный в заголовке IP-пакета. Для передачи пакета узел №1 должен определить по известному IP-адресу IP2 соответствующий узлу №2 Ethernet-адрес Et2, инкапсулировать IP-пакет в Ethernet-кадр и передать этот кадр на основе технологии Ethernet.
Алгоритм работы протокола ARP зависит от технологии “локальной” сети. Например, в “локальных сетях”, поддерживающих широковещательные рассылки, ARP протокол основан на использовании широковещательных рассылок.
Рассмотрим принципы работы ARP–протокола на примере технологии Ethernet.
Схема определения MAC-адресов в Ethernet-сетях:
При передаче IP-пакета на уровень сетевых интерфейсов модуль межсетевого взаимодействия обращается к модулю ARP для определения Ethernet-адреса.
Модуль ARP формирует запрос на определение адреса и передает его драйверу
Ethernet.
Драйвер Ethernet посылает в сеть широковещательный кадр, содержащий запрос (все узлы сети получают этот кадр).
Узел сети, имеющий указанный в запросе IP-адрес, посылает ARP–ответ, в котором указывает свой Ethernet-адрес.
Модуль ARP источника запроса, получив ответ, передает полученный Ethernet-адрес модулю межсетевого взаимодействия.
Информация о соответствии IP- адресов Ethernet-адресам временно сохраняется (кэшируется) модулем ARP в ARP таблице. ARP таблица состоит из трех полей: “IP-адрес”, “Ethernet адрес” и “Тип записи”.
Виды записей в таблице ARP:
динамические – заносятся в таблицу автоматически, имеют ограниченный срок жизни и по истечении нескольких минут удаляются из таблицы;
статические – заносятся в таблицу администратором c помощью специальной утилиты операционной системы (в большинстве ОС для этого используется утилита arp), время жизни таких записей не ограничено.
С помощью статических записей можно повысить безопасность сети и сократить число широковещательных рассылок.
Маршрутизация
Принципы маршрутизации
Сети, объединяемые в интерсеть на основе IP-протокола, соединяются между собой сетевыми устройствами, называемыми маршрутизаторами.
Маршрутизатор – это сетевое устройство, которое собирает информацию о топологии межсетевых связей и на ее основе пересылает IP-пакеты в сеть назначения.
Маршрутизаторы обычно имеют более одного сетевого интерфейса, каждый из которых обеспечивает передачу данных на основе технологии “локальной сети”, к которой он подключен.
Маршрут – последовательность маршрутизаторов, через которые должен пройти пакет.
На рисунке 13 представлены шесть локальных сетей (обозначены овалами), объединяемых между собой четырьмя маршрутизаторами (обозначены квадратами).
Рис. 13. Объединение сетей с помощью маршрутизаторов
Каждой подсети сопоставляется блок адресов, определяемый номером сети и маской, т.е. все адреса одной подсети имеют одинаковый номер сети (одинаковую старшую часть). Блоки адресов различных подсетей отличаются номерами сетей (имеют различную старшую часть).
Конечные узлы и маршрутизаторы сети хранят информацию о текущей конфигурации маршрутов в электронных таблицах, называемых таблицами маршрутизации. Каждая строка таблицы определяет маршрутизатор для продвижения пакетов в некоторую сеть. Количество полей в таблице маршрутизации может различаться в зависимости от ОС. В большинстве ОС таблицы маршрутизации содержат следующие поля: “Адрес назначения”, “Маска”, “Шлюз”, “Интерфейс”.
Назначение полей:
Адрес назначения – адрес сети или узла, для которого описывается маршрут.
Маска – маска соответствующая адресу, указанному в поле Адрес назначения.
Шлюз – IP-адрес интерфейса маршрутизатора, которому должен быть передан пакет. Или данное поле содержит адрес локального интерфейса, на который должен быть передан пакет для пересылки в непосредственно подключенную “локальную сеть”.
Интерфейс – идентификатор интерфейса, через который должен быть передан пакет.
Таблицы маршрутизации создаются администратором сети “вручную”, с помощью специальной утилиты ОС или автоматически – в результате обмена маршрутизаторами информацией о топологии сети.
В процессе построения таблиц маршрутизации и, следовательно, при выборе маршрута могут учитываться следующие факторы:
величина задержки доставки пакета до сети назначения,
пропускная способность каналов передачи данных,
загруженность линий связи,
количество маршрутизаторов на пути продвижения пакета (число хопов).
На практике наиболее часто при выборе маршрутов учитывают количество маршрутизаторов на пути продвижения пакета.
Пример записей в таблице маршрутизации:
В первой строке таблицы прописано, что IP-пакеты, адресованные в сеть с номером 77.243.120.0 и маской 255.255.255.0 должны быть переданы маршрутизатору с IP-адресом 192.168.0.1 через интерфейс с IP-адресом 192.168.0.1.
Во второй строке прописано, что IP-пакеты, адресованные в сеть с номером 77.243.121.64 и маской 255.255.255.192 должны быть переданы маршрутизатору с IP-адресом 192.168.1.3 через интерфейс с IP-адресом 192.168.1.4.
Замечания:
В приведенном примере, для идентификации интерфейсов используются их IP-адреса. С другой стороны, вместо IP-адресов могут использоваться символьные имена, построенные в соответствии с правилами ОС (например, eth0, em0, lo).
В некоторых ОС поля “Адрес назначения” и “Маска” объединяют в одно поле “Адрес назначения”, в котором указывают номер сети с префиксом.
В случае адресации на основе классов, в таблице маршрутизации поле “Маска” отсутствует, поскольку по первым разрядам IP-адреса можно определить класс адреса и, следовательно, получить номер сети.
Таблицу маршрутизации в ОС Windows и *nix можно получить с помощью команд route и
netstat. Для модификации таблиц используется команда route.
