VPN на основе технологии MPLS
52 Slides1.79 MB
VPN на основе технологии MPLS
Технология BGP/MPLS VPN (RFC 2547) Хорошее приближение предлагаемых сервисов к свойствам сервисов частной сети: Безопасность на уровне сетей с виртуальными каналами Пропускная способность может быть гарантирована на основе QoS Возможность оказания дополнительных услуг на уровне IP-сетей Легко внедряется и обслуживается Отличная масштабируемость
Безопасность MPLS VPN Вопросы, требующие ответа: Как сделать раздельной адресацию? Как сделать маршрутизацию раздельной? Как скрыть сетевую магистраль? Как устранить уязвимость к атакам типа DoS и вторжениям в сеть?
MPLS VPN Site 1 клиента А Site 2 клиента А Site 1 клиента B PE (LER) CE клиента B PE (LER) CE клиента A CE клиента B P (LSR) CE клиента A Site 3 клиента А Домен MPLS Site 2 клиента B Site 3 клиента B Site 4 клиента B
Терминология CE (Customer Edge) router – пограничный маршрутизатор клиента, часть его VPN PE (Provider Edge) router – пограничный маршрутизатор провайдера, реализующий интерфейс с CE PE edge LSR, LER P router – маршрутизатор магистральной сети провайдера, ничего не знающий о VPN P LSR На маршрутизаторах P протокол BGP не выполняется, они ничего не знают о VPN
Терминология Сайт Набор сетей, являющихся частью VPN клиента и расположенных географически рядом друг с другом Сайт соединен с магистральной сетью VPN одной или более связями PE/CE Сайт может быть частью разных VPN
поддержка MPLS маршрутизаторы P, являющиеся частью сети провайдера внутренние интерфейсы пограничнх маршрутизаторов PE поддержка VPN Только PE «знают» о существовании VPN Поэтому маршрутизаторы PE являются функционально более сложными, чем P
Сайт 1 VPNA Сети клиента Сайт 2 VPNA CE CE Сайт 1 VPNB PE2 PE1 Сеть провайдера CE P PE6 CE CE P P Сайт 1 VPNC Сайт 2 VPNB P PE3 P P P Сайт 3 VPNA CE P P PE4 CE PE5 - Пограничный маршрутизатор провайдера Сайт 4 VPNA CE Пограничный маршрутизатор клиента Компоненты MPLS VPN CE Сайт 2 VPNC Сайт 3 VPNB
Парадокс обеспечения абсолютной изолированности при сохранении полной связности. При создании VPN на базе IP-сети сложно проблема состоит в достижении изолированности Решение: Для изоляции - автоматическая фильтрация маршрутных объявлений Для связности - применение туннелей для передачи клиентского трафика по внутренней сети провайдера.
Сети клиентов Маршрутные объявления BGP IGP IGP BGP Туннели для трафика данных BGP BGP Сеть провайдера Изоляция сетей клиентов и использование туннелей
Разделение маршрутов в MPLS VPN Маршруты BGP не распространяются внутри домена MPLS Пограничные маршрутизаторы провайдера PE для каждого подключенного к ним сайта имеют независимые таблицы маршрутизации и продвижения VRF (VPN Routing and Forwarding)
PE обмениваются между собой маршрутной информацией по протоколу MP-BGP VPN A VPN A iBGP sessions 11.5.0.0 10.2.0.0 CE CE VPN A VPN B 10.2.0.0 CE PE P P P P PE CE 10.1.0.0 VPN A 11.6.0.0 CE PE VPN B 10.1.0.0 VPN B PE CE 10.3.0.0 CE PE и CE обмениваются маршрутной информацией по протоколам: OSPF, RIPv2, статические записи P и PE используют общий протокол IGP
PE - виртуальный маршрутизатор Глобальная таблица маршрутизации Сайт A VRF A P CE IGP BGP IGP P IGP PE Сайт B CE VRF B P Сеть провайдера
CE Site-1 PE CE Site-2 Несколько сайтов, относящихся к одной VPN и подключенных к одному PE могут иметь общую VRF
CE VRF Глобальная таблица PE Site-1 VPN Backbone IGP CE Site-2 EBGP,OSPF, RIPv2,Static VRF Таблица коммутации MPLS Маршруты, получаемые PE от некоторого CE о сетях сайта, заносятся в соответствующую VRF. VRF также пополняется протоколом MP-BGP – об адресах сетей других сайтов данной VPN Маршруты, которые PE получает из магистральной сети по протоколу IGP , заносятся в глобальную таблицу
P P PE PE VPN Backbone IGP P P iBGP session (1) Обмен маршрутной информацией между PE идет по протоколу MP-BGP
Независимость адресных пространств Адресные пространства каждой VPN включают уникальные глобальные адреса Интернет либо частные (private) адреса (RFC 1819) Вопрос: почему не сделать выбор адресов в пределах VPN совершенно произвольным, ограниченным только общими правилами адресации стека TCP/IP?
Независимость адресных пространств Важно: адреса узлов в разных сайтах одной и той же VPN, не должны совпадать но адреса в разных VPN могут совпадать
3 VPN CE Router 10.2.2.2 CE Router 10.2.2.2 Разделяемая магистральная сеть CE Router 3.3.3.3 Использование отдельных VRF позволяет ограничиться требованием уникальности адресных пространств на уровне VPN CE Router 10.2.2.3 CE Router 10.2.2.4
Проблема совпадения адресов BGP изначально был рассчитан на использование глобально уникальных адресов IPv4 Проблема: при совпадении адресов в объявлениях в таблицу VRF заносится только один «кратчайший» маршрут. Решение - вместо потенциально неоднозначных адресов IPv4 используются расширенные однозначные адреса VPN-IPv4
Различитель адресов Используются модифицированные адреса VPN-IPv4 к каждому маршруту IPv4 добавлен 64битный признак маршрута (route distinguisher, RD), один и тот же для всех маршрутов сайта Для обмена через ядро MPLS этими новыми адресами VPN-IPv4 используется MP-BGP 96 бит VPN-IPv4 64 бит RD 32 бит IPv4
Структура различителя маршрутов RD Type Administrator AN AN Type 0 - в поле Administrator IP-адрес (4 байта) Type 1 - в поле Administrator NAS (2 байта) Assigned number (AN) – уникальное число выбираемое провайдером
Объявление BGP Сайт 1 VPNA Адрес VPN-IPv4 123.45.67.89:1:10.1.0.0 RD 123.45.67.89:1 Адрес IPv4 10.1.0.0 Export GREEN Import GREEN CE1 Next Hop 123.45.67.89 RD 123.43.15.3:1 Метка Lvpn 7 Export GREEN RT Green Import GREEN CE3 VRF1А Int7 Сайт 2 VPNA VRF2А IP 123.45.67.89 IP 123.43.15.3 BGP PE1 BGP Сайт 2 VPNB PE2 IP 123.45. 7.5 RD 123.43.15.3:2 CE4 Export RED CE2 Import RED VRF1В VRF2В RD 123.45.67.89:2 BGP Сайт 1 VPNB VRF3А Export GREEN PE3 Import GREEN CE5 Маршрутные объявления MP-BGP RD 123.43.25.3:1 Сайт 3 VPNA
Адреса VPN-IPv4 используются только в объявлениях MP-BGP В таблицах VRF –только адреса IPv4 RFC 2547bis не требует, чтобы все маршруты внутри одной VPN индексировались одним и тем же значением RD Принципиально важно, чтобы RD разных VPN не совпадали.
Маршрутное объявление MP-BGP Адрес сети назначения в формате VPN-IPv4 Адрес следующего маршрутизатора (BGP next hop) . Метка (label VPN) – уникально определяет внешний интерфейс маршрутизатора PE Расширенные атрибуты сообщества (Extended community attributes
Расширенные атрибуты сообщества (Extended community attributes), Route-target, RT –идентифицирует набор сайтов, входящих в данную VPN, которым PE должен посылать маршруты. Значение route-target в объявлении export target policy, заданной при конфигурировании таблицы VRF Формат атрибута route-target аналогичен формату различителя маршрутов RD, что обеспечивает его уникальность в пределах всех VPN.
P P PE PE VPN Backbone IGP P P iBGP session Передается информация о маршрутах в сайтах заказчика. В сообщении содержатся следующие данные: VPN-IPv4 addresses, Next hop, Label, Extended Community Attributes
Содержимое обновлений BGP VPN-IPV4 address RD (64) и IPv4 address(32) RD конфигурируется для каждой VRF
Содержимое обновлений BGP Next Hop в формате VPN-IPV4, где RD 0
Содержимое обновлений BGP Метка VPN: VPN Метка второго уровня (exterior label), распределяется протоколом BGP Указывает на VPN -интерфейс выходного маршрутизатора PE и в конечном счете на VPN Метка может быть назначена только тем маршрутизатором, адрес которого указан в качестве Next-Hop атрибута (Downstream Unsolicited)
Содержимое обновлений BGP Extended Community attribute (64) Site of Origin (SOO): идентифицирует сайтисточник маршрута Route-target (RT): идентифицирует набор сайтов, которым должен быть передан данный маршрут (соответствует всем сайтам одной VPN)
Трансляция объявлений о маршрутах В VRF имеется запись о маршруте: Net 10.1.0.0, Next-Hop CE1 На PE происходит трансляция: VPN-IPv4: 123.45.67.89:1:10.1.0.0 Next-hop 123.45.7.5 Lvpn 7 RT Green
Объявление BGP Сайт 1 VPNA Адрес VPN-IPv4 123.45.67.89:1:10.1.0.0 RD 123.45.67.89:1 Адрес IPv4 10.1.0.0 Export GREEN Import GREEN CE1 Next Hop 123.45.67.89 RD 123.43.15.3:1 Метка Lvpn 7 Export GREEN RT Green Import GREEN CE3 VRF1А Int7 Сайт 2 VPNA VRF2А IP 123.45.67.89 IP 123.43.15.3 BGP PE1 BGP Сайт 2 VPNB PE2 IP 123.45. 7.5 RD 123.43.15.3:2 CE4 Export RED CE2 Import RED VRF1В VRF2В RD 123.45.67.89:2 BGP Сайт 1 VPNB VRF3А Export GREEN PE3 Import GREEN CE5 Маршрутные объявления MP-BGP RD 123.43.25.3:1 Сайт 3 VPNA
Трансляция маршрутных обновлений на границе домена MPLS 1 BGP,OSPF,RIPv2 update Net1, Next-Hop CE-1 P P PE-2 PE-1 CE-2 VPN Backbone IGP P P CE-1 Site-1 (1) PE маршрутизатор получает из сайта заказчика обновление IPv4 EBGP, RIPv2, Static Site-2
BGP,OSPF,RIPv2 update Net1, Next-Hop CE-1 P P PE-2 PE-1 CE-2 VPN Backbone IGP P CE-1 Site-1 VPN-IPv4 update: RD:Net1, SOO Site1, RT Green, Nexthop PE-1 Label (intCE1) P 2 (2) PE транслирует это обновление в формат VPN-IPv4, для этого Добавляет к адресу сети RD Назначает SOO и RT Переписывает значение поля Next-Hop Назначает метку, жестко связанную с VRF Посылает сообщение MP-iBGP всем соседям Site-2
P BGP,RIPv2 update Net1, Next-Hop CE-1 PE-2 PE-1 Site-1 IPv4 update Net1 CE-2 VPN Backbone IGP P CE-1 3 P P Site-2 VPN-IPv4 update: RD:Net1, Next-hop PE-1 SOO Site1, RT Green, Label (intCE1) (3) Все PE-получатели MP-BGP-сообщений: - транслируют полученное обновление в формат IPv4 - помещают маршрут в таблицы VRF, связанные с сайтами, указанными атрибутом RT
Обработка сообщения BGP Сообщение о маршруте принимается всеми PE и запись о нем (адрес и метка) заносится в соответствующие VRF в зависимости от указаний в атрибутах Extended Community. Использование данного сообщения при продвижении пакета Каждый раз, когда из сайта заказчика в сеть MPLS отправляется пакет с данным адресом назначения, по таблице VRF определяется метка, вставляется в заголовок MPLS пакета для отправки по нужному пути второго уровня иерархии.
LSP P P PE PE VPN Backbone IGP P P iBGP session Для передачи информации между PE используется LSP первого уровня иерархии Для передачи данных между сайтами заказчика используется LSP второго уровня иерархии
Обмен маршрутами между сайтами одной VPN Site-3 N3 Routing Table для CE3 N1, PE3 N2, PE3 N3, Local EBGP/RIP/Static N3 NH CE3 IntCE3 PE3 VRF для site-1 N1,NH CE1 N2,NH PE2 N3,NH PE3 Обновления VPN-IPv4 между PE RD:N1, NH PE1,Label IntCE1, RT Blue RD:N2, NH PE2,Label IntCE2, RT Blue RD:N3, NH PE3,Label IntCE3, RT Blue PE1 IntCE1 Routing Table для CE1 N1, Local N2, PE1 N3, PE1 Site-1 N1 VRF для site-3 N1,NH PE1 N2,NH PE2 N3,NH CE3 EBGP/RIP/Static N1 NH CE1 PE2 EBGP/RIP/Static IntCE2 N2,NH CE2 VRF для site-2 N1,NH PE1 N2,NH CE2 N3,NH PE3 Site-2 N2 Routing Table для CE2 N1,NH PE2 N2,Local N3,NH PE2
CE1 IP packet Промежуточный маршрутизатор P1 (и остальные) коммутирует пакеты на основе метки первого уровня IGP label (она находится наверху стека) PE1 Предпоследний (Penultimate Hop) маршрутизатор P2 удаляет метку первого уровня PE2 получает пакеты с меткой, указывающей на выходной интерфейс (VRF) CE2 IP packet IP packet IGP Label(PE2) VPN Label VPN Label P1 PE1 получает IP-пакет Просматривает VRF данного сайта Находит маршрут BGP c меткой второго уровня (VPN label) Извлекает из VRF Next-Hop (PE2) По таблице коммутации PE1 определяет для адреса PE2 метку первого уровня (IGP label). IP packet IGP Label(PE2) VPN Label P2 IP packet PE2 CE3
Сокрытие магистрали провайдера MPLS VPN Интерфейс между VPN осуществляет BGP, не требуется раскрывать никакой информации о магистрали Информация требуется только когда протокол маршрутизации работает между CE и PE Если требуется этого избежать, то можно занести маршруты вручную Функция traceroute отключена
Что видит клиент MPLS VPN? Адресацию глобальных связей между CE клиента и PE провайдера видят только CE Router клиенты, относящиеся к этой же VPN Customer A CE Router клиента B LER LER MPLS-домен CE Router клиента A CE Router клиента B
Устойчивость MPLS VPN к атакам Имеется возможность задать объект атаки в сети провайдера - IP-адрес глобальной связи (WAN link) Главная цель – обеспечить защищенность каждой VPN от атак из других VPN. Из VPN, подключенной к тому же самому PE Через магистральную сеть
Клиент B CE Атака маршрутизатора провайдера через сеть Клиент A CE CE знает адрес PE LER Клиент A CE LSR LER Атака из соседней VPN Клиент B CE
Устойчивость MPLS VPN к атакам Два возможных пути атаки в MPLS VPN 1. Атака на PE 2. Атака на сигнальный механизм MPLS (на внутренние LSR)
Атаки на PE DoS-атака на PE. Затопление обновлениями таблиц маршрутизации Несанкционированный доступ к PE Могут быть проведены такие же атаки как и на маршрутизаторы ISP. Используются те же методы предотвращения.
Предотвращение атак на PE Несанкционированный доступ к PE В access-list заносятся записи, запрещающие доступ к PE по telnet из CE. Затопление маршрутными обновлениями Использование аутентификации в протоколах маршрутизации Настроить access-list так, чтобы сообщения других протоколов маршрутизации не пропускались Ограничения общего количества маршрутов в VRF Ограничения общего количество маршрутов, которые могут быть приняты BGP во время одной сессии
Атака на систему сигнализации MPLS VPN Пакеты передаются по магистральной сети на основании меток Метки назначаются протоколами продвижения меток LDP/RSVP Возможно ли подменить метку (аналогично IP-спуфингу)?
Спуфинг меток в MPLS Связь между CE и PE является IP интерфейсом, не использующим метки PE router ни при каких обстоятельствах не принимает по этому интерфейсу пакетов с меткой При получении пакета с меткой по интерфейсу с CE маршрутизатор PE отбрасывает его Протокол LDP может использовать аутентификацию на основе MD-5
MPLS обеспечивает безопасные коммуникации для создания экономичных корпоративных сетей