Vyatta

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску
Vyatta
Изображение логотипа
Веб-интерфейс Vyatta
Веб-интерфейс Vyatta
Разработчик Vyatta inc.
Семейство ОС Linux
Основана на Debian
Первый выпуск 2005
Последняя версия 6.6 (5 февраля2013)
Поддерживаемые языки Английский
Типядра Модульное
Интерфейс Интерфейс командной строки, веб-интерфейс
Лицензия Платный (60 дней триал)
Состояние Актуальное
Веб-сайт vyatta
vyatta.org
Логотип ВикискладаМедиафайлы на Викискладе

Vyatta— сетевая операционная система, основанная наDebian GNU/Linux.Работает на оборудованииx86иx64и позволяет использовать обычныйперсональный компьютерилисерверв качествемаршрутизатора,межсетевого экранаили VPN-концентратора. Vyatta также может работать в виртуальной машине, предоставляя традиционные сетевые сервисы для виртуальной инфраструктуры (официально поддерживаютсяVMware ESX Serverи CitrixXenServer,теоретически может работать в любомгипервизоре).

Разработчиком является компанияVyatta Inc.,расположенная в городеБелмонт,Калифорния.Она позиционирует Vyatta как конкурента продуктамCiscoуровняISR 1800VXR 7200.[1]

Vyatta Inc. также предоставляет услуги по технической поддержке своих продуктов, консультации по их настройке и продаёт аппаратное обеспечение с предустановленной Vyatta.

По заявлению разработчиков, название продукта происходит отсанскритскогослова «открытый».[2]

В 2012 г. компанииVyattaInc.была поглощена другой американской компаниейBrocade Communications Systems

Соответственносистема Vyattaпослужила основой дляисключительно коммерческого продуктаBrocade Vyatta Network OS

http:// brocade /en/products-services/software-networking/network-functions-virtualization/vyatta-network-os.html

Производитель сетевого оборудования компания Ubiquiti использует Vyatta (доработанную в плане веб-интерфейса администратора и названную EdgeOS) в своих маршрутизаторах серии EdgeRouter.

В 2017 г. Brocade продала Vyatta Software Technology компанииAT&T.

В 2021 г. компанияCienaобъявила о приобретении у AT&T активов и разработок Vyatta.

Ключевые возможности

[править|править код]
  • Статическая и динамическая маршрутизация дляIPv4иIPv6(RIP,OSPF,BGP,RIPng— используется пакет quagga);
  • Межсетевое экранирование для IPv4 и IPv6, включая фильтрациюp2p-трафика;
  • Трансляция сетевых адресов;
  • DHCP-сервер для IPv4 и IPv6;
  • Система предотвращения вторжений;
  • Балансировка нагрузки(interface bonding) и резервирование канала;
  • VLAN (в классическом виде адаптеров с именами вида eth0.20)
  • pseudo-Ethernet (то есть второй виртуальный сетевой интерфейс на том же разъеме, использующий свой собственный MAC-адрес)
  • Поддержка программного — и, на соответствующем оборудовании, аппаратного bridge/switch
  • Резервирование маршрутизаторов с синхронизацией таблицы состояний соединений;
  • Виртуальные частные сети (IPsec,L2TP/IPsec,PPTP,OpenVPN);
  • Учёт трафика (NetflowиsFlow);
  • Веб-прокси и фильтрацияURL.

Версии продукта

[править|править код]

В настоящее время существуют две версии: Vyatta Core, содержащая только открытые компоненты и распространяющаяся бесплатно, и Vyatta Subscription/Vyatta Plus, содержащая дополнительные (в том числе проприетарные) компоненты и доступная только платным подписчикам.

Среди дополнительных возможностей Vyatta Subscription:

  • Синхронизация настроек между маршрутизаторами;
  • RESTAPIдля удаленного управления;
  • Поддержка интерфейсных картPDH(E1, T1/T3) иV.35;
  • Коммерческий расширенный набор правил для фильтрации URL и IPS.

До версии 6.0 Core и Subscription были независимыми периодически синхронизируемыми ветками кода, после этой версии они были объединены, и Subscription представляет собой строгое надмножество Core[3].

Vyatta Core доступна для бесплатной загрузки с сайте разработчиков[4]в виде LiveCD (с возможностью установки на жесткий диск), LiveCD для виртуальных машин (содержит ядро дляXen), а также готовых образов виртуальных машин VMware и XenServer и облачного сервиса Riverbed.

Пример сессии настроек в командной строке

Настройка и управление системой производятся через единый интерфейс командной строки, напоминающий интерфейс JuniperJUNOS,также сходный с командной строкой оборудования Cisco и D-Link. Также доступен веб-интерфейс (начиная с релиза 6.3 доступен только в платной редакции), который по умолчанию отключён. Веб-интерфейс строится вокруг понятия «дерево настроек».

Интерфейс командной строки поддерживает автодополнение команд по нажатию клавиши Tab и вывод справки по нажатию клавиши «?».

Интерфейс имеет два режима: режим операций (для просмотра параметров и обслуживания системы) и режим настроек. Переход в режим настроек осуществляется командой configure.

Все настройки хранятся в одном файле и имеют иерархическую структуру. Уровни вложенности отмечаются фигурными скобками. Пример:

policy {
prefix-list RFC1918 {
rule 10 {
action permit
le 32
prefix 10.0.0.0/8
}
rule 15 {
action permit
le 32
prefix 172.16.0.0/12
}
rule 20 {
action permit
le 32
prefix 192.168.0.0/16
}
}
}

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

set policy prefix-list RFC1918 rule 20 prefix 192.168.0.0/16

Также можно перейти на нужный уровень вложенности командой edit (например, «edit policy prefix-list RFC1918») и использовать относительные пути («set rule 20 prefix 192.168.0.0/16»). В этом режиме можно переименовывать или копировать узлы настроек с помощью команд rename и copy (например, «rename rule 20 to rule 30»).

Настройки не применяются сразу после ввода команд (в отличие от, например,Cisco IOS). Чтобы они вошли в силу, нужно выполнить команду commit. Это позволяет проверить внесённые изменения и уменьшить вероятность ошибки. Отказаться от внесённых изменений можно командой discard.

Полезные возможности

[править|править код]
  • даже после команды commit настройки, хотя и вступают в силу, не сохраняются и теряются при перезагрузке. Для сохранения настроек нужно выполнить команду save.
  • есть команда confirm-commit <число минут>. Она применяет измененные настройки, не сохраняя их, и далее требует, чтобы в течение указанного временного интервала была выполнена команда confirm. Если этого не сделать, то ОС перезагружается, теряя изменения настроек. Это решает частую у неопытных и спешащих администраторов проблему «отрезал себя новыми настройками от устройства».
  • все настройки находятся в одном файле, и ведется история изменений этого файла с комментариями, похожая на историю изменений в SVN или git.
  • доступны все возможности Debian соответствующей версии (кроме разве что перестроения ядра, да и это ограничение скорее принадлежит Ubiquiti EdgeOS, нежели самой Vyatta). Непосредственно в командной строке роутера можно писать как команды Vyatta, так и команды самого по себе Linux. Для получения полных прав root нужно (по крайней мере в EdgeOS) исполнить команду «sudo -i».
  • возможна установка любых пакетов (подходящих по версии Debian и по типу процессора) из репозиториев Debian.
  • возможно даже построение пакетов из исходников (если нужного бинарного пакета под, например, mips не нашлось) непосредственно на роутере.
  • в систему входит Python, что позволяет разработку достаточно сложных скриптов отработки реакции на сетевые события.

Ограничения

[править|править код]
  • Поскольку Vyatta хранит настройки не в классическом каталоге /etc, а в своем формате в каталоге /config (возможно, что /etc строится автоматически на основе /config), то все изменения в системе, сделанные на уровне «голого» Debian Linux, не сохраняются при обновлениях Vyatta на устройстве.
  • В частности, это касается дополнительно установленных пакетов Debian и их настроек, а также паролей пользователей в том случае, если они были заданы средствами Linux. Для задания паролей необходимо пользоваться средствами Vyatta.