Самоучитель
системного администратора

8.5. Виртуализация в сетях передачи данных

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

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

Технология виртуальных частных сетей — Virtual Local Area Network, VLAN — позволяет логически обособить участок физической сети. VLAN представляет собой логически (программно, иными словами, виртуально) обособленный сегмент основной сети. Пакеты данных пересылаются только в пределах одной VLAN. Одна VLAN может объединять порты нескольких коммутаторов (VLAN с одинаковым номером на разных коммутаторах считаются одной и той же VLAN). Устройства, подключенные к разным VLAN, не могут обмениваться пакетами напрямик, они не видят друг друга.

Целями создания VLAN является снижение количества широковещательного трафика и изоляция участков сети с информацией ограниченного пользования. Считается, что в "плоской" сети, т. е. в сети без VLAN, не должно работать примерно более 100 компьютеров.

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

Варианты создания VLAN

На практике существует несколько технологий создания VLAN. В простейшем случае VLAN создается путем ручного объединения нескольких портов коммутатора (port based VLAN или группировка портов). При этом одно физическое устройство логически разбивается на несколько: для каждой VLAN создается "отдельный" коммутатор. Очевидно, что число портов такого коммутатора можно легко изменить: достаточно добавить или исключить из VLAN соответствующий физический порт.

Второй часто используемый способ заключается в отнесении устройства к той или иной VLAN на основе MAC-адреса. Например, так можно обосабливать камеры видеонаблюдения, IP-телефоны и т. п. Этим способом вычленяется голосовой трафик (трафик VoIP — по маске MAC-адресов, выданных производителям оборудования для телефонии). При этом способе устройство не привязано к конкретному порту: его трафик будет помещаться в соответствующую виртуальную сеть при подключении к любому настроенному так порту.

Третий способ заключается в объединении устройств в сеть VLAN по сетевым протоколам. Например, можно "отделить" протокол IPX от IP, "поместить" их в разные VLAN и направить по различным путям.

Четвертый способ создания VLAN состоит в группировке многоадресных пакетов (так, например, можно создать VLAN для видеовещания и т. п.).

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

На рис. 8.6 показан пример построения VLAN из компьютеров, подключенных к различным коммутаторам. Обратите внимание, что при использовании агрегированных каналов (на рисунке для связи устройств Switch 2 и Switch 3) в состав VLAN на каждом коммутаторе должны включаться именно агрегированные порты (обычно получают названия AL1, AL2 и т. д.).

Рис. 8.6.
Пример построения VLAN на нескольких коммутаторах.
Поскольку предполагается, что сервер подключается к нескольким VLAN и серверный сетевой адаптер поддерживает создание tagged VLAN, то в этом случае используется настройка серверного порта коммутатора по стандарту 802.1q. Для реализации возможности передачи данных VLAN между коммутаторами соответствующие порты, подключенные к связующей линии, в режиме 802.1q настраиваются на членство в тех виртуальных сетях, данные которых должны передаваться через эту линию связи. Для простоты VLAN по умолчанию (ID = 1) не отображена

Теги 802.1q

В соответствии со стандартом 802.1q номер VLAN передается в специальном поле кадра Ethernet, которое носит название TAG. Поэтому пакеты, содержащие такое поле, стали называть тегированными (tagged), а пакеты без этого поля — нетеги-рованными (untagged). Поле TAG включает в себя данные QoS (поэтому все пакеты, содержащие информацию о качестве обслуживания, являются тегированными) и номер VLAN, на который отведено 12 бит. Таким образом, максимально возможное число VLAN составляет 4096.

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

VLAN 1

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

Маршрутизация в сетях предприятий

Информация внутри локальной сети, которая определяется IP-адресом и маской подсети, пересылается от одного компьютера к другому: отправитель посылает пакет непосредственно на физический адрес получателя. Если отправитель и получатель данных находятся в различных сетях, например, в VLAN с различными номерами, то они не могут переслать пакеты друг другу.

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

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

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

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

Обычно маршрутизация выполняется средствами активного оборудования сети передачи данных. Коммутаторы, которые умеют передавать пакеты из одной сети в другую, называют коммутаторами уровня 3 (см. разд. "Модель OSI” в главе 3). Коммутаторы уровня 2 могут только разбить сеть на несколько VLAN; передать же данные из одной VLAN в другую они не могут.

Функцию маршрутизации могут выполнить программным образом как серверы, так и рабочие станции Windows. Для включения маршрутизации в ОС Windows XP требуется ручная настройка параметров реестра. Это допустимо в небольших сетях, но требует установки дополнительных сетевых адаптеров и соответствующей настройки программного обеспечения. Обычно функцию маршрутизации возлагают на активное сетевое оборудование, поскольку это более надежное и производительное решение.

Автоматизация настроек маршрутизации

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

В относительно небольших организациях применяются два протокола: RIP и OSPF.

RIP

RIP (Routing Information Protocol, протокол маршрутизации информации) — самый простой в использовании протокол автоматической маршрутизации. Он не требует никакой настройки от администратора. Достаточно только включить использование RIP для всего маршрутизатора и для каждого отдельного интерфейса VLAN.

RIP периодически рассылает широковещательным (RIP версии 1) или мультикасто-вым (RIP версии 2) образом информацию о собственной таблице маршрутизации. Приняв аналогичный пакет от другого маршрутизатора, RIP выполняет изменение локальной таблицы маршрутизации. В результате через некоторый промежуток времени коммутаторы будут "знать" маршруты, присутствующие на каждом устройстве.

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

OSPF

Протокол OSPF (Open Shortest Path First, "первыми открываются кратчайшие маршруты") позволяет создавать таблицы маршрутизации больших сетей. Он требует предварительной настройки, хотя в случае не очень крупной сети эти операции не являются сколько-нибудь сложными.

В самой минимальной конфигурации достаточно включить использование протокола OSPF на коммутаторе, создать одну область (обычно ее называют областью 0 — area 0) и активизировать протокол OSPF для каждого интерфейса VLAN.

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

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

DHCP-relay

Запросы на получение IP-адреса являются широковещательными и рассылаются только в пределах одной VLAN. Создание надежной службы DHCP для каждой VLAN обычно нерационально, поскольку один DHCP-сервер может обслуживать большое число сетей.

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

DHCP-агента можно реализовать как программным образом на сервере Windows в настройке службы маршрутизации и удаленного доступа, так и на коммутаторах третьего уровня.

В случае настройки коммутатора достаточно включить данную функцию и для каждого интерфейса VLAN указать адреса DHCP-серверов, на которые следует пересылать запросы аренды адреса.

Программная маршрутизация

Рабочие станции Windows могут выступать в качестве маршрутизаторов только при установке специализированных программ третьих фирм, например, WinRoute. Существует большое количество аналогичных программ (многие из которых бесплатны), используемых даже в системах на Windows 9x. Серверы Windows уже включают в себя возможность маршрутизации — в их составе присутствует Служба маршрутизации и удаленного доступа (Routing and Remote Access Server, RRAS).

RRAS

Служба RRAS (Routing and Remote Access Server) осуществляет многопротокольную1 маршрутизацию пакетов, позволяет создавать соединения по требованию и осуществлять для них маршрутизацию данных. Начиная с Windows 2000, служба RRAS устанавливается автоматически, но находится в отключенном состоянии. Для ее запуска следует открыть консоль управления RRAS и выполнить задачу Настроить и включить маршрутизацию и удаленный доступ.

Сервер RRAS может выполнять как статическую, так и динамическую маршрутизацию. Настройка статической маршрутизации через оснастку RRAS — это просто использование графического интерфейса вместо утилиты route, запускаемой одноименной командой route. Больший интерес представляет возможность включения динамических протоколов маршрутизации — Routing Information Protocol (RIP) и Open Shortest Path First (OSPF).

Виртуальные маршрутизаторы

У классических маршрутизаторов правила, по которым пакеты пересылаются из одной сети в другую, — эти правила называют таблицей маршрутизации — едины для всего устройства. Это означает, что такое устройство не сможет правильно маршрутизировать данные между двумя VLAN, интерфейсам которых присвоены IP-адреса из одного диапазона. Хотя диапазонов адресов, предназначенных для внутреннего пользования, вполне достаточно для правильного назначения частным сетям, на практике возникают ситуации, когда менять диапазоны в VLAN не совсем удобно. Например, к сети большого предприятия подключается организация, у которой уже есть своя структура, удаленные офисы и т. д. И менять адреса в таком случае значит перенастраивать большое число устройств и программ.

Помочь в подобной ситуации может создание виртуального маршрутизатора. Протокол VRF (Virtual Routing and Forwarding) позволяет на одном устройстве создать несколько таблиц маршрутизации и пересылки данных (рис. 8.7).

Рис. 8.7.
VRF: один коммутатор разбивается на несколько виртуальных

В результате к маршрутизатору можно подключать локальные сети с совпадающими диапазонами IP-адресов.

Настройка протокола VRF достаточно проста. Необходимо дать команду на создание маршрутизатора, присвоить ему идентификатор и далее создавать таблицу маршрутизации. Подключение VLAN к конкретному виртуальному маршрутизатору осуществляется настройкой параметров VLAN на маршрутизаторе.

Недостаток решения — поддержка протокола VRF реализована не во всех моделях маршрутизаторов.


1Служба маршрутизирует протоколы IP, IPX, AppleTalk.


Рейтинг@Mail.ru