Урок 26. Настройка статической маршрутизации

Чтобы лучше понять принцип маршрутизации настроим статическую маршрутизацию на основе нескольких примеров. Для настройки подключимся к консоли маршрутизатора посредством консольного (rollover) кабеля, а после установки IP адреса можно подключаться через Telnet/SSH.  

После включения питания оборудование проходит диагностику, называемую POST (Power On Self Testing). Если оборудование и система в порядке, то загружается операционная система IOS (Internetwork Operating System).

Если система не содержит конфигурацию, то система запустит мастер первоначальной настройки, с помощью которого можно настроить порты, пароль к системе и т.д.:

 Мастер настройки маршрутизатора

 

Рекомендую пропустить данный этап и настроить необходимые параметры самостоятельно. Но прежде повторим какие режимы доступны для настройки:

Последовательность перехода к режимам IOS

 

Теперь настроим сеть, указанную на рисунке:

Диаграмма сети

 

Необходимо настроить маршрутизацию так, чтобы все компьютеры были друг другу доступны. Приступим. 

Приведем настройки для маршрутизатора A_Router. Настройки для маршрутизатора B_Router аналогичны за исключением IP адресов. 

Ввод в режим глобальной конфигурации: 

Router> enable

Router# confgiure terminal

 

Меняем имя маршрутизатора: 

Router(config)# hostname A_Router

A_Router(config)#  - имя поменялось с Router на A_Router.

 

Назначаем IP адрес и маску для интерфейса FastEthernet 0/0, подключенного к локальной сети: 

A_Router(config)# interface fastethernet0/0

A_Router(config-if)# ip address 172.16.0.1 255.255.0.0

 

Затем включаем интерфейс:

A_Router(config-if)# no shutdown

 

Для информативности можно добавить комментарий к каждому интерфейсу: 

A_Router(config-if)# description Connected to LAN as default gateway

 

То же самое проделаем и с другим интерфейсом, подключенному к маршрутизатору В. Настройте там сеть 10.1.1.0/30.  Подобные интерфейсы еще называют WAN (Wide Area Network) интерфейсами.  

Теперь настроим статическую маршрутизацию к сети 192.168.1.0/24: 

A_Router(config)# ip route 192.168.1.0 255.255.255.0 fastethernet0/1 - (через этот интерфейс доступна сеть 192.168.1.0/24)

либо можно ввести IP адрес интерфейса вместо его названия: 

A_Router(config)# ip route 192.168.1.0 255.255.255.0 10.0.0.1

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

Текущая конфигурация марщрутизатора А

Текущая конфигурация маршрутизатора B

 

Теперь выполните команду ping 192.168.1.100 с любого компьютера маршрутизатора A_Router. Если результат выглядит примерно так

Удачный результат программы Ping

 

то, все настроено правильно. 

Поздравляю, статическая маршрутизация выполнена. Теперь каждый маршрутизатор будет доступен с любого компьютера. Напомню, что данная конфигурация хранится в оперативной памяти, поэтому сохраним ее в энергонезависимой памяти для последующего использования: 

A_Router# copy running-config startup-config

Destination filename [startup-config]?

 

Нажмите Enter и конфигурация из оперативной памяти будет скопирована в энергонезависимую: 

Running-config - текущая конфигурация в оперативной памяти

Startup-config - сохраненная конфигурация в энергонезависимой памяти NVRAM. Именно этот файл будет загружен в оперативную память маршрутизатора при включении питания.

Чтобы просмотреть текущую конфигурацию введите: 

A_Router# show running-config

 

Чтобы увидеть таблицу маршрутизации введите: 

A_Router# show ip route

 

Вы увидите новый маршрут обозначенный буквой S, то есть статический (static):

Таблица маршрутизации со статическим маршрутом в маршрутизаторе A

 

Чтобы увидеть список всех интерфейсов введите A_Router# show ip interface brief

Отображение списка интерфейсов в маршрутизаторе

 

Теперь немного усложним задачу. Между маршрутизаторами поставим третий маршрутизатор:

Сетевая диаграмма

 

Конфигурация маршрутизатора A_Router не изменилась, а в B_Router необходимо изменить адрес WAN интерфейса. Вот как будет выглядеть конфигурация C_Router:

Текущая конфигурации маршрутизатора C

 

Таблицы маршрутизации A_Router и B_Router также не изменились. А в C_Router выглядит так:

Статический маршрут в таблице маршрутизации C

 

А теперь еще больше усложним сеть, добавив четвертый маршрутизатор:

Сетевая диаграмма

 

Теперь у нас имеется альтернативный маршрут через маршрутизатор D, который подключен к сети посредством серийных интерфейсов со скоростью передачи в 56 Кбит/с (настройку и принцип работы серийных интерфейсов мы рассмотрим в одном из последующих уроков). 

Добавим новый маршрут в A_Router и B_Router. Настроем D_Router аналогично C_Router с учетом адресации. Теперь таблицы маршрутизации будут выглядеть так:

Таблица маршрутизации в маршрутизаторе A

Таблица маршрутизации маршрутизатора B

 

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

По какому же маршруту передаются пакеты? 

Пакеты передаются одновременно по двум маршрутам, так как по умолчанию на маршрутизаторах Cisco включена балансировка нагрузки. 

С одной стороны все выглядит хорошо. Имеется запасной маршрут, повышающий надежность связи. Однако в этом кроется и потенциальная опасность.

В данном примере один маршрут является более медленным по сравнению с другим маршрутом, что может привести к значительным задержкам при передаче пакетов. Это крайне нежелательно при передаче медиатрафика (видео, голос). Для такого типа трафика необходим постоянный маршрут с минимальными задержками, то есть оптимальным решением является использовать быстрый маршрут для всего трафика, а второй - в качестве резервного на случай отказа первого. 

Рассмотрим другую ситуацию. Подключим к сети коммутатор:

Сетевая диаграмма

 

Конфигурация прежняя. Таблицы маршрутизации на A_Router и B_Router тоже не изменились. Пакеты свободно проходят по двум маршрутам. Теперь отключим C_Router и проверим как будет работать связь:

Работа Ping нестабильна

 

В чем же дело? Ведь у нас же есть работающий маршрут. 

Взглянем на таблицу маршрутизации A_Router:

Таблица маршрутизации маршрутизатора A

 

Ничего не изменилось. Маршрутизатор считаtт, что C_Router все еще работает и продолжают передавать через него часть пакетов. Поэтому почти половина пакетов потеряна. 

Если мы отключим интерфейс Fast Ethernet 1/0 на A_Router, то запись о маршруте исчезнет из таблицы маршрутизации и все пакеты будут приняты:

Отключенный интерфейс менят таблицу маршрутизации

 

Здесь оптимальным решением было бы использовать более медленный маршрут в качестве основного либо изменить топологию сети (данный пример лишь показательный).

Это лишь частные случаи, которые необходимо учитывать в каждой сети. 

Какое же решение существует в данных примерах? 

Решение простое: в таблицу маршрутизации поместить один (основной) маршрут, который удаляется из таблицы в случае потери связи на канальном уровне. Альтернативный маршрут добавляется в таблицу сразу после удаления основного из таблицы. Достигается это с помощью установки определенных приоритетов, которые называются административное расстояние (administrative distance).  

Административное расстояние принимает значения от 1 до 255. Чем ниже значение, тем больше приоритет. Статические маршруты по умолчанию всегда имеют административное расстояние равным 1. При наличии двух и более маршрутов до одной и той же сети в таблицу маршрутизации помещается маршрут с наименьшим административным расстоянием. 

Вот как настраивается административное расстояние: 

Router(config)# ip route сеть маска исходящий_интерфейс (адрес следующего хопа) административное_расстояние

 

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

Где используется статическая маршрутизация? 

Чаще всего на маршрутизаторах клиентов, подключенных к провайдерам. В большинстве случаев такие маршрутизаторы имеют 2 интерфейса. 

Неужели для каждой сети нужно настраивать отдельный маршрут? 

Нет, достаточно ввести такую команду: 

Router(config)# ip route 0.0.0.0 0.0.0.0 интерфейс (адрес следующего хопа)

 

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

Однако запись Router(config)# ip route 82.23.56.1 255.255.255.255 fastethernet1/0 означает маршрут до конкретного хоста, а не сети. С помощью маски и технологии VLSM можно объединять несколько маршрутов в один общий, если они проходят через один и тот же интерфейс или маршрутизатор.