- •Введение
- •Условные обозначения, используемые в пособии
- •Графические символы
- •Соглашения по синтаксису командного языка
- •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 Типы множественной адресации
- •Заключение
- •Словарь терминов
- •Список использованных источников
Также рекомендуется в настройках процесса маршрутизации использовать команду log-adjacency-change. При использовании данной команды фиксируются события связанные с переходом соседних маршрутизаторов из состояния DOWN в состояние FULL и наоборот.
При использовании команды с ключом detail фиксируются все состояния соседних маршрутизаторов с которыми установлены и поддерживаются соседские отношения. В последних версиях IOS данная команда включена по умолчанию.
Пример вариантов настройки протокола OSPF приводится на рисунке
11.1.
r2# |
1 |
|
r3# |
router ospf |
|
interface Serial 1 |
|
network |
10.0.0.0 0.255.255.255 area 0 |
|
ip address 10.1.1.6 255.255.255.252 |
log-adjacency-change |
|
ip ospf 1 area 0 |
E1 |
10.1.1.0/30 |
|
|
R2 |
E0 |
R1 |
S0 |
|
|
10.1.1.4/30 |
S1 |
|
RIP |
|
R3 |
r1#
router ospf 1
network 10.1.1.0 0.0.0.7 area 0 log-adjacency-change
Рисунок 11.1 – Пример настройки протокола OSPF
11.2 Управление значением идентификатора маршрутизатора OSPF
Для процесса маршрутизации OSPF идентификатор маршрутизатора (RID) является очень важным параметром. Идентификатор маршрутизатора применяется в алгоритмах работы протокола OSPF для однозначной идентификации маршрутизатора.
Идентификатор маршрутизатору назначается при запуске процесса OSPF. Идентификатором маршрутизатора может быть назначен:
–Старший IP адрес любого физического интерфейса маршрутизатора. Интерфейс может не использоваться в процессе OSPF маршрутизации, но он должен находиться в активном состоянии. Поэтому на маршрутизаторе при запуске процесса OSPF должен быть активен хотя бы один интерфейс, иначе маршрутизатор выдаст ошибку, представленную в примере 11.6 и процесс не будет запущен.
–Старший IP адрес логического интерфейса loopback. Логические интерфейсы всегда находиться в активном состоянии, поэтому использование логического интерфейса является наиболее предпочтительным.
–Вручную. Для ручного задания RID используется команда router-id.
188
Самым высоким приоритетом при назначении идентификатора обладает ручная настройка, самым низким старший адрес физического интерфейса.
Синтаксис команды router-id приводится в примере 11.5
Пример 11.5 – Синтаксис команды router-id
(config-router)# router-id ip-address (config-router)# no router-id ip-address
В качестве параметра команды router-id может выступать IP адрес либо число, записанное в формате IP адреса.
Однажды заданный идентификатор активен все время работы процесса маршрутизации OSPF. Если во время работы маршрутизатора интерфейс, адрес которого используется в качестве RID, переходит в неактивное состояние, идентификатор маршрутизатора не изменяется. Однако при использовании адресов физических интерфейсов в качестве идентификатора маршрутизатора нельзя гарантировать, что после перезагрузки маршрутизатора будет назначен тот же идентификатор, что был ранее. Идентификатор маршрутизатора также переназначается при перезапуске процесса маршрутизации OSPF.
Исходя из этого использование логических интерфейсов предпочтительнее, во-первых, логический интерфейс всегда активен, во-вторых, он может быть объявлен в процесс маршрутизации, что позволит использовать ping с других маршрутизаторов, чтобы проверять наличие связи между маршрутизаторами.
При назначении RID, используя команду router-id, на идентификатор нельзя будет послать ping.
Еще одним плюсом использования реальных IP адресов, будь то адреса физических или логических интерфейсов является возможность применения команды ip ospf name-lookup. Данная команда вводится в режиме глобальной конфигурации маршрутизатора и позволяет при выводе информации содержащей RID заменять его числовое значение DNS именем. Это позволяет упростить администратору СПД идентифицировать маршрутизаторы OSPF.
При первоначальной конфигурации идентификатора маршрутизатора с помощью команды router-id необходимо перезапустить процесс маршрутизации OSPF, используя команду clear ip ospf process. В дальнейшем при перезагрузках маршрутизатора идентификатор, заданный командой router-id будет назначаться автоматически.
Стоит обратить внимание, что если во время запуска процесса OSPF операционная система не сможет назначить маршрутизатору RID. Например, по причине того, что в этот момент у маршрутизатора не будет ни одного активного интерфейса, и в конфигурационном файле будет отсутствовать вручную заданный идентификатор. Процесс маршрутизации OSPF запущен не будет, а операционная система выдаст сообщение об ошибке представленное в примере 11.6.
189
Пример 11.6 – Ошибка назначения RID
%OSPF-4-NORTRID: OSPF process [dec] cannot start. There must be at least one "up" IP interface, for OSPF to use as router ID
11.3 Настройка аутентификации в протоколе OSPF
В отличие от рассмотренных ранее протоколов маршрутизации, в которых аутентифицируется только часть служебных пакетов, в протоколе OSPF поле аутентификации вынесено в заголовок служебного пакета, что делает возможным аутентифицировать каждый служебный пакет протокола OSPF. Данная возможность делает протокол OSPF более защищенным от нежелательного воздействия по сравнению с рассмотренными ранее протоколами маршрутизации.
Как и другие протоколы маршрутизации, протокол OSPF поддерживает два типа аутентификации:
–Аутентификация по паролю;
–Аутентификация при помощи MD5.
Оба типа аутентификации настраиваются отдельно на каждом интерфейсе маршрутизатора, на котором запущен протокол OSPF.
Для задания типа аутентификации используется команда ip ospf authentication. Синтаксис команды ip ospf authentication приводится в примере 11.7.
Пример 11.7 – Синтаксис команды ip ospf authentication
(config-if)# ip ospf authentication [message-digest | null] (config-if)# no ip ospf authentication
Описание параметров команды ip ospf authentication приводиться в таблице 11.3.
Таблица 11.3 – Параметры команды ip ospf authentication
Параметр |
Описание |
message-digest |
Аутентификация с помощью MD5. |
null |
Отсутствие аутентификации. |
При использовании команды ip ospf authentication без параметров будет использована аутентификация по паролю.
Для задания текстовой строки используемой при аутентификации по паролю используется команда ip ospf authentication-key. Синтаксис команды ip ospf authentication-key приводится в примере 11.8.
190
Пример 11.8 – Синтаксис команды ip ospf authentication-key
(config-if)# ip ospf authentication-key password (config-if)# no ip ospf authentication-key
В качестве параметра команды ip ospf authentication-key выступает строка, которая будет использоваться как пароль. Необходимо отметить, что для аутентификации будет использоваться только первые 8 символов, а остальные будут отброшены. Пример настройки аутентификации по паролю приводиться на рисунке 11.2.
172 .10.1.0/30
R1 S0
r1#
interface serial 0
ip address 172.16.1.1 255.255.255.252
ip ospf authentication
ip ospf authentication -key PassWord
S1 R2
r2#
interface serial 1
ip address 172.16.1.2 255.255.255.252
ip ospf authentication
ip ospf authentication -key PassWord
Рисунок 11.2 – Аутентификация по паролю в протоколе OSPF
Для задания текстовой строки используемой при аутентификации с помощью MD5 используется команда ip ospf message-digest-key md5. Синтаксис команды ip ospf message-digest-key md5 приводится в примере 11.9. Описание параметров команды приводиться в таблице 11.4.
Пример 11.9 – Синтаксис команды ip ospf message-digest-key md5
(config-if)# ip ospf message-digest-key key-id encryption-type md5 key (config-if)# no ip ospf message-digest-key key-id
Таблица 11.4 – Параметры команды ip ospf message-digest-key md5
Параметр |
|
Описание |
key-id |
Номер используемого ключа. |
|
encryption-type |
Тип вводимой строки: |
|
|
0 |
нешифрованная строка; |
|
7 |
шифрованная средствами IOS стро- |
key |
ка. |
|
Строка для аутентификации. |
При использовании аутентификации с помощью MD5, на интерфейсе можно задать несколько строк, которые могут применяться при аутентификации соседних маршрутизаторов. Эта особенность удобна при необходимости
191