Маршрутизатор

Символьное изображение маршутизатора на схемах компьютерных сетей
Cisco1800
Avaya ERS-8600

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

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

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

Кроме того, маршрутизаторы могут осуществлять трансляцию адресов отправителя и получателя ( англ. NAT, Network Address Translation ), Фильтрацию транзитного потока данных на основе определенных правил с целью ограничения доступа, шифрование / дешифрование передаваемых данных и т.д..

Маршрутизаторы не могут осуществлять передачу широковещательных сообщений, таких как ARP -запрос.

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


1. Принцип работы

Cisco 770

Обычно маршрутизатор использует адрес получателя, указанный в пакетах данных, и определяет по таблице маршрутизации путь, по которому следует передать данные. Если в таблице маршрутизации для адреса нет описанного маршрута, пакет отбрасывается.

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


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

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

 192.168.64.0/16 [110/49] via 192.168.1.2, 00:34:34, FastEthernet0/0.1 где 192.168.64.0/16 - сеть назначения 110 / - административная расстояние / 49 - метрика маршрута 192.168.1.2 - адрес следующего маршрутизатора , которому следует передавать пакеты для сети 192.168.64.0/16 00:34:34 - время, в течение которого был известен этот маршрут FastEthernet0/0.1 - интерфейс маршрутизатора, через который можно достичь "соседа" 192.168.1.2. 

Таблица маршрутизации может состоять двумя способами:

  • статическая маршрутизация - когда записи в таблице вводятся и изменяются вручную. Этот способ требует вмешательства администратора каждый раз, когда происходят изменения в топологии сети. С другой стороны, он является наиболее стабильным и таким, что требует минимума аппаратных ресурсов маршрутизатора для обслуживания таблицы.
  • динамическая маршрутизация - когда записи в таблице обновляются автоматически с помощью одного или нескольких протоколов маршрутизации - RIP, OSPF, EIGRP, IS-IS, BGP, и др.. Кроме того, маршрутизатор строит таблицу оптимальных путей к сетям назначения на основе различных критериев - количества промежуточных узлов, пропускной способности каналов, задержки передачи данных и т.д.. Критерии вычисления оптимальных маршрутов чаще всего зависят от протокола маршрутизации, а также задаются конфигурацией маршрутизатора. Такой способ построения таблицы позволяет автоматически держать таблицу маршрутизации в актуальном состоянии и вычислять оптимальные маршруты на основе текущей топологии сети. Однако динамическая маршрутизация оказывает дополнительную нагрузку на устройства, а высокая нестабильность сети может приводить к ситуациям, когда маршрутизаторы не успевают синхронизировать свои таблицы, что приводит к противоречивых сведений о топологии сети в различных ее частях и потере передаваемых данных.

Часто для построения таблиц маршрутизации используют теорию графов.


2. Применение

Маршрутизаторы помогают уменьшить загрузку сети, благодаря ее разделению на домены коллизий и широковещательные домены, а также благодаря фильтрации пакетов. В основном их применяют для объединения сетей разных типов, часто несовместимых по архитектуре и протоколам, например для объединения локальных сетей Ethernet и WAN -соединений, использующих протоколы xDSL, PPP, ATM, Frame relay и т.п.. Нередко маршрутизатор используется для обеспечения доступа из локальной сети в глобальную сеть Интернет, осуществляя функции трансляции адресов и межсетевого экрана.

В качестве маршрутизатора может выступать как специализированное аппаратное устройство (характерный представитель - продукция Cisco), так и обычный компьютер, выполняющий функции маршрутизатора. Существует несколько пакетов программного обеспечения (в основном на основе ядра Linux) с помощью которого можно превратить ПК высокопроизводительный и многофункциональный маршрутизатор, например GNU Zebra.


3. Перенаправление портов и виртуальные серверы

Перенаправление портов и виртуальные серверы ( англ. Port Mapping, Port Forwarding , Virtual Server) Функция позволяет перенаправлять обращения к указанным портам внешнего интерфейса маршрутизатора на устройства, подключенные к внутреннему интерфейсу. Необходимость перенаправления может возникнуть, например, при размещении внутри сети различных серверов (Web, FTP). При использовании перенаправления следует обратить внимание на брандмауэр : некоторые устройства автоматически создают соответствующие перенаправлению портов правила брандмауэра, однако в большинстве случаев решать прохождения трафика придется самостоятельно. Отметим также, что существует несколько способов перенаправления портов:

  • Статическое перенаправление одиночных портов (Static) - простейший случай, при котором задаются соответствия между протоколом ( TCP / UDP) и портами внешнего интерфейса и протоколом и портами внутреннего, а также адресами устройств внутренней сети. Работа такого перенаправления позволит сделать сервер, расположенный во внутренней сети доступным из внешней сети.
  • Статическое перенаправление групп портов. Отличается от статического перенаправления одиночных портов тем, что для перенаправления можно указывать не отдельные порты, а их группы (список отдельных портов или диапазон). Вся группа перенаправляется на один адрес. Такое перенаправление позволяет обеспечить работу таких приложений, как игры и аудио / видеоконференциы.
  • Динамическое перенаправление портов (Dynamic, Triggered Mapping, Special Application). Основное отличие от статического перенаправления портов заключается в том, что один номер порта можно перенаправить на несколько внутренних IP-адресов (но не одновременно). Использование динамического перенаправления актуально для приложений, использующих кратковременные передачи данных, которые не занимают порт надолго. Следует отметить, что событие, инициирует динамическое перенаправление, должно происходить во внутреннем сегменте сети, что накладывает существенные ограничения на использование этого типа перенаправления при хостинга служб.

4. Безопасность

4.1. Блокировка запросов ping

Блокировка запросов ping снаружи, режим невидимости (Discard WAN ping, Stealth mode). Поскольку для определения доступности того или иного узла в интернете часто используют запросы ping, то не ответив на запрос, компьютер скрывает свое присутствие в сети. Многие маршрутизаторов позволяют блокировать запросы ping, точнее, блокировать ответы на эти запросы, скрывая свое присутствие в сети.

4.2. Фильтрация содержания

Функция фильтрации содержания ( англ. Content filtering ) Предназначена для ограничения доступа пользователей локальной сети к ресурсам интернета с сомнительным содержанием. В зависимости от версии, позволяет создать черный или белый список URL или IP-адрес или задействовать списки фильтрации сторонних организаций. Следует отметить, что фильтрация содержания может применяться для всех компьютеров локальной сети или только для некоторых, кроме того, часто можно задать расписание работы этих списков.


4.3. Контроль доступа

Контроль доступа (Access Control), фильтрация портов (Port filtering). Во многих небольших организациях доступ к сервисам интернета ограничен. Одним из вариантов такого ограничения может быть использование маршрутизатора. Так, некоторым пользователям можно обеспечить доступ только к электронной почте, тогда как другим - добавить доступ к веб-страницам и ICQ, а третьим разрешить пользоваться всеми сервисами без ограничений. Для удобства настройки, маршрутизаторы позволяют создавать группы локальных пользователей, для которых можно разрешать или запрещать доступ. Кроме того, большинство маршрутизаторов позволяют активировать ограничения по расписанию.

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


4.4. Виртуальные частные сети

Виртуальные частные сети ( англ. Virtual Private Networking , VPN) - довольно популярная тема, относящейся к безопасности компьютерных сетей. Благодаря технологиям VPN, стало возможным использовать общедоступные небезопасные сети, такие как интернет, для защищенной передачи данных, используя для этого возможности шифрования и электронно-цифровой подписи. При таком подключением пользователь может работать с ресурсами удаленной сети точно так же, как с ресурсами локальной сети. Многие производители маршрутизаторов стали выпускать модели с поддержкой VPN, начиная от простого пропускания туннелей VPN, до полноценных встроенных серверов PPTP или IPSec. Для создания VPN используются следующие протоколы: IPSec ( англ. Internet Protocol Security ), PPTP ( англ. Point-to-Point Tunneling Protocol ), L2TP ( англ. Layer 2 Tunneling Protocol ), SSL.

Пропускания туннелей ( англ. VPN pass through ) Позволяет туннелям VPN проходить через маршрутизатор, наличие этой функции стала стандартом де-факто, хотя не через все устройства можно было установить VPN-соединение.

VPN-клиент позволяет инициировать соединение с VPN-сервером. Представляет интерес для абонентов провайдеров, предоставляющих доступ в сеть через VPN (часто используется протокол PPTP), а также для филиалов предприятий, которым необходимо безопасное подключение к центральному офису.

VPN-сервер позволяет принимать пидимкнення, инициированные клиентами. Часто используется в центральных офисах предприятий для подключения филиалов и сотрудников.

Поддержка VPN-туннелей (VPN Endpoint). Создание виртуального туннеля между маршрутизаторами сетей зачастую предполагает использование протоколов IPSec, которые позволяют шифровать и расшифровывать передаваемые данные, а также проверять их неизменность и обмениваться ключами. Именно такой сценарий сегодня активно используется для объединения нескольких удаленных друг от друга сетей.


5. Дополнительные возможности

5.1. Сервер DHCP

D-Link Kyocera Wi-Fi router

Практически все модели маршрутизаторов имеют встроенный сервер DHCP, позволяющий автоматически предоставлять клиентам локальной сети настройки TCP / IP, необходимые для получения доступа к сети. Сервер DHCP имеет ряд настроек: диапазон выдаваемых адресов (Address Range), резервирование IP-адресов ( англ. IP reservation , Адреса, которые будут исключены из списка распределяемых сервером), имя домена (Domain Name), адреса серверов DNS.


5.2. Демилитаризованная зона, внешний сервер

Демилитаризованная зона, внешний сервер (DMZ, Exposed Server) - эта функция позволяет "выставить" компьютер, находящийся в локальной сети, в глобальную сеть, как если бы он был подключен к ней напрямую. С технической точки зрения, в этом случае осуществляется перенаправление всех портов на один внутренний IP-адрес. Это необходимо при размещении серверов, использующих множество различных портов. Отметим, что для DMZ может использоваться отдельный физический порт маршрутизатора или указываться IP-адрес компьютера, подключенного к одному из обычных портов.


5.3. Поддержка динамической DNS

Вообще, DNS ( Domain Name System, система доменных имен) используется для преобразования символьных имен сайтов в статические IP-адреса. Динамическая же DNS позволяет преобразовывать символьные имена сайтов не только в статические, но и в динамично выдаваемые IP-адреса. Актуальна для тех пользователей, которые хотят предоставить доступ к своему серверу по доменному имени, но не имеют возможности получить статический IP. Для работы с системой можно воспользоваться услугами DDNS.org, DYNDNS.org, TZO.com и других.


5.4. Сервер печати

Встроенные серверы печати (Print Server) сегодня стали весьма популярной опцией домашних маршрутизаторов, которая позволяет подключать принтер с портом LPT или USB к маршрутизатору, а не к компьютеру сети. При таком подключении доступ к принтеру будет возможен при наличии доступа к маршрутизатору и не зависеть от какого-то компьютера. Наличие сервера печати особенно удобно в том случае, если дома несколько компьютеров, с которым часто приходится распечатывать документы на одном общем принтере.


5.5. Удаленное управление

Удаленное управление (Remote Administration / Remote Management) позволяет подключаться к интерфейсу настроек маршрутизатора с внешней сегмента сети. Удаленный доступ к интерфейсу настроек особенно полезен при разъездном характере работы сотрудника, отвечающего за работу сети. Однако, используя эту возможность, следует особенно внимательно подойти к вопросу безопасности такого подключения, поскольку получив доступ к маршрутизатору, злоумышленник сможет получить доступ и ко всей сети. Для защиты такого подключения часто применяют ограничение входа из одного или нескольких IP-адресов, использование защищенного протокола, например, HTTPS, а также изменение номера порта, используемого для подключения.


5.6. Журнала

Журнала (Logging) - это способность маршрутизатора вести журнал событий. Различные модели обеспечивают разную глубину журнала: простые модели могут ограничиться регистрацией административных входов систему, прогрессивные - вести статистику по обращениям пользователей и регистрировать все изменения в собственной конфигурации.

5.7. VoIP-адаптер

Поддержка Voice over IP позволяет использовать маршрутизатор как шлюз IP-телефонии, т.е. для передачи голоса по IP-сети. Использование IP-телефонии в последнее время стало особенно актуально, поскольку позволяет существенно снизить затраты на междугородную и международную телефонию. При наличии встроенного адаптера, маршрутизатор имеет порты для подключения обычных аналоговых телефонных аппаратов или мини-АТС, для подключения телефонных аппаратов используются порты с обозначением FXS, для подключения внутренних портов АТС - FXO. При наличии нескольких портов, можно подключить несколько устройств, в таком случае поддерживаться несколько одновременных соединений. Для подключения к таким портов обычно используется коннектор RJ-11. Порт Lifeline также можно отнести к VoIP-адаптера. Использование его актуально в том случае, если VoIP-сервис недоступен. К этому порту подключается обычная телефонная линия, и при отсутствии доступа в VoIP звонки идут через нее.


5.8. Поддержка PoE

Технология Power over Ethernet предусматривает одновременную передачу по кабелям Ethernet данных и электропитания. Часто используется для подключения сетевых устройств, находящихся в труднодоступных местах, где нет возможности обеспечить стандартное питание.