Rambler's Top100
Статьи
Николай НОСОВ  06 декабря 2024

Виртуализация сети: от VLAN до VPN

Эволюция информационных технологий сопровождается изменениями подходов к организации компьютерных сетей. 

Виртуальная локальная сеть

В начале 90-х в банке, где в то время я работал в ИТ-отделе, сеть была «плоская» – рабочие станции и серверы подключались к одному не­управляемому коммутатору Ethernet. При подключении сетевого принтера, компьютера или другого устройства к коммутатору в его таблице коммутации, отражающей соответствие портов и MAC-адресов, после поступления на порт первого кадра прописывался уникальный MAC-­адрес нового устройства (рис. 1). Пакеты между устройствами пересылались в соответствии с таблицей.
Рис. 1. «Плоская» сеть и таблица коммутации

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

Мошенничество вскрылось, и ИТ-отделу выделили деньги на недавно появившиеся на рынке управляемые коммутаторы. После чего единую сеть Ethernet разделили на несколько логических сетей, подключенных к разным портам управляемого коммутатора, организовав виртуальную сеть (VLAN). Теперь не имеющие доступа сотрудники в принципе не могли попасть в сегмент сети с сервером бухгалтерии.
Рис. 2. Организация виртуальных локальных подсетей

Часть портов управляемого коммутатора выделили бухгалтерии, часть – для подсети руководства, по одному – на операционистов, ИТ-отдел и прочих сотрудников. Это позволило создать изолированные на канальном уровне (L2) виртуальные сети (пример подобной сети показан на рис. 2). Кадры Ethernet, поступающие c компьютера главного бухгалтера, допустим, на десятый порт коммутатора, который приписан к VLAN10, автоматически маркировались: к ним добавлялось поле Tag с идентификатором (номером) VLAN (рис. 3).
Рис. 3. Обычный и маркированный кадры

Далее коммутатор в своей таблице коммутации среди портов, принадлежащих VLAN10, искал порт, к которому подключено устройство с MAC-адресом получателя. Если получатель был подключен к порту того же коммутатора, то тег удалялся и кадр отправлялся в нужный порт таким, каким был изначально, – получателю незачем знать о существовании VLAN.

Если же искомый порт был транковым (магистральным), то тег у него оставался. Через транковые порты кадр передавался на другой управляемый коммутатор, где также искались МАС-­адреса устройств, принадлежащих VLAN10. Пакеты заканчивают жизнь на сетевых картах компьютеров или на портах маршрутизатора. Один сегмент VLAN – один широковещательный домен.

Подключение к интернету

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

Работать с двумя компьютерами на рабочем месте было неудобно, да и изоляции достичь не удалось – данные перетаскивали между сетями на дискетах, а с ними в банковскую сеть попадали вирусы. В итоге параллельная сеть трансформировалась в демилитаризованную зону (DMZ, отдельный защищенный межсетевыми экранами сегмент VLAN) общей физической сети, а сама сеть банка приобрела классическую трех­уровневую архитектуру (рис. 4), где основные потоки данных шли по направлению «север – юг» – от компьютеров сотрудников к серверам или выходу в интернет.
Рис. 4. Трехуровневая архитектура сети

Уровень доступа отвечал за подключение компьютеров сотрудников, уровень распределения «разбрасывал» их по VLAN. Уровень ядра, реализованный на двух (для резервирования) самых мощных коммутаторах, обеспечивал быструю передачу данных.

Взаимодействие новой сети с интернетом осуществлял роутер (маршрутизатор), работавший на уровне L3 модели OSI. Основная задача сетевого уровня – создание составных сетей, построенных на основе сетевых технологий разного канального уровня, таких как Ethernet, Wi-Fi, MPLS. Различия технологий приводят к проблемам нестыковки – например, не совпадают максимальные размеры кадра (MTU). Так, в сети Ethernet MTU – 1500 групп из восьми битов, а в сети Wi-Fi – 2300. Различается и адресация. Скажем, в сети Ethernet используется широковещательная. 

Для того чтобы согласовать адресацию на сетевом уровне, используются глобальные адреса (IP-адреса), которые не зависят от адресов конкретных технологий канального уровня. Межсетевой протокол (IP, Internet Protocol) объединяет сегменты сети в единую сеть, обеспечивая доставку пакетов данных между любыми узлами сети через произвольное число промежуточных узлов – маршрутизаторов.

Сетевой уровень решил проблему масштабируемости. Работа велась не с отдельными адресами, как на канальном уровне, а с блоками адресов. Пакеты, для которых путь следования неизвестен, отбрасывались, а не пересылались обратно на все порты.

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

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

До туннелирования сетевой пакет состоит из данных и двух определяющих передачу служебных частей:
  • Original IP Header. Содержит информацию о версии IP (v4 или v6), исходном IP-адресе и IP-адресе назначения.
  • TCP Header. Содержит параметры и информацию о состоянии сквозного TCP-сокета (программного интерфейса). Среди них: номера портов отправляющего и принимающих устройств; номер сегмента TCP; номер, используемый получателем для запроса следующего сегмента TCP; длина заголовка; флаги подтверждения, установления и завершения соединений; контрольная сумма. 
При туннелировании оригинальный сетевой пакет встраивается (инкапсулируется) во внешний: добавляется поле Outer IP Header – внешний заголовок IP, содержащий информацию о версии протокола, длине заголовка, типе обслуживания, общей длине пакета, идентификаторе и флагах (рис. 5).
Рис. 5. Общая схема туннелирования сетевого трафика

Для защиты данные, передаваемые по туннелю через интернет, шифруются и в пакет добавляются поля ESP Header, ESP Trailer, ESP Auth. Протокол ESP позволяет комбинировать несколько служб безопасности, таких как обеспечение конфиденциальности данных посредством шифрования, аутентификация пакетов, целостность данных и уникальность пакетов. Технология основана на стеке протоколов: IKEv2 – на уровне control plane, обеспечивающем согласование выбора алгоритма шифрования, аутентификации и контроля целостности; IPSec на уровне data plane осуществляет шифрование оригинальных пакетов и туннелирование средствами протокола ESP. Передачу данных по виртуальному каналу можно сравнить с перепиской через обычную почту, где конверт выполняет функцию инкапсуляции сообщения. 

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

Время облаков

В первой сети банка был всего один сервер, стоявший под столом ИТ-директора. Вспоминаются айтишные байки про главную угрозу информационной системе – уборщицу со шваброй. И действительно, однажды уборщица вывела у нас банковскую сеть из строя. Потом к файловому серверу добавились сервер баз данных, сервер приложений, почтовый и веб-серверы. Потом выделили серверы под AD, DNS и DHCP. И все это приходилось дублировать для резервирования. Число серверов росло, под них отвели специальную комнату – серверную. Для экономии скачали дистрибутив VMware и начали использовать виртуализацию серверов. В итоге столкнулись с проблемами эксплуатации – в жаркое лето серверная перегревалась, основные серверы отключались вместе с резервными, и информационная система «падала».

Не добавляли оптимизма периодически появлявшиеся проблемы с электропитанием – то конфликт собственников, то обрыв кабеля, то плановые отключения электросети. Все это стимулировало перенос ИТ-инфраструктуры в дата-центры, специализирующиеся на услугах colocation, а затем и в развернутые в этих ЦОДах облака. Наступило время облаков, но об этом уже в следующей статье.
Заметили неточность или опечатку в тексте? Выделите её мышкой и нажмите: Ctrl + Enter. Спасибо!

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

Согласен