Перейти к содержанию

П/з №6. Маршрутизаторы в сетях связи

1. Устройство и функции маршрутизаторов

Чтобы перейти к изучению маршрутизаторов, необходимо определиться, что из себя представляет маршрутизация. Маршрутизация – это процесс продвижения пакетов по сети согласно маршруту, выбранному в качестве оптимального. Задача маршрутизации, в свою очередь, включает в себя две подзадачи:

  • определение маршрута;
  • оповещение сети о выбранном маршруте.

Определить маршрут означает выбрать последовательность транзитных узлов и их интерфейсов, через которые надо передавать данные, чтобы доставить их адресату. Определение маршрута — сложная задача, особенно когда конфигурация сети такова, что между парой взаимодействующих сетевых интерфейсов существует множество путей. Чаще всего выбор останавливают на одном оптимальном по некоторому критерию маршруте. В качестве критериев оптимальности могут выступать, например, пропускная способность и загруженность каналов связи; задержки, вносимые каналами; количество промежуточных транзитных узлов; надежность каналов и транзитных узлов. Маршрутизаторы являются ключевыми устройствами в сетях связи, которые обеспечивают передачу данных между различными сегментами сети. Они работают на сетевом уровне модели OSI, принимая пакеты данных с одного интерфейса и передавая их на другой интерфейс в зависимости от целевого адреса назначения. Маршрут может определяться эмпирически («вручную») администратором сети на основании различных, часто не формализуемых соображений. Среди побудительных мотивов выбора пути могут быть: особые требования к сети со стороны различных типов приложений, решение передавать трафик через сеть определенного поставщика услуг, предположения о пиковых нагрузках на некоторые каналы сети, соображения безопасности.

Рисунок 1 - Маршруты в сети связи

Маршрутизатор – это устройство пакетной сети передачи данных, предназначенное для объединения сегментов сети и ее элементов и служит для передачи пакетов между ними на основе каких-либо правил. Маршрутизаторы работают на сетевом (третьем) уровне модели OSI в качестве узловых устройств для различных технологий: IP, ATM, Frame Relay и мн. др.

Маршрутизатор включает в себя следующие основные компоненты:

  • печатная плата – основа, на которую монтируются все прочие компоненты.
  • оперативная память – запоминает временные данные, то есть отправляемые пакеты, перед отправкой их получателю.
  • флеш-память – ПЗУ роутера, в которую записаны таблицы маршрутизации, прошивка, настройки и прочие важные данные.
  • блок питания – поставляет электрическую энергию на все прочие устройства; (может быть вынесен за пределы корпуса отдельным модулем);
  • интерфейсы – физические порты, через которые маршрутизатор подключается к другим устройствам сети.

При этом устройство может опцинально включать модули коммутации, усиления сигнала (беспроводного), процессор или модуль (SoC) точки доступа IEEE 802.11, одну или несколько антенн.

Рисунок 2 - Wi-Fi маршрутизатор

Важно выделить некоторые аспекты. На нижнем уровне маршрутизатор, как и любое устройство, подключенное к сети, обеспечивает физический интерфейс со средой передачи, включая согласование уровней электрических сигналов, линейное и логическое кодирование. Кроме того, для поддержки физического интерфейса он должен быть оснащен разъемом соответствующего типа. Обычно маршрутизатор имеет от четырех до нескольких десятков физических интерфейсов, называемых также портами, одна часть которых предназначена для подключения к локальным, а другая — к глобальным сетям. Каждый локальный порт работает по строго определенной технологии: например, Ethernet, Token Ring, FDDI. Для глобального порта чаще всего жестко определяется только некоторый стандарт физического уровня, поверх которого могут работать различные протоколы канального уровня в зависимости от того, как этот порт сконфигурирован. Так, глобальный порт с поддержкой протокола физического уровня V.35 обычно может быть настроен для работы по одному из следующих протоколов канального уровня: LAP-B (для сетей X.25), PPP (для сетей IP), LAP-F (для сетей frame relay), LAP-D (для сетей ISDN). К сетевому уровню относится одна из важнейших функций маршрутизатора — фильтрация трафика. Обладая более высоким интеллектом, нежели мосты и коммутаторы, маршрутизатор позволяет задавать и может отрабатывать значительно более сложные правила фильтрации. Маршрутизаторы, как правило, в состоянии анализировать и заголовки транспортного уровня, поэтому фильтры могут не пропускать в сеть пакеты определенных прикладных сервисов, например сервиса Telnet или FTP, задействующих конкретные программные порты, значения которых и используются при составлении правил фильтрации.

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

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

Рисунок 3 - Принцип маршрутизации

Первый столбец таблицы содержит адреса назначения пакетов. В каждой строке таблицы следом за адресом назначения указывается сетевой адрес следующего маршрутизатора (точнее, сетевой адрес интерфейса следующего маршрутизатора), на который надо направить пакет, чтобы тот передвигался по направлению к заданному адресу по рациональному маршруту Перед тем как передать пакет следующему маршрутизатору, текущий маршрутизатор должен определить, на какой из нескольких собственных портов он должен поместить данный пакет. Для этого служит третий столбец таблицы маршрутизации, со держащий сетевые адреса выходных интерфейсов. Некоторые реализации сетевых протоколов допускают наличие в таблице маршрутизации сразу нескольких строк, соответствующих одному и тому же адресу назначения. В этом случае при выборе маршрута принимается во внимание столбец, представляющий расстояние до сети назначения. Процесс создания таблицы маршрутизации на роутере начинается с получения информации о соседних сетях и маршрутах от других роутеров в сети. Это может быть достигнуто с помощью протоколов динамической маршрутизации, таких как RIP, OSPF или EIGRP, которые обмениваются информацией о сетях и маршрутах между собой.

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

Метрика — это показатели, которые можно измерить. Протоколы маршрутизации выбирают оптимальный путь для отправки данных, исходя из различных метрик. К этим метрикам относятся количество переходов, полоса пропускания, задержка, надёжность, стоимость маршрута и другое. Кроме того, роутер может ручным образом настраивать статические маршруты, которые задаются администратором сети и остаются постоянными, не меняясь автоматически. Однако, статические маршруты имеют более низкий приоритет, чем динамические маршруты, и могут использоваться только в случае отсутствия динамической информации. Функции маршрутизаторов включают:

  • передачу данных между различными сегментами сети;
  • определение наилучшего маршрута для доставки пакетов данных;
  • фильтрацию пакетов на основе заданных правил безопасности;
  • обеспечение безопасности сети путем контроля доступа и аутентификации пользователей;
  • поддержку различных протоколов маршрутизации, таких как RIP, OSPF, BGP и другие.

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

Мы ранее рассмотрели таблицу маршрутизации (Route Information Base, RIB), в нее добавляются не все маршруты, а только лучший маршрут для данной сети. Лучшие маршруты выбираются как внутри каждого протокола, так и между протоколами. Внутри протокола лучший маршрут выбирается по метрике: только маршрут с наименьшей метрикой добавляется в таблицу маршрутизации. Однако маршруты можно добавить вручную (статически). Статическая маршрутизация – это метод управления трафиком в компьютерных сетях, при котором маршруты для передачи данных задаются вручную администратором сети. В этом случае, маршруты не изменяются автоматически в зависимости от изменений в сети, а остаются постоянными до тех пор, пока администратор не внесет изменения в конфигурацию маршрутизатора. Статическая маршрутизация основана на предварительно настроенных маршрутах, которые администратор сети вручную добавляет в таблицу маршрутизации на каждом маршрутизаторе в сети. Каждая запись в таблице маршрутизации содержит информацию о сети назначения и интерфейсе, через который пакеты должны быть отправлены. Когда пакет данных поступает на маршрутизатор, он сравнивает адрес назначения пакета с записями в таблице маршрутизации и выбирает наиболее подходящий маршрут для доставки пакета. Маршрутизатор затем отправляет пакет через соответствующий интерфейс и повторяет этот процесс на следующем маршрутизаторе, пока пакет не достигнет своего назначения. Статическая маршрутизация часто используется в небольших сетях или в сетях с простой топологией, где изменения в сети редки и предсказуемы. Она также может быть полезна в случаях, когда требуется более точный контроль над трафиком и маршрутизацией данных.

Рисунок 5 - Преимущества и недостатки статической маршрутизации

Статическая маршрутизация имеет следующие особенности:

  • постоянные маршруты - записи в таблице маршрутизации остаются неизменными до изменения администратором;
  • простота конфигурации - администратор самостоятельно устанавливает маршруты без использования протоколов маршрутизации;
  • подходит для небольших сетей с ограниченным числом маршрутов.

Однако статическая маршрутизация может оказаться неэффективной в больших и динамических сетях из-за необходимости постоянного обновления маршрутов вручную. В таких случаях обычно используют динамические протоколы маршрутизации, такие как OSPF или BGP. Дополнительные особенности статической маршрутизации:

  • не требует дополнительной пропускной способности для передачи информации о маршрутах, так как маршруты устанавливаются и хранятся локально на маршрутизаторе;
  • позволяет администратору иметь полный контроль над тем, какие маршруты используются для отправки данных.
  • при правильной настройке может быть более безопасной, поскольку большинство атак на маршрутизаторы связаны с динамическими протоколами маршрутизации.

Ниже предложена сравнительная таблица рассмотренных методов маршрутизации.

Рисунок 6 - Сравнение методов маршрутизации

1.4 Базовая конфигурация маршрутизаторов

Базовая конфигурация маршрутизатора в общем виде включает в себя следующие основные шаги:

  1. Настройка интерфейсов. Настройка IP-адресов на интерфейсах маршрутизатора, чтобы он мог участвовать в обмене данными в сети. Это включает в себя настройку IP-адреса, маски подсети, и, при необходимости, шлюза по умолчанию.
  2. Настройка маршрутизации. Добавление статических маршрутов или настройка протоколов динамической маршрутизации, таких как OSPF, EIGRP или BGP. Это позволяет маршрутизатору определять оптимальный путь для передачи пакетов к их целевым адресам.
  3. Настройка безопасности. Включение функций безопасности, таких как фильтрация трафика, настройка аутентификации и шифрования для защиты сети от несанкционированного доступа.
  4. Настройка сервисов: Настройка различных сервисов и протоколов, таких как DHCP, NAT, VPN и других, для обеспечения нужных функциональных возможностей сети.
  5. Мониторинг и управление: Настройка удаленного доступа к маршрутизатору, настройка системы журналирования и мониторинга, чтобы можно было отслеживать работу устройства и решать проблемы при их возникновении.

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

Рисунок 7 - Пример топологии

Выполним сначала следующие шаги в режиме конфигурации роутера, перейдя к которому можно командой configure terminal, для базовой настройки в общем виде:

  1. Задаем название устройства
Router(config)# hostname
  1. Задаем пароль для входа в привилегированный режим.
Router(config)# enable secret password
  1. Задаем пароль на подключение через консоль.
Router(config)# line console 0
Router(config-line)# password password
Router(config-line)# login
  1. Задаем пароль для удаленного доступа по Telnet / SSH.
Router(config-line)# line vty 0 4
Router(config-line)# password password
Router(config-line)# login
Router(config-line)# transport input {ssh | telnet}
  1. Шифруем все пароли введенные на устройстве.
Router(config-line)# exit
Router(config)# service password-encryption
  1. Задаем баннер, который будет выводится при подключении к устройству. В данном баннере обычно указывается правовая информация о последствиях несанкционированного подключения
Router(config)# banner motd delimiter message delimiter
  1. Сохраняем конфигурацию.
Router(config)# end
Router# copy running-config startup-config

Далее необходимо осуществить настройку сетевых интерфейсов. На данный момент на нашем роутере выполнена первичная настройка. Так как без настроек интерфейсов роутеры не будут доступны для других устройств, далее сконфигурируем его интерфейсы. На маршрутизаторах компании Cisco бывают разные интерфейсы. Например, маршрутизатор Cisco ISR 4321 оснащен двумя гигабитными интерфейсами.

  • GigabitEthernet 0/0/0
  • GigabitEthernet 0/0/1

Для настройки интерфейсов маршрутизатора нужно ввести следующие команды:

Router(config)# interface type-and-number
Router(config-if)# description description-text
Router(config-if)# ip address ipv4-address subnet-mask
Router(config-if)# ipv6 address ipv6-address/prefix-length
Router(config-if)# no shutdown

Как только порт включится, на консоли выведется соответствующее сообщение. Несмотря на то, что команда description не требуется для включения интерфейса, все же рекомендуется ее использовать. Это может быть полезно при устранении неполадок в производственных сетях, предоставляя информацию о типе подключенной сети. Например, если интерфейс подключается к поставщику услуг или провайдеру услуг, команда description будет полезна для ввода внешнего соединения и контактной информации. Длина текста description составляет 240 символов. Команда no shutdown используется для включения интерфейса, это похоже на включение питания на интерфейсе. Также маршрутизатор следует подключить к другому устройству, чтобы установилась связь на физическом уровне. Ниже приведена полная настройка базовой конфигурации устройства R1.

Router> enable 
Router# configure terminal 
Enter configuration commands, one per line.
End with CNTL/Z.
Router(config)# hostname R1 
R1(config)# enable secret class 
R1(config)# line console 0 
R1(config-line)# password cisco 
R1(config-line)# login 
R1(config-line)# exit 
R1(config)# line vty 0 4 
R1(config-line)# password cisco 
R1(config-line)# login 
R1(config-line)# transport input ssh telnet 
R1(config-line)# exit 
R1(config)# service password-encryption 
R1(config)# banner motd #
Enter TEXT message. End with a new line and the #
*********************************************** 
WARNING: Unauthorized access is prohibited!
***********************************************
#
R1(config)#

Настройка интерфейсов:

R1(config)# interface gigabitEthernet 0/0/0
R1(config-if)# description Link to LAN
R1(config-if)# ip address 192.168.10.1 255.255.255.0
R1(config-if)# ipv6 address 2001:db8:acad:10::1/64
R1(config-if)# no shutdown
R1(config-if)# exit
R1(config)#
*Aug 1 01:43:53.435: %LINK-3-UPDOWN: Interface GigabitEthernet0/0/0, changed state to down
*Aug 1 01:43:56.447: %LINK-3-UPDOWN: Interface GigabitEthernet0/0/0, changed state to up
*Aug 1 01:43:57.447: %LINEPROTO-5-UPDOWN: Line protocol on Interface GigabitEthernet0/0/0, changed state to up
R1(config)#
R1(config)#
R1(config)# interface gigabitEthernet 0/0/1
R1(config-if)# description Link to R2
R1(config-if)# ip address 209.165.200.225 255.255.255.252
R1(config-if)# ipv6 address 2001:db8:feed:224::1/64
R1(config-if)# no shutdown
R1(config-if)# exit
R1(config)#
*Feb 1 01:46:29.170: %LINK-3-UPDOWN: Interface GigabitEthernet0/0/1, changed state to down
*Feb 1 01:46:32.171: %LINK-3-UPDOWN: Interface GigabitEthernet0/0/1, changed state to up
*Feb 1 01:46:33.171: %LINEPROTO-5-UPDOWN: Line protocol on Interface GigabitEthernet0/0/1, changed state to up
R1(config)#

Для проверки настроек портов используются несколько команд. Самыми полезные из них это команды show ip interface brief и show ipv6 interface brief.

R1#  show ip interface brief
Interface              IP-Address      OK? Method     Status     Protocol 
GigabitEthernet0/0/0   192.168.10.1    YES manual      up           up 
GigabitEthernet0/0/1   209.165.200.225 YES manual      up           up 
Vlan1                  unassigned      YES unset       down        down 
R1#  show ipv6 interface brief
GigabitEthernet0/0/0       [up/up]
    FE80::201:C9FF:FE89:4501
    2001:DB8:ACAD:10::1
GigabitEthernet0/0/1       [up/up]
    FE80::201:C9FF:FE89:4502
    2001:DB8:FEED:224::1
Vlan1                      [administratively down/down]
    unassigned 
R1#

Контрольные вопросы

  1. Каково назначение маршрутизатора в сетях связи и какие основные функции он выполняет?
  2. Что такое маршрутизация?
  3. Чем отличается статическая маршрутизация от динамической и в каких случаях она может быть предпочтительнее?
  4. Какие основные шаги включает в себя базовая конфигурация маршрутизатора и почему они важны для корректной работы сети?
  5. Какие преимущества и недостатки использования статической маршрутизации в сравнении с динамической?
  6. Какие параметры необходимо настроить на интерфейсах маршрутизатора при базовой конфигурации для обеспечения его работы в сети?
  7. Какие протоколы маршрутизации поддерживаются маршрутизаторами и как выбрать оптимальный для конкретной сети?