- •Введение
- •Условные обозначения, используемые в пособии
- •Графические символы
- •Соглашения по синтаксису командного языка
- •1 Проектирование масштабируемых сетей передачи данных
- •1.1 Масштабируемые сети передачи данных
- •1.2 Архитектура корпоративной сети передачи данных
- •1.3 Введение в технологию подсетей и ее обоснование
- •1.4 Применение технологии VLSM
- •1.5 Суммирование маршрутов
- •1.6 Проектирование масштабируемого адресного пространства
- •2 Принципы маршрутизации
- •2.1 Определение маршрутизации
- •2.1.1 Маршрутизируемые и маршрутизирующие протоколы
- •2.1.2 Основные функции маршрутизаторов
- •2.2 Концептуальные основы маршрутизации
- •2.2.1 Таблицы маршрутизации
- •2.2.2 Административное расстояние
- •2.2.3 Метрики маршрутов
- •2.2.4 Построение таблицы маршрутизации
- •2.3 Механизмы маршрутизации
- •2.3.1 Прямое соединение
- •2.3.2 Статическая маршрутизация
- •2.3.3 Настройка статических маршрутов
- •2.3.4 Использование «плавающих» статических маршрутов
- •2.3.5 Маршрутизация по умолчанию
- •2.4 Проверка и устранение ошибок в статических маршрутах
- •3 Принципы динамической маршрутизации
- •3.1 Операции динамической маршрутизации
- •3.1.1 Стоимость маршрута
- •3.2 Внутренние и внешние протоколы маршрутизации
- •3.2.1 Понятие автономной системы и домена маршрутизации
- •3.2.2 IGP – протоколы внутреннего шлюза
- •3.2.3 EGP – протоколы внешнего шлюза
- •3.3 Обзор классовых протоколов маршрутизации
- •3.3.1 Суммирование маршрутов при классовой маршрутизации
- •3.3.2 Суммирование маршрутов в разобщенных классовых сетях
- •3.4 Обзор бесклассовых протоколов маршрутизации
- •3.4.1 Суммирование маршрутов при бесклассовой маршрутизации
- •3.4.2 Суммирование маршрутов в разобщенных классовых сетях
- •3.5 Категории алгоритмов маршрутизации
- •3.5.1 Особенности дистанционно-векторных протоколов
- •3.5.2 Маршрутизация по состоянию канала
- •3.5.3 Гибридные протоколы маршрутизации
- •3.6 Конфигурирование протокола маршрутизации
- •4 Дистанционно-векторная маршрутизация
- •4.1 Дистанционно-векторный алгоритм
- •4.1.1 Дистанционно-векторный алгоритм для протокола IP
- •4.2 Маршрутизация по замкнутому кругу
- •4.3 Максимальное количество транзитных переходов
- •4.4 Применения принципа расщепления горизонта
- •4.5 Обратное обновление
- •4.6 Таймеры удержания информации
- •4.7 Механизм мгновенных обновлений
- •5 Протокол RIP
- •5.1 Настройка протокола RIP
- •5.2 Протокол RIP v1
- •5.2.1 Заголовок и поля протокола RIP v1
- •5.2.2 Команда – 1 байт
- •5.2.3 Версия – 1 байт
- •5.2.4 Неиспользуемые поля – 2 байта
- •5.2.5 Идентификатор семейства адресов – 2 байта
- •5.2.6 IP адрес – 4 байта
- •5.2.6 Метрика – 4 байта
- •5.3 Использование команды ip classless
- •5.4 Недостатки протокола RIP v1
- •5.5 Протокол RIP v2
- •5.5.1 Заголовок и поля протокола RIP v2
- •5.5.2 Тег маршрута – 2 байта
- •5.5.3 Маска подсети – 4 байта
- •5.5.4 Следующая пересылка – 4 байта
- •5.6 Аутентификация в протоколе RIP v2
- •5.6.1 Настройка аутентификации для протокола RIP
- •5.7 Суммирование маршрутов в протоколе RIP
- •5.7.1 Распространение маршрута по умолчанию
- •5.8 Расширенная настройка протокола RIP
- •5.8.1 Таймеры протокола RIP
- •5.8.2 Совместное использование в сети протокола RIP v1 и v2
- •5.8.3 Распределение нагрузки в протоколе RIP
- •5.8.4 Настройка протокола RIP для работы в сетях NBMA
- •5.8.5 Механизм инициированных обновлений в протоколе RIP
- •5.9 Тестирование и устранение ошибок в работе протокола RIP
- •6 Протокол EIGRP
- •6.1 Алгоритм диффузионного обновления
- •6.2 Преимущества протокола EIGRP
- •6.3 Автономная система протокола EIGRP
- •6.4 База данных протокола EIGRP
- •6.4.1 Таблица соседства
- •6.4.2 Таблица топологии
- •6.5 Метрика протокола EIGRP
- •6.6 Функционирование протокола EIGRP
- •6.6.1 Надежность передачи пакетов протокола EIGRP
- •6.6.2 Разрыв соседских отношений
- •6.6.3 Запланированное отключение
- •6.6.5 Меры обеспечения стабильности протокола EIGRP
- •6.7 Алгоритм DUAL
- •6.7.1 Работа алгоритма DUAL
- •6.8 Механизм ответов на запросы
- •7 Конфигурирование и тестирование протокола EIGRP
- •7.1 Запуск протокола EIGRP
- •7.2 Настройка аутентификации в протоколе EIGRP
- •7.3 Суммирование маршрутов в протоколе EIGRP
- •7.4 Настройка маршрута по умолчанию в протоколе EIGRP
- •7.5 Распределение нагрузки в протоколе EIGRP
- •7.6 Расширенная настройка протокола EIGRP
- •7.6.1 Таймеры протокола EIGRP
- •7.6.2 Изменение административного расстояния протокола EIGRP
- •7.6.3 Изменение весовых коэффициентов протокола EIGRP
- •7.6.4 Настройка протокола EIGRP для сетей NBMA
- •7.6.5 Использование EIGRP пропускной способности каналов связи
- •7.6.6 Идентификация маршрутизаторов в протоколе EIGRP
- •7.7 Тестирование и устранение ошибок в работе протокола EIGRP
- •8 Использование протокола EIGRP в масштабируемых сетях
- •8.1 Масштабируемость. Проблемы и решения
- •8.2 Использование суммарных маршрутов
- •8.3 Использование тупиковых маршрутизаторов
- •8.4 Использование протокола EIGRP в современных условиях
- •9 Протоколы маршрутизации по состоянию канала
- •9.1 Алгоритм «кратчайшего пути» Дейкстры
- •10 Протокол OSPF
- •10.1 Характеристики протокола OSPF
- •10.1.1 Групповая рассылка обновлений состояния каналов
- •10.1.2 Аутентификация
- •10.1.3 Быстрота распространения изменения в топологии
- •10.1.4 Иерархическое разделение сети передачи данных
- •10.2 База данных протокола OSPF
- •10.2.1 Таблица соседства
- •10.2.2 Таблица топологии
- •10.3 Метрика протокола OSPF
- •10.4 Служебные пакеты протокола OSPF
- •10.4.1 Пакет приветствия
- •10.4.2 Суммарная информация о таблице топологии
- •10.4.3 Запрос на получение информации о топологическом элементе
- •10.4.4 Обновление информации о топологических элементах
- •10.4.5 Подтверждение о получении
- •10.5 Процесс установки соседских отношений
- •10.5.1 Поиск соседей
- •10.5.2 Обмен топологической информацией
- •11 Настройка протокола OSPF в одной зоне
- •11.1 Запуск протокола OSPF
- •11.2 Управление значением идентификатора маршрутизатора OSPF
- •11.3 Настройка аутентификации в протоколе OSPF
- •11.3.1 Проверка функционирования аутентификации
- •11.4 Настройка маршрута по умолчанию в протоколе OSPF
- •11.5 Распределение нагрузки в протоколе OSPF
- •11.6 Расширенная настройка протокола OSPF
- •11.6.1 Таймеры протокола OSPF
- •11.6.2 Изменение административного расстояния протокола OSPF
- •11.7 Тестирование и устранение ошибок в работе протокола OSPF
- •12 Работа протокола OSPF в сетях различных типов
- •12.1 Работа протокола OSPF в сетях «Точка-Точка»
- •12.2 Работа протокола OSPF в широковещательных сетях
- •12.2.1 Правила выбора DR и BDR маршрутизаторов
- •12.3 Работа протокола OSPF в сетях NBMA
- •12.4 Режимы работы протокола OSPF в сетях NBMA
- •12.5 Режимы работы протокола OSPF в сетях Frame Relay
- •12.5.1 Нешироковешательный режим
- •12.5.2 Многоточечный режим
- •12.5.3 Использование подинтерфейсов
- •12.6 Проверка работы протокола OSPF в сетях различных типов
- •13 Работа протокола OSPF в нескольких зонах
- •13.1 Типы маршрутизаторов OSPF
- •13.1.1 Внутренние маршрутизаторы
- •13.1.2 Магистральные маршрутизаторы
- •13.1.3 Пограничные маршрутизаторы
- •13.1.4 Пограничные маршрутизаторы автономной системы
- •13.2 Типы объявлений о состоянии каналов
- •13.2.1 Структура заголовка сообщения LSA
- •13.2.2 Объявление состояния маршрутизатора (Тип 1)
- •13.2.3 Объявление состояния сети (Тип 2)
- •13.2.4 Суммарные объявления о состоянии каналов (Тип 3 и 4)
- •13.2.5 Объявления внешних связей (Тип 5 и 7)
- •13.3 Построение таблицы маршрутизации протоколом OSPF
- •13.3.1 Типы маршрутов протокола OSPF
- •13.3.2 Расчет метрики внешних маршрутов
- •13.4 Суммирование маршрутов протоколом OSPF
- •13.4.1 Суммирование межзональных маршрутов
- •13.4.2 Суммирование внешних маршрутов
- •13.4.3 Отображение внешних суммарных маршрутов
- •14 Специальные типы зон протокола OSPF
- •14.1 Типы зон протокола OSPF
- •14.1.1 Правила тупиковых зон
- •14.2 Тупиковые зоны протокола OSPF
- •14.2.1 Настройка тупиковой зоны
- •14.3 Полностью тупиковые зоны протокола OSPF
- •14.3.1 Настройка полностью тупиковой зоны
- •14.4 Таблицы маршрутизации в тупиковых зонах
- •14.5 Не совсем тупиковые зоны протокола OSPF
- •14.5.1 Настройка не совсем тупиковой зоны
- •14.5.2 Настройка полностью тупиковой зоны NSSA
- •14.6 Проверка функционирования специальных зон протокола OSPF
- •15 Виртуальные каналы в протоколе OSPF
- •15.1 Настройка виртуальных каналов
- •15.1.2 Примеры использования виртуальных каналов
- •15.2 Проверка функционирования виртуальных каналов
- •16 Перераспределение маршрутной информации
- •16.1 Понятие перераспределения маршрутной информации
- •16.2 Понятие метрического домена
- •16.3 Маршрутные петли
- •16.3.1 Односторонние перераспределение маршрутной информации
- •16.3.2 Двухсторонние перераспределение маршрутной информации
- •16.3.3 Протоколы маршрутизации подверженные образованию маршрутных петель
- •17 Совместная работа нескольких протоколов маршрутизации
- •17.2 Настройка базового перераспределения маршрутной информации
- •17.2.1 Метрика, присваиваемая перераспределяемым маршрутам
- •17.3 Настройка перераспределения маршрутной информации из присоединенных и статических маршрутов
- •17.4 Настройка перераспределения маршрутной информации в протокол RIP
- •17.5 Настройка перераспределения маршрутной информации в протокол EIGRP
- •17.6 Настройка перераспределения маршрутной информации в протокол OSPF
- •18 Управление трафиком маршрутных обновлений
- •18.1 Использование пассивных интерфейсов
- •18.1.1 Настройка пассивных интерфейсов
- •18.2 Фильтрация маршрутной информации, передаваемой между маршрутизаторами
- •18.2.1 Фильтрация сетей получателей по IP адресу сети
- •18.2.2 Фильтрация сетей получателей по длине префикса
- •18.2.3 Использование списков доступа и списков префиксов при фильтрации маршрутной информации
- •18.3 Фильтрация маршрутной информации в процессе перераспределения маршрутной информации
- •19 Маршрутные карты
- •19.1 Понятие маршрутных карт
- •19.2 Настройка маршрутной карты
- •19.3 Использование маршрутных карт при перераспределении маршрутной информации
- •19.4 Проверка конфигурации маршрутных карт
- •20 Маршрутизация по политикам
- •20.1 Понятие маршрутных политик
- •20.2 Настройка маршрутизации по политикам
- •20.3 Пример маршрутизации по политикам
- •20.4 Проверка маршрутизации по политикам
- •21 Обзор протокола BGP
- •21.1 Автономные системы
- •21.2 Использование протокола BGP
- •21.2.1 Когда используется протокол BGP
- •21.2.2 Когда не следует использовать протокол BGP
- •22 Терминология и концепции протокола BGP
- •22.1 Характеристики протокола BGP
- •22.2 Таблицы протокола BGP
- •22.3 Одноранговые устройства или соседи BGP
- •22.4 Маршрутизация по политикам
- •22.5 Атрибуты протокола BGP
- •22.5.1 Содержимое сообщения обновления протокола BGP
- •22.5.2 Стандартные и опциональные атрибуты
- •22.5.3 Атрибут «Путь к AS»
- •22.5.4 Атрибут «Узел следующего перехода»
- •22.5.5 Атрибут «Локальный приоритет»
- •22.5.6 Атрибут MED
- •22.5.7 Атрибут «Отправитель»
- •22.5.7 Атрибут «Сообщество»
- •22.5.8 Атрибут «Вес»
- •23 Работа протокола BGP
- •23.1 Типы сообщений протокола BGP
- •23.1.1 Состояния BGP соседей
- •23.2 Процесс принятия решения при выборе пути
- •23.2.1 Выбор нескольких путей
- •23.3 CIDR маршрутизация и суммирование маршрутов
- •24 Настройка протокола BGP
- •24.1 Одноранговые группы
- •24.2 Основные команды протокола BGP
- •24.2.1 Модификация атрибута NEXT-HOP
- •24.2.2 Описание объединенного адреса в BGP таблице
- •24.2.3 Перезапуск протокола BGP
- •24.3 Проверка работоспособности протокола BGP
- •25 Множественная адресация
- •25.1 Типы множественной адресации
- •Заключение
- •Словарь терминов
- •Список использованных источников
На рисунке 4.2 показано, как дистанционно-векторные протоколы обрабатывают изменения топологии.
Обновление |
|
Обновление |
|||
таблицы |
|
таблицы |
|||
маршрутизации |
|
маршрутизации |
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
R1 рассылает |
|
|
|
обновленную |
|
Изменение |
R2 |
таблицу |
R1 |
топологии сети |
маршрутизации |
|
Рисунок 4.2 – Обработка изменений топологии сети
Когда маршрутизатор начинает получать маршрутные обновления от других маршрутизаторов, он заполняет свою таблицу маршрутизации объявленными сетевыми префиксами, которые затем начинает объявлять сам. В итоге все маршрутизаторы сегмента маршрутизации узнают обо всех сетевых префиксах, доступных в сегменте.
Дистанционно-векторные алгоритмы требуют, чтобы каждый маршрутизатор рассылал копию своей таблицы маршрутизации соседним маршрутизаторам (neighbor router).
Маршрутизацию на основе дистанционно-векторного протокола иногда называют «маршрутизацией по слухам» («routing by rumors»), поскольку маршрутизаторы не знают ничего о маршрутизаторах на пути к известным им сетевым префиксам.
Дистанционно векторные протоколы маршрутизации являются самыми простыми алгоритмами динамической маршрутизации. Использование простых алгоритмов позволяет снизить вычислительную нагрузку на маршрутизаторы, однако использование таких алгоритмов маршрутизации имеет и свои слабые стороны. Перед тем как администратор корпоративной сети передачи данных сделает свой выбор в пользу одного из дистанционно-векторных протоколов маршрутизации, ему необходимо понять слабые стороны дистанционно векторной маршрутизации и пути решения возможных проблем.
4.2 Маршрутизация по замкнутому кругу
Явление маршрутизации по замкнутому кругу может возникать в тех случаях, когда плохая сходимость сети для новой топологии сети может вызывать наличие противоречивых записей о маршрутах (Рисунок 4.3).
69
R2
Сеть 1 |
недостижима |
R1 |
R5 |
R3 |
|
||
|
|
|
|
|
R4 |
|
Сеть 1 |
Альтернативный маршрут : |
Альтернативный маршрут |
: |
|
Сеть 1, расстояние = 3 |
|
Сеть 1, расстояние = 4 |
|
Рисунок 4.3 – Петли маршрутизации
1.Непосредственно перед выходом из строя «Сети 1» все маршрутизаторы имеют согласованные и корректные таблицы маршрутизации, т.е. для данного домена маршрутизации произошла конвергенция. Предположим, что для маршрутизатора R3 наилучший маршрут к «Сети 1» проходит через маршрутизатор R2 и что в своей таблице маршрутизации маршрутизатор R3 имеет запись о расстоянии до «Сети 1», равном 3 переходам.
2.Если «Сеть 1» выходит из строя, то маршрутизатор R5 пересылает маршрутизатору R1 обновление маршрутов, содержащее эту информацию. После получения обновления маршрутизатор R1 прекращает направлять пакеты в «Сеть 1», однако маршрутизаторы R2, R3 и R4 продолжают это делать, так как они еще не проинформированы о сбое в «Сети 1». После того как маршрутизатор R1 отправляет свое обновление маршрутной информации, маршрутизаторы R2 и R4 прекращают направлять пакеты в «Сеть 1». Однако
вэтот момент маршрутизатор R3 еще не получил обновление маршрутной информации. Для него по-прежнему «Сеть 1» считается доступной через маршрутизатор R2.
3.Предположим, что маршрутизатор R3 не успел получить обновленную информацию о топологии сети от своих соседей, но по алгоритму работы дистанционно-векторных протоколов маршрутизации настало время рассылки маршрутной информации своим соседям. Маршрутизатор R3 посылает свою таблицу маршрутизации маршрутизатору R4, указывая, что он имеет маршрут до «Сети 1» через маршрутизатор R2. Маршрутизатор R4 изменяет свою таблицу маршрутизации, отражая эту хорошую, но не правильную информацию, и передает эти сведения дальше маршрутизатору R1. Маршрутизатор R1 распространяет ее маршрутизаторам R2 и R5. Теперь любой пакет, имеющий назначением «Сеть 1», движется по кольцевому маршруту (петле) от маршрутизатора R3 к маршрутизатору R2, далее к R1 и R4 и вновь к маршрутизатору R3.
70
4.3 Максимальное количество транзитных переходов
Продолжим рассмотрение примера, пакеты обновления с информацией о «Сети 1» будут продолжать ходить по кругу до тех пор, пока какой-нибудь другой процесс не сможет остановить это зацикливание. Подобное состояние, называемое счетом до бесконечности (count to infinity), продолжает зацикливание перемещения пакетов по сети. Пока маршрутизаторы имеют возможность считать до бесконечности, некорректная информация позволяет существовать маршрутизации по кругу.
В отсутствие контрмер, которые могли бы остановить процесс, вектор расстояния, исчисляемый количеством переходов, увеличивается на единицу каждый раз, когда пакет проходит следующий маршрутизатор (Рисунок 4.4). Эти пакеты ходят в сети по кругу, из-за неправильной информации в таблицах маршрутизации.
Сеть 1, расстояние = 7
R2
Сеть 1, расстояние = 6
R3 |
R1 |
R5 |
|
|
|
|
Сеть 1, расстояние |
= 4 |
Сеть 1, расстояние =5 |
R4 |
Сеть 1 |
|
|
Рисунок 4.4 – Счет до бесконечности
Алгоритмы маршрутизации по вектору расстояния являются самокорректирующимися, но проблема маршрутизации по кругу, прежде всего, требует разрешения ситуации со счетом до бесконечности. Чтобы исключить эту длительную по времени проблему, в протоколах, использующих вектор расстояния, бесконечность определяется как некоторое максимальное число. Это число выражается в единицах метрики маршрутизации, например, в виде простого количества переходов.
При таком подходе протокол маршрутизации позволит существовать маршрутизации по кругу до тех пор, пока метрика не превысит максимально допустимое значение.
71
Сеть 1, расстояние = 14
R2
Сеть 1, расстояние = 13
R3 |
R1 |
R5 |
|
|
|
|
Сеть 1, расстояние |
= 15 |
Сеть 1, расстояние = 12 |
R4 |
Сеть 1 |
|
|
Таблица маршрутизации max метрика = 16
Сеть 1 недостижима
Рисунок 4.5 – Назначение максимальной длины маршрута
На рисунке 4.5 показан случай, когда это максимальное значение равно 16; обычно для векторов расстояния, измеряемых в количестве переходов, максимальное значение устанавливается равным 15 переходам. В любом случае, если значение метрики превысит максимум, то «Сеть 1» будет считаться недостижимой.
4.4 Применения принципа расщепления горизонта
Другим возможным источником маршрутизации по кругу является ситуация, когда неправильная информация, посылаемая назад маршрутизатору, противоречит информации, посылаемой им самим. Вот как возникает эта проблема.
1.Маршрутизатор R1 передает маршрутизаторам R2 и R4 пакет с обновлением маршрутной информации, говорящий о том, что «Сеть 1» стала недоступна.
2.Однако маршрутизатор R3 передает маршрутизатору R2 пакет обновления, который информирует, что «Сеть 1» доступна по маршруту с расстоянием 4 через маршрутизатор R4. Такое действие не нарушает правило расщепления горизонта, так как для маршрутизатора R3 «Сеть 1» находится за двумя его интерфейсами и оба маршрута имеют одинаковую метрику равную 3.
2.Маршрутизатор R2 делает неправильный вывод о том, что маршрутизатор R3 имеет достоверный путь к «Сети 1», хотя и с менее предпочтитель-
72