Что такое статическая маршрутизация

Статическая маршрутизация

2.1. Основы статической маршрутизации

Маршруты к удаленным сетям могут быть сконфигурированы для каждого маршрутизатора вручную администратором (статическая маршрутизация) или созданы с помощью маршрутизирующих протоколов (динамическая маршрутизация).

Статические маршруты полностью определены администратором, поэтому они более безопасны, требуют меньше вычислительных ресурсов и более узкую полосу пропускания по сравнению с динамическими маршрутами. Однако сети, использующие статическую маршрутизацию, плохо масштабируемы, при изменении топологии требуется внесение изменений администратором в конфигурацию, что может приводить к ошибкам. Поэтому статическая маршрутизация используется либо в малых сетях, либо в комбинации с протоколами динамической маршрутизации на отдельных участках сети. Статические маршруты, по сравнению с динамическими, характеризуются более высоким приоритетом, поскольку административное расстояние AD = 1 (см. табл. 1.1).

Что такое статическая маршрутизация. Смотреть фото Что такое статическая маршрутизация. Смотреть картинку Что такое статическая маршрутизация. Картинка про Что такое статическая маршрутизация. Фото Что такое статическая маршрутизация

Статическая маршрутизация также используется при формировании суммарных(объединенных) маршрутов, что сокращает количество записей в таблице маршрутизации (см. курс «Основы построения сетей пакетной коммутации»).

2.2. Конфигурирование статической маршрутизации

Чтобы сконфигурировать статическую маршрутизацию администратор должен задать маршруты ко всем возможным сетям назначения, которые не присоединены непосредственно к данному маршрутизатору. Например, из маршрутизатора R-A ( рис. 2.1), к которому прямо присоединены две сети ( Сеть 1, Сеть 4), необходимо проложить маршруты к четырем оставшимся сетям (из шести представленных на схеме). К маршрутизатору R-Bпрямо присоединены 3 сети ( Сеть 2, Сеть 4, Сеть 5), поэтому из него следует проложить 3 маршрута к оставшимся сетям.

Адрес входного интерфейса следующего маршрутизатора (следующего перехода) на пути к адресату иногда называют шлюзом. Например, для пакетов, попавших в маршрутизатор R-В, шлюзами будут:

Ниже приведен пример конфигурирования статической маршрутизации для Cisco-маршрутизатора R-В, когда используется адрес следующего перехода. Маршрутизатор R-В непосредственно связан с сетями 192.168.20.0, 200.4.4.0 и 200.5.5.0, поэтому статические маршруты нужно создать для остальных трех сетей, которые прямо не присоединены к R-В.

Аналогично конфигурируются остальные маршрутизаторы.

Для ускорения процесса маршрутизации вместо адреса следующего перехода ( next hop ) можно задать идентификатор выходного интерфейса маршрутизатора и тем самым избежать рекурсивной обработки маршрута. При этом формируется прямо присоединенный статический маршрут. В процессе конфигурирования предварительно нужно удалить все ранее созданные статические маршруты по команде no ip route :

Ниже приведен пример конфигурирования маршрутизатора R-B ( рис. 2.1) с использованием выходного интерфейса:

Источник

А вы хорошо знаете статическую маршрутизацию?

Статический маршрут — первое, с чем сталкивается любой человек при изучении понятия маршрутизации IP пакетов. Считается, что это — наиболее простая тема из всех, в ней всё просто и очевидно. Я же постараюсь показать, что даже настолько примитивная технология может содержать в себе множество нюансов.

Оговорка. При написании топика я исхожу из того, что читатель знаком с концепцией маршрутизации, умеет делать статические маршруты и не считает слово «ARP» ругательным. Впрочем, даже бывалые связисты наверняка найдут тут что-то новое.
Все примеры были проверены на IOS линейки 15.2M. Поведение других ОС может различаться.
И никакого динамического роутинга тут не будет.

Мы работаем со следующей топологией:
Что такое статическая маршрутизация. Смотреть фото Что такое статическая маршрутизация. Смотреть картинку Что такое статическая маршрутизация. Картинка про Что такое статическая маршрутизация. Фото Что такое статическая маршрутизация

Как появляется статический маршрут?

Для начала, выполним команду, которую знает каждый, и посмотрим дебагами, что произойдет:

IOS создал маршрут, и сразу послал arp запрос в поисках next hop, который у нас – 10.0.0.3. И сразу вопрос: откуда роутер узнал, что запрос надо слать в интерфейс Gi0/1? Наверняка кто-то скажет «из списка локальных интерфейсов», и жестоко ошибется. Маршрутизация так не работает. На самом деле, IOS сделал рекурсивный запрос к таблице маршрутизации, чтобы узнать, как добраться до next hop:

И вот он, наш Gi0/1. IOS узнает, что с рекурсивными запросами к RIB надо заканчивать, как только находит маршрут с флагом «directly connected». Но что если ему в ответ на изначальный запрос к 10.0.0.3 вернется вовсе не connected маршрут, а промежуточный, ссылающийся на другой next hop? Вернемся к этому чуть позже, а пока вспомним, что такое CEF.

Примерно во всей документации, ориентированной на начинающих, говорится, что каждый пакет перемещается в соответствии с таблицей маршрутизации. На самом деле на всех более-менее современных платформах это уже не так, ведь таблица маршрутизации (далее – RIB) вовсе не оптимизирована для быстрой передачи данных. Оценить масштаб бедствия позволяет эта таблица (хотя у process switching’а множество недостатков помимо неоптимальных запросов – например, постоянное переключение шедулера CPU между контекстами, что весьма затратно). CEF является серьезной оптимизацией. В современной реализации он строит две таблицы – FIB (Forwarding Information Base, таблица передачи пакетов, в основе нее – связный граф со страшным названием 256-way mtrie) и adjacency table (таблица соседств). Первая из них строится на основе таблицы маршрутизации и за один проход позволяет получить всю нужную информацию. Строится она заранее, еще до того, как появится первый соответствующий ей пакет.

Вернемся к нашему статическому маршруту. Вот запись в таблице маршрутизации:

Куда слать пакет? Где искать 10.0.0.3? Непонятно. Надо еще раз запросить таблицу маршрутизации, на этот раз по поводу 10.0.0.3, и, если надо, выполнить еще несколько итераций, пока не выясним connected интерфейс. И вот примерно таким образом мы фактически в несколько раз снижаем производительность маршрутизатора.

А вот что говорит CEF:

Просто и лаконично. Есть интерфейс, есть next hop, к которому надо слать пакет. Что там говорилось про adjacency table?

Обратим внимание на какую-то длинную последовательность в предпоследней строке. Что-то это напоминает… Смотрим mac 10.0.0.3:

Смотрим свой mac адрес на gi0/1:

Ага. Та страшная строка – всего лишь два мака, которые надо подставить в заголовок Ethernet на этапе инкапсуляции, и ethertype 0x0800, т.е. банальный IPv4. И в двух таблицах CEF есть абсолютно вся информация, какая нужна для успешной отправки пакета дальше по цепочке.

Если у кого-то возникнет вопрос, зачем железке держать сразу две таблицы вместо одной, то дам очевидный ответ: обычно у маршрутизатора мало интерфейсов (а заодно и соседей) и много маршрутов. Какой смысл тысячи раз дублировать одни и те же маки в FIB? Памяти много не бывает, особенно на аппаратных платформах, будь то новомодные ASR’ы или даже L3 свитчи линейки Catalyst. Все они задействуют CEF при передаче пакетов.

И кстати, вернемся на минутку к изначальному дебагу. Отключим CEF командой no ip cef (никогда так не делайте) и сравним результат:

Маршрут добавлен. Arp запроса не было. И правильно – зачем RIB сдался mac адрес? Если пустить пинг до, к примеру, 3.1.1.1, то скорее всего будет так:

Первый пакет отбрасывается, и роутер посылает arp запрос с целью узнать mac адрес 10.0.0.3, если он ранее не был известен. CEF же всегда заранее узнает mac адрес next hop’а.

С этим разобрались. Теперь вернемся к вопросу, что будет, если next hop статического маршрута вовсе не на directly connected интерфейсе. Поступим просто:

, где Gi0/2 имеет адрес 100.100.100.100/24.

Как все плохо-то… А что если у нас есть маршрут на целую суперсеть?

Сейчас наша таблица маршрутизации выглядит так:

Вроде хорошо. Новый маршрут на 100.100.100.101 не применяется для 10.0.0.3, так как его маска /8 намного короче, чем /24 у connected интерфейса. Но вдруг Gi0/1, содержавший next hop для 3.1.1.0/24, по какой-то непонятной причине ушел в down, и его connected маршрут пропал из RIB.

Ой. Теперь пакеты на сеть 3.1.1.0/24 идут куда-то не туда. Я не могу представить себе сценарий, когда ожидаемое поведение статического маршрута – переключение на другой интерфейс. Если за тем интерфейсом находится резервный путь, то все-таки надо создавать еще один статический маршрут…

Что делать? Указывать сразу в маршруте интерфейс. Пересоздадим маршрут:

Поднимаем Gi0/1. Смотрим, куда теперь ведет маршрут на 3.1.1.0/24:

Тут уже указан интерфейс. Поэтому не будет рекурсивных запросов к таблице маршрутизации. Проверяем FIB:

Да, никакого «recursive». А если снова погасить gi0/1? Маршрут исчез.

И это притом, что маршрут до 10.0.0.3 все еще был:

А что будет, если путь к next hop даст маршрут по умолчанию, а маршрут на 3.1.1.0/24 не ссылается на интерфейс?

Обратите внимание, что первой строкой после «show ip cef» идет «0.0.0.0/0», а не «3.1.1.0/24». Несмотря на то, что next hop формально есть, по факту все итерации опроса таблицы маршрутизации (кроме первой) игнорируют маршрут по умолчанию, что логично, иначе любой запрос к таблице маршрутизации почти всегда бы резолвился (под «резолвиться» понимается нахождение интерфейса, в который нужно отправить пакет). Поэтому наш статический маршрут отсутствует, но пакеты все равно улетают к Gi0/2. Вроде бы все то же самое, что и без явного указания интерфейса? Не совсем. Допустим, протоколу маршрутизации сказали «redistribute static». Если статический маршрут пропал, то анонс тоже отзывается. А если нет, то маршрутизатор продолжит говорить всем «туда идти через меня», и это почти наверняка обернется L3 кольцом для префикса 3.1.1.0/24, который мог бы быть доступен откуда-нибудь еще. Но стоп, мы договаривались не трогать динамический роутинг…

А что если в статическом маршруте указать интерфейс, но не указывать IP адрес следующего хопа? Ответ: в случае Ethernet, если на next hop не отключен proxy arp, связность не нарушится, но роутеру может ОЧЕНЬ поплохеть. Подробнее. Если сказать «ip route 3.1.1.0 255.255.255.0 gi0/1», то ничего особо страшного не случится, даже пару сотен записей в arp таблице любой роутер переварит (и существуют сценарии-workaround’ы, в которых оптимальным решением является именно такой костыль), но вот «ip route 0.0.0.0 0.0.0.0 gi0/1» на пограничном маршрутизаторе наверняка убьет его. Потому запомните общее правило: если создается статический маршрут с next hop’ом на Ethernet интерфейсе, то его IP адрес должен указываться всегда. Исключения – только когда вы очень хорошо представляете себе, что делаете, зачем делаете и почему нельзя сделать иначе.

И напоследок, сделаем одну очень нехорошую штуку.

Первый маршрут в порядке, сто раз протестирован. А вот второй странный – он ведет через первый. А первый теперь ссылается на второй, и у нас бесконечная рекурсия. Вот что произошло:

Добавилось успешно. Но затем в дебагах высветилось:

И появилась запись в лог с severity 3:

Однако, RIB никакого криминала не видит:

Вывод – никогда так не делайте.

Почему статический маршрут может не попасть в таблицу маршрутизации?

Любой сетевик должен сходу дать одно из объяснений, касающееся любого источника маршрутов в IOS: существует другой маршрут на тот же самый префикс, но с меньшим AD (все помнят Administrative Distance?). Маршрут, источник которого – “connected”, всегда имеет AD=0, и ни один другой источник маршрутов не может привнести ничего ниже, чем «1», даже статический маршрут с явным указанием интерфейса. Пример connected:

Т.е. пока интерфейс Gi0/1 находится в состоянии up и имеет адрес из подсети 10.0.0.0/24, ни один статический маршрут на этот префикс в таблице маршрутизации не появится.

Еще есть вариант «разные источники маршрутов добавляют маршруты на один и тот же префикс с одинаковым AD». Поведение IOS в данном случае не документировано, общая рекомендация – «никогда так делайте».

Но посмотрим другие, менее очевидные примеры. Например, статические маршруты можно создать со словом «permanent», которое переводится как «постоянный», и тогда они будут всегда висеть в таблице маршрутизации. Правильно? Нет.

Добавляем его и смотрим:

Кладем Gi0/1, и видим:

В RIB он есть, и другие протоколы маршрутизации могут его использовать:

А теперь, не поднимая Gi0/1:

Просто пересоздали его, ничего не меняя. И вот что произошло:

Постоянный, говорите? Нет. Есть один маленький нюанс: чтобы перманентный маршрут навеки вписался в таблицу маршрутизации, нужно, чтобы он хотя бы на долю секунды резолвился. Хотя какое еще «навеки»? Когда он остался висеть в воздухе без резолвящегося интерфейса, достаточно сказать «clear ip route *» или тем более «reload», чтобы он исчез из RIB.

Но продолжим. Сделаем вот так:

Вроде нормальные маршруты. Что произойдет? Со вторым – ровным счетом ничего.

Суть вот в чем. Допустим, есть маршрут на X.X.X.X через Y.Y.Y.Y. Мы добавляем маршрут на X1.X1.X1.X1 (этот префикс полностью покрывается X.X.X.X) через X2.X2.X2.X2 (а он тоже покрывается X.X.X.X). IOS делает закономерный вывод: второй маршрут не несет в себе никакой новой информации и совершенно бесполезен, поэтому его можно не устанавливать в RIB.

А теперь финт ушами.

И вот это подводит нас к еще одному важному моменту. Указание интерфейса в статическом маршруте позволяет обойти многие проверки, так как статическому маршруту больше не требуется выполнять рекурсивные запросы к RIB в поисках пути до next hop, и при своем добавлении он не заденет триггеры на других маршрутах. Но это не отменяет главного требования: next hop обязан резолвиться в конкретный интерфейс, а тот интерфейс обязан быть в up. Тот факт, что рекурсивных запросов к RIB больше не будет, означает, что указанный IP адрес next hop’а находится прямо за интерфейсом, и наверняка отзовется на arp запрос (с точки зрения роутера). Если у соседнего по Gi0/1 роутера включен proxy arp, то он в ответ на arp запрос наверняка вернет свой mac адрес, и всё будет хорошо. Разве что лишняя запись в arp таблице…

Но все равно так делать не стоит.

Необходимо упомянуть и о еще одном важном моменте. Статический маршрут должен по идее исчезнуть из таблицы маршрутизации, как только он перестанет резолвиться. Но на практике есть множество ситуаций, когда next hop пропадает, но при этом статический маршрут на какое-то время остается. К примеру, когда next hop резолвится через маршрут, полученный от протокола динамической маршрутизации. Все дело в том, что процесс, отслеживающий наличие next hop в RIB, не всегда может получить уведомление об исчезновении маршрута, и он вынужден периодически (раз в 60 секунд по умолчанию) перепроверять, все ли хорошо. Это вызовет заметную задержку сходимости сети.

Поменять интервал проверки, к примеру, на 10 секунд можно с помощью команды:

Источник

Статическая маршрутизация

Статическая маршрутизация основана на том наблюдении, что если известны все сети, информацию о которых нужно сообщить маршрутизатору, то достаточно ввести в его конфигурацию данные об этих маршрутах вручную. Метод статической маршрутизации обычно является довольно простым для понимания и настройки (по крайней мере, в небольшой сети) и по праву считается наименее сложным методом маршрутизации. Для ознакомления с методом статической маршрутизации рассмотрим простую сеть, показанную на рис.1, и изучим процесс маршрутизации, происходящий с момента начальной загрузки маршрутизаторов.

Что такое статическая маршрутизация. Смотреть фото Что такое статическая маршрутизация. Смотреть картинку Что такое статическая маршрутизация. Картинка про Что такое статическая маршрутизация. Фото Что такое статическая маршрутизация

Таблица маршрутизации для Во

ПолучательСледующий транзитный переходВыходной интерфейсМетрика
.
Таблица маршрутизации для Roscoe

ПолучательСледующий транзитный переходВыходной интерфейсМетрика
.
Таблица маршрутизации для Luke

Первым столбцом в таблицах маршрутизации каждого маршрутизатора является получатель, с информацией о сети получателя.При этом перечислены только те сети, к которым непосредственно подключены маршрутизаторы. При использовании статической маршрутизации такие записи в таблицах предусмотрены по умолчанию. А если в таблицы необходимо ввести данные о других сетях, то эти сведения должны быть введены вручную. За столбцом с адресом сети получателя следует столбец. Следующий транзитный переход, который сообщает маршрутизаторам, каковым является адрес маршрутизатора, находящегося в конце следующего транзитного перехода по маршруту к этой сети получателя. В настоящее время этот столбец не заполнен, поскольку данные о маршрутах еще не были введены вручную; единственными маршрутами, известными маршрутизаторам, являются маршруты, ведущие к устройствам, к которым они непосредственно подключены. Следующим является столбец «Выходной интерфейс», который сообщает маршрутизатору, через какой интерфейс должен быть перенаправлен пакет (обычно эта информация не требуется). Наконец, столбец Метрика используется, если к одному и тому же получателю ведут несколько маршрутов, указанных в таблице. Маршрутизатор, выбирая направление передачи пакета к любому конкретному получателю, предпочитает маршрут с наименьшей стоимостью. В данном примере в качестве метрики применяется количество транзитных переходов (число, которое указывает, сколько маршрутизаторов находится в пути между этим маршрутизатором и сетью получателя). Поскольку все маршрутизаторы непосредственно подключены к тем единственным сетям, о которых они в настоящее время имеют информацию, столбец метрика во всех таблицах не заполнен. Далее необходимо отметить, что каждому интерфейсу маршрутизатора присвоен IP-адрес. Эти адреса будут более подробно рассматриваться ниже, но в данный момент достаточно указать, что IP-адрес шлюза клиента 1 (192.168.1.100), применяемого по умолчанию, представляет собой адрес интерфейса Е0/0 маршрутизатора Во (192.168.1.1), а для клиента 2 (10.0.0.100) в качестве IP-адреса шлюза, применяемого по умолчанию, указано 10.0.0.1 (адрес интерфейса Е0/1 маршрутизатора Luke). Рассмотрим, что произойдет после того, как клиент 1 отправит пакет клиенту 2. Клиент 1 выполняет операцию «И» с адресом и маской сети получателя и обнаруживает, что клиент 2 находится в другой сети. Клиент 1 выполняет поиск в своей кон¬фигурации IP и находит запись с данными о шлюзе, применяемом по умолчанию, где указан маршрутизатор Во (192.168.1.1). После этого клиент отправляет пакет с приведенными ниже параметрами:

Маршрутизатор Во получает пакет через интерфейс Е0/0 и проверяет поле МАС- адреса получателя. Обнаружив, что в качестве МАС-адреса получателя указан его собственный МАС-адрес, он приступает к обработке пакета, выполняя поиск в своей таблице маршрутизации адреса сети получателя (10.0.0.0). После просмотра таблицы маршрутизации маршрутизатор обнаруживает, что у него нет данных о маршруте к указанной сети получателя, поэтому он отправляет клиенту 1 в ответ пакет IСМР, сообщая тем самым клиенту 1, что получатель недостижим. Чтобы устранить это нарушение связи, необходимо указать маршрутизатору Во, как достичь сети 10.0.0.0. Отметим, что маршрутизатор Во должен передавать все пакеты для сети 10.0.0.0 маршрутизатору Roscoe, поскольку именно Roscoe является следующим маршрутизатором в пути к сети получателя. Поэтому необходимо ввести в таблицу маршрутизации маршрутизатора Во данные о статическом маршруте с приведенными ниже параметрами:

Что такое статическая маршрутизация. Смотреть фото Что такое статическая маршрутизация. Смотреть картинку Что такое статическая маршрутизация. Картинка про Что такое статическая маршрутизация. Фото Что такое статическая маршрутизация

ПолучательСледующий транзитный переходВыходной интерфейсМетрика
Таблица маршрутизации для Во

ПолучательСледующий транзитный переходВыходной интерфейсМетрика
Таблица маршрутизации для Roscoe

ПолучательСледующий транзитный переходВыходной интерфейсМетрика
.
Таблица маршрутизации для Luke

Можно ли теперь надеяться на то, что после отправки клиентом 1 пакета клиенту 2 этот пакет будет успешно доставлен? Рассмотрим происходящий при этом процесс и выясним, так ли это. Клиент 1 выполняет такие же действия, как и в предыдущем примере, и передает пакет маршрутизатору Во, указывая в нем МАС-адрес маршрутизатора Во и IP-адрес клиента 2. Маршрутизатор Во проверяет пакет, находит в своей таблице маршрутизации запись о маршруте, после чего передает пакет в маршрутизатор, находящийся в конце следующего транзитного перехода (Roscoe), введя в этот пакет перечисленные ниже параметры:

До сих пор процесс передачи пакета проходит успешно. На данном этапе поля в пакете проверяет маршрутизатор Roscoe, ищет в своей таблице маршрутизации запись с данными о сети получателя и ничего не находит. Поэтому маршрутизатор Roscoe предпринимает попытку передать клиенту 1 пакет ICMP с информацией о том, что получатель недоступен, но после обращения к своей таблице маршрутизации обнаруживает, что у него даже нет сведений о том, как вернуть пакет назад! Поэтому он просто уничтожает первоначальный пакет, а клиенту 1 остается только ждать завершения этого сеанса передачи по тайм-ауту (тогда как при правильной организации работы сети он почти немедленно получил бы сообщение о недостижимости получателя — Destination Unreachable). Для решения этой проблемы необходимо ввести данные о статическом маршруте к сети 10.0.0.0 и в таблицу маршрутизации Roscoe с использованием приведенных ниже параметров:

После ввода этих данных будет сформирована конфигурация, показанная на рис.3. Теперь клиент 1 передает пакет, а маршрутизатор Во находит необходимые данные в своей таблице маршрутизации и перенаправляет пакет маршрутизатору Roscoe. Маршрутизатор Roscoe также находит требуемые данные в своей таблице маршрутизации и перенаправляет пакет маршрутизатору Luke. Последний выполняет поиск в своей таблице маршрутизации, обнаруживает, что он непосредственно подключен к сети 10.0.0.0/8, и сразу же перенаправляет пакет клиенту 2. На этот раз передача пакета завершается успешно.

Что такое статическая маршрутизация. Смотреть фото Что такое статическая маршрутизация. Смотреть картинку Что такое статическая маршрутизация. Картинка про Что такое статическая маршрутизация. Фото Что такое статическая маршрутизация

ПолучательСледующий транзитный переходВыходной интерфейсМетрика
Таблица маршрутизации для Во

ПолучательСледующий транзитный переходВыходной интерфейсМетрика
Таблица маршрутизации для Roscoe

ПолучательСледующий транзитный переходВыходной интерфейсМетрика
Таблица маршрутизации для Luke

Допустим, что теперь клиент 2 пытается ответить и передает пакет маршрутизатору Luke. Последний выполняет поиск в своей таблице маршрутизации маршрута к сети 192.168.1.0/24 и ситуация повторяется (он снова не находит нужную информацию). Для корректной работы всей конструкции необходимо ввести информацию о маршрутах к сетям 10.0.0.0/8 и 192.168.1.0/24 для каждого маршрутизатора вдоль всего этого маршрута, как показано на рис. 4.

Что такое статическая маршрутизация. Смотреть фото Что такое статическая маршрутизация. Смотреть картинку Что такое статическая маршрутизация. Картинка про Что такое статическая маршрутизация. Фото Что такое статическая маршрутизация

ПолучательСледующий транзитный переходВыходной интерфейсМетрика
Таблица маршрутизации для Во

ПолучательСледующий транзитный переходВыходной интерфейсМетрика
Таблица маршрутизации для Roscoe

ПолучательСледующий транзитный переходВыходной интерфейсМетрика
Таблица маршрутизации для Luke

На первый взгляд, все обстоит великолепно, так как клиент 1 может успешно передать пакет клиенту 2. Но эта конфигурация имеет несколько недостатков. Так, даже несмотря на то, что клиент 1 может без каких-либо проблем передавать пакеты клиенту 2, клиент 1 получит сообщение Network Unreachable (Сеть не доступна) при попытке выполнить эхо-тестирование IP-адреса 172.31.1.3 (интерфейса Е0/0 маршрутизатора Luke). Это связано с тем, что в маршрутизаторе Во в настоящее время отсутствуют данные о маршруте к сети 172.31.0.0. Хотя в данный момент эта проблема кажется несущественной, после установки сервера в сети 172.31.0.0 клиент 1 не сможет к нему обратиться. (Аналогичная проблема возникает также для клиента 2 и сети 172.16.0.0.) Поэтому для обеспечения полной связи с любой сетью необходимо добиться того, чтобы в каждом маршрутизаторе имелись данные о маршруте к любой сети, как показано на рис.5.

Что такое статическая маршрутизация. Смотреть фото Что такое статическая маршрутизация. Смотреть картинку Что такое статическая маршрутизация. Картинка про Что такое статическая маршрутизация. Фото Что такое статическая маршрутизация

ПолучательСледующий транзитный переходВыходной интерфейсМетрика
Таблица маршрутизации для Во

ПолучательСледующий транзитный переходВыходной интерфейсМетрика
Таблица маршрутизации для Roscoe

ПолучательСледующий транзитный переходВыходной интерфейсМетрика
Таблица маршрутизации для Luke

Для ввода в конфигурацию рассматриваемой сети информации о стандартных маршрутах необходимо ввести в таблицы маршрутизации Во и Luke маршруты к сети со всеми нулями, как показано на рис.6.

Что такое статическая маршрутизация. Смотреть фото Что такое статическая маршрутизация. Смотреть картинку Что такое статическая маршрутизация. Картинка про Что такое статическая маршрутизация. Фото Что такое статическая маршрутизация

ПолучательСледующий транзитный переходВыходной интерфейсМетрика
Таблица маршрутизации для Во

ПолучательСледующий транзитный переходВыходной интерфейсМетрика
Таблица маршрутизации для Roscoe

ПолучательСледующий транзитный переходВыходной интерфейсМетрика
Таблица маршрутизации для Luke

Теперь, после ознакомления с основными принципами работы статической маршрутизации, рассмотрим пример более сложной реализации метода статической маршрутизации. На рис. 7 показана схема сети, в которой установлен новый маршрутизатор, а также предусмотрены два дополнительных канала для повышения степени резервирования. Таблицы маршрутизации, применяемые в этой сети, приведены в табл.1.

Что такое статическая маршрутизация. Смотреть фото Что такое статическая маршрутизация. Смотреть картинку Что такое статическая маршрутизация. Картинка про Что такое статическая маршрутизация. Фото Что такое статическая маршрутизация

На этот раз вся необходимая подготовка уже проведена и в таблицы введены все требуемые маршруты. Следует обратить внимание на то, какие существенные изменения внесены в таблицу маршрутизации маршрутизатора Roscoe, а также на то, какое большое количество записей о маршрутах введено в таблицу нового маршрутизатора Daisy. Кроме того, следует отметить, что в таблицу маршрутизации Во введен еще один стандартный маршрут.

Рассмотрим таблицы маршрутизации последовательно, начиная с Во.

В таблицу маршрутизации Roscoe введены маршруты к новым сетям, а также резервный маршрут к сети 192.168.1.0. Обратите внимание на то, что для резервных маршрутов к каждой сети указана более высокая метрика, чем для основных маршрутов. Поскольку в качестве метрики используется количество транзитных переходов, применяемый при этом подход является довольно очевидным. В маршрутизаторе Roscoe используется маршрут с минимальной метрикой, а если этот маршрут становится неприменимым, он закрывается и вместо него используется маршрут с более высокой метрикой. Например, для доставки пакетов в сеть 192.168.200.0 маршрутизатор Roscoe использует маршрут через Daisy (172.20.1.2), поскольку он характеризуется наименьшей метрикой (является самым коротким маршрутом). Но если произойдет отказ интерфейса Е1/0 маршрутизатора Roscoe, последний удалит этот маршрут и вместо него начнет использовать маршрут через маршрутизатор Во. Следует учитывать, что в методе статической маршрутизации не предусмотрено распределение нагрузки по маршрутам с неравной стоимостью. Маршрутизатор просто всегда выбирает маршрут с наименьшей метрикой [6]

Анализ таблицы маршрутизации Daisy показывает, что в ней имеется по два маршрута почти к любой сети. И в этом случае следует обратить внимание на то, как используются метрики для определения того, какой маршрут должен быть выбран в качестве наиболее подходящего. Например, для доставки пакета в сеть 10.0.0.0 маршрутизатором Daisy должен быть выбран маршрут через Roscoe (с метрикой 2). Но если в маршрутизаторе Daisy произойдет отказ интерфейса ЕО/1, то он вместо этого отправит пакет маршрутизатору Во. К сожалению, именно в этом случае средства распределения нагрузки, предусмотренные в методе статической маршрутизации, могут стать причиной проблем в сети, где имеются резервные каналы. Поскольку в маршрутизаторе Во предусмотрены два статических маршрута с одинаковой стоимостью, он снова будет направлять каждый второй пакет прямо к Daisy. Затем Daisy снова отправит тот же пакет маршрутизатору Во, который с вероятностью 50% опять отправит его Daisy (как будто они играют этим пакетом в «пинг-понг»).

Что такое статическая маршрутизация. Смотреть фото Что такое статическая маршрутизация. Смотреть картинку Что такое статическая маршрутизация. Картинка про Что такое статическая маршрутизация. Фото Что такое статическая маршрутизация

Хотя такой пакет чаще всего будет в конечном итоге доставлен по назначению, иногда установленное в нем (в поле TTL) время жизни истекает и пакет уничтожается. Кроме того, все эти повторные передачи пакета потребляют ценные ресурсы маршрутизаторов и каналов. Более приемлемая конструкции таблицы маршрутизации для маршрутизатора Во показана в табл.2 (а топология сети еще раз показана на рис.8 для удобства пользования). В этой конфигурации предусмотрено, что если Daisy перенаправляет маршрутизатору Во пакет для сети 10.0.0.0, то последний перенаправляет пакет маршрутизатору Roscoe с вероятностью 100%.

Теперь должно быть очевидно, какие возможности предоставляет статическая маршрутизация. На основании изложенного можно сделать вывод, что при наличии относительно небольшой и простой сети статическая маршрутизация, вероятно, является наилучшим способом организации трафика. Статическую маршрутизацию можно также использовать и при наличии резервных каналов, но в большинстве случаев гораздо более приемлемым становится протокол [Динамическая маршрутизация|динамической маршрутизации].

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

ПолучательСледующий транзитный переходВыходной интерфейсМетрика