Лабораторная работа 4.3

Маршрутизация пакетов

Цель: получить сведения о маршрутизации и научиться добавлять маршруты в таблицу маршрутизации.
Средства для выполнения работы:

Теоретические сведения

В сетях, основанных на протоколе IP, концепция маршрутизации является одной из важных. Она создает или разбивает сеть. Неправильная конфигурация маршрутизации способна вывести из строя сеть.

Маршрутизация – технология определения пути доставки (маршрута) пакетов. Основные принципы маршрутизации:

  1. Каждая операционная система, поддерживающая стек TCP/IP, имеет маршрутизатор и таблицу маршрутизации.
  2. Таблица маршрутизации используется только тогда, когда определяется, как доставлять пакеты.
  3. Маршрутизация должна быть сконфигурирована корректно на обоих концах связи и на каждом участке между ними.

Для определения пути доставки пакета используется таблица маршрутизации. Пример таблицы маршрутизации можно получить командой route с параметром print.


Рисунок 1. Пример таблицы маршрутизации

В общем случае для маршрутизации используется следующий алгоритм. Из пакета извлекается IP-адрес назначения пакета и производится попытка сопоставить его с адресом назначения (Сетевой адрес) каждого элемента таблицы маршрутизации пока не найдется наилучшее совпадение. Если совпадений не найдено, то пакет удаляется и отправителю пакета может отправиться сообщение об ошибке. Сравнение производится с тремя порциями информации: Сетевой адрес (Network Destination), Маска сети (Netmask) и IP-адрес назначения пакета.

В основном, производится побитная операция AND между IP-адресом получателя и Маской сетии (Netmask): если полученное значение равно Сетевому адресу (Network Destination), то считается, что совпадение найдено.

Пример 1. Необходимо проверить почту на сервере, чей адрес 192.168.4.100 (используется таблица маршрутизации приведенная ранее). Необходимо выполнить побитную операцию AND над IP-адресом получателя пакетов и сетевыми масками (Netmask) из таблицы маршрутизации. Эта операция производится над всем масками из таблицы маршрутизации. Но в рассматриваемом примере только 3-я строка наиболее походит.


Рисунок 2. Пример определения маршрута доставки пакетов

Как видно из приведенной таблицы, результат побитной операции AND совпадает с 3-й строкой таблицы маршрутизации (Рисунок 2). Следовательно, пакет отправится по указанному маршруту через интерфейс 192.168.4.7.

Следует отметить, что указанный в примере IP-адрес после выполнения побитной операции AND над масками совпадет больше чем с одной строкой маршрутизации. Для избежания таких случаев используется приоритет маршрутов. Система ищет более точное совпадение адреса с маской (255.255.255.255 более точна, чем 255.255.255.0, которая в свою очередь, более точна, чем 0.0.0.0). Маршрут с сетевым адресом 0.0.0.0 и маской 0.0.0.0 является маршрутом по умолчанию. Так как этот маршрут подходит к любому адресу назначения, он описывает маршрут, который используется, если не найден более подходящий. Обычно этот маршрут используется для пересылки пакетов провайдеру Интернет-услуг, при подключении к Интернету.

Для работы с таблицей маршрутизации используется стандартная утилита ROUTE, которая выводит на экран и изменяет записи в локальной таблице IP-маршрутизации.

Запущенная без параметров, команда route выводит справку.

Параметр Описание
add Добавление маршрута
change Изменение существующего маршрута
delete Удаление маршрута или маршрутов
print Печать маршрута или маршрутов
Таблица 1. Назначение параметров команды route

Пример 2. Добавлениe маршрута.


Рисунок 3. СТрока для добавление маршрута

Выполнение работы

Задание 1. Создайте таблицу для облегчения определения маршрутов.

  1. Откройте табличный процессор и сформируйте таблицу по следующему шаблону:


    Рисунок 4. Образец оформления таблицы

  2. Введите в диапазон ячеек Z3:AG3 формулы для перевода числа в десятичной системе счисления из ячейки Z2 в двоичную форму (в соответствии с таблицей).

    Таблица 2. Формулы для перевода в двоичную систему счисления
    Имя Ячейки Формула
    AG3 =Z2-2*INT(Z2/2)
    AF3 =INT(Z2/2)-2*INT(INT(Z2/2)/2)
    AE3 =INT(INT(Z2/2)/2)-2*INT(INT(INT(Z2/2)/2)/2)
    AD3 =INT(INT(INT(Z2/2)/2)/2)-2*INT(INT(INT(INT(Z2/2)/2)/2)/2)
    AC3 =INT(INT(INT(INT(Z2/2)/2)/2)/2)-2*INT(INT(INT(INT(INT(Z2/2)/2)/2)/2)/2)
    AB3 =INT(INT(INT(INT(INT(Z2/2)/2)/2)/2)/2)-2*INT(INT(INT(INT(INT(INT(Z2/2)/2)/2)/2)/2)/2)
    AA3 =INT(INT(INT(INT(INT(INT(Z2/2)/2)/2)/2)/2)/2)-2*INT(INT(INT(INT(INT(INT(INT(Z2/2)/2)/2)/2)/2)/2)/2)
    Z3 =INT(INT(INT(INT(INT(INT(INT(Z2/2)/2)/2)/2)/2)/2)/2)

  3. Аналогично введите формулы для преобразования чисел из десятичной системы счисления в двоичную для ячеек R2,J2,B2.
  4. Аналогично введите формулы для преобразования маски подсети в двоичную систему счисления.
  5. Введите формулы для побитной операции AND над IP-адресом и маской (Netmask):
  6. Введите в ячейку Z7 формулу для преобразования 4-го октета маски в десятичную систему счисления - =AG6*2^AL1+AF6*2^AF1+AE6*2^AE1+AD6*2^AD1+AC6*2^AC1+AB6*2^AB1+AA6*2^AA1+Z6*2^Z1.
  7. Аналогично введите формулы для ячеек R7, J7, B8.
  8. Сохраните файл в своем каталоге с именем ROUTE.

Задание 2. Создайте новый маршрут для вашего компьютера и проследите его.

  1. Запустите виртуальную машину VM-1 и загрузите ОС Windows.
  2. Откройте консоль (Пуск/Программы/Стандартные/Командная строка).
  3. Определите IP-адрес вашего компьютера с помощью утилиты ipconfig.
  4. Просмотрите таблицу маршрутизации на вашем компьютере:
  5. Проследите работу маршрутизатора с помощью утилиты TRACERT, отправив пакеты на узел www.opennet.ru. Введите:
    tracert www.opennet.ru


    Рисунок 6. Пример вывода программы TRACERT

    Следует отметить, что пакеты на указанный сайт отправляются через один шлюз (192.168.1.1), который видно в первых строках вывода программ ROUTE и TRACERT.
  6. Добавьте в таблицу маршрутизации компьютера строку для пересылки пакетов в сеть 172.21.0.0 (маска 255.255.0.0) через сетевой интерфейс компьютера. Введите:
    route add 172.21.0.0 mask 255.255.0.0 192.168.1.4 METRIC 3
  7. Проверьте работу внесенных вами изменений с помощью утилиты TRACERT.

Задание 3. Выполните самостоятельное задание 2.


На главную Методические рекомендации для студентов

Сайт управляется системой uCoz