Cisco IOS

Cisco IOS (Internetwork Operating System) — общее название для семейства сетевых операционных систем, используемых на оборудовании компании Cisco Systems. Это семейство включает как классическую IOS с монолитной архитектурой, разработанную Cisco самостоятельно, так и её современные версии, построенные на базе Unix-подобных ядер[2].

Классическая IOS является полностью проприетарной разработкой с монолитным ядром, не основанной на Unix[2], где все компоненты работают в едином адресном пространстве[3]. В отличие от неё, современные операционные системы Cisco имеют модульную архитектуру. Cisco IOS XE основана на ядре Linux, в которой классическая IOS запускается как отдельный процесс (демон IOSd)[2], что позволяет сохранить привычный интерфейс, добавив многозадачность и защиту памяти[4]. Cisco IOS XR — система для оборудования операторского класса, использующая ядро QNX[2]. Cisco NX-OS, предназначенная для коммутаторов центров обработки данных, также базируется на Linux[2].

Общие сведения
Cisco IOS
Разработчик Cisco Systems
Семейство ОС проприетарное семейство ОС
Исходный код проприетарный
Первый выпуск 1986
Последняя версия
Частота обновления финальных версий Нерегулярно, зависит от ветки релиза
Метод обновления Копирование с сетевого сервера (TFTP, FTP, SCP), USB-накопитель
Менеджеры пакетов нет
Поддерживаемые языки английский
Поддерживаемые платформы маршрутизаторы и коммутаторы Cisco
Тип ядра монолитное
Интерфейс командная строка
Лицензия Проприетарная, EULA
Состояние активное
Репозиторий исходного кода нет
Следующая Cisco IOS XE
Веб-сайт cisco.com/c/en/us/produc…

История

Зарождение и ранние годы (1980-е — 1990-е)

Программное обеспечение, ставшее основой для Cisco IOS, было создано на основе кода, разработанного Уильямом Йегером в Стэнфордском университете в 1980-х годах[[5]]. В 1986 году компания выпустила свой первый коммерческий продукт — маршрутизатор Advanced Gateway Server (AGS), который работал под управлением этой операционной системы[5][[6]]. Этот год считается фактическим годом появления первой рабочей версии будущей IOS. Изначально у программного обеспечения не было официального названия, и его называли просто «программным обеспечением для маршрутизаторов»[7]. Название Internetwork Operating System (IOS) было дано позже, чтобы отразить миссию компании по объединению разнородных сетей.

В 1990-е годы Cisco начала активно выходить на рынок коммутации. 7 декабря 1994 года компания завершила приобретение Kalpana, которая считалась изобретателем технологии коммутации Ethernet[8][[9]]. Исторически коммутаторы Cisco Catalyst работали под управлением отдельной операционной системы CatOS (разработанной на основе ОС компании Crescendo Communications, приобретённой Cisco в конце 1993 года), которая отвечала за функции коммутации (Layer 2), в то время как IOS использовалась на маршрутизаторах для маршрутизации (Layer 3)[10].

Переход к единой операционной системе был постепенным. На модульных коммутаторах, таких как Catalyst 6500, был внедрён «гибридный режим» (Hybrid Mode): основной процессор (Supervisor Engine) работал под управлением CatOS, а на отдельный модуль маршрутизации (MSFC) устанавливалась IOS[10]. Следующим шагом стало появление «нативного режима» (Native IOS), в котором IOS могла полностью управлять как функциями коммутации, так и маршрутизации, что позволило унифицировать операционную систему на всех устройствах и отказаться от CatOS[10].

Развитие и безопасность (2000-е)

В 2000-е годы развитие Cisco IOS было сосредоточено на повышении стабильности и внедрении комплексных функций безопасности. 29 августа 2005 года Cisco представила технологию IOS Software Modularity для коммутаторов Catalyst 6500, работавших под управлением IOS ветки 12.2SX[11]. Эта инициатива была попыткой внедрить модульность в монолитную архитектуру: отдельные подсистемы, такие как протоколы маршрутизации, запускались в защищённых процессах и могли быть перезапущены без перезагрузки всего устройства. Однако эта технология была переходным этапом, и в дальнейшем Cisco сделала ставку на изначально модульную архитектуру IOS XE[12].

В 2006 году развитие функций безопасности было сконцентрировано в технологической ветке 12.4T, в которой появились улучшения систем предотвращения вторжений (IPS) и SSL VPN[13]. Вместе с тем, в этот период был обнаружен ряд серьёзных уязвимостей. В июле 2006 года была раскрыта критическая уязвимость в утилите Cisco Router Web Setup (CRWS), позволявшая удалённо выполнять команды с наивысшими привилегиями без аутентификации (CVE-2006-3595)[14]. В 2007 году была выявлена уязвимость в модуле Network Analysis Module (NAM), допускавшая удалённое выполнение команд через SNMP (CVE-2007-1257)[15].

Ключевым событием десятилетия стало появление в 2008 году операционной системы Cisco IOS XE вместе с маршрутизаторами серии ASR 1000. В отличие от монолитной IOS, IOS XE была построена на ядре Linux, где классическая IOS запускалась как отдельный процесс (демон IOSd)[16]. Такая архитектура обеспечила изоляцию процессов и защиту памяти, что значительно повысило отказоустойчивость и безопасность. Несмотря на это, в 2008 году в IOS была обнаружена уязвимость в реализации MPLS, позволявшая вызвать отказ в обслуживании[17].

К концу 2000-х годов Cisco сместила фокус на развитие более гибких и масштабируемых технологий безопасности. В 2009 году основной парадигмой защиты стал межсетевой экран на основе политик зон (Zone-Based Policy Firewall, ZBF), который пришёл на смену классическому CBAC. Новые функции безопасности разрабатывались уже для ZBF, а на платформах с IOS XE, таких как ASR 1000, он стал единственным поддерживаемым межсетевым экраном[18]. В том же году началось активное внедрение технологии GET VPN (Group Encrypted Transport VPN), которая позволяла шифровать трафик в глобальных сетях без необходимости создания множества туннелей «точка-точка», что упростило масштабирование корпоративных VPN.

Эпоха IOS XE и программируемости (2010-е)

2010-е годы стали для операционных систем Cisco периодом фундаментальных архитектурных изменений, главным из которых стал переход от монолитной IOS к модульной и программируемой Cisco IOS XE. Десятилетие началось с выпуска в ноябре 2009 года версии IOS 15.0(1)M[19], которая заложила основу для новой модели релизов. В начале десятилетия компания сосредоточилась на развитии комплексных архитектур безопасности: в 2010 году получили распространение технология шифрования в глобальных сетях GET VPN[20] и архитектура Cisco TrustSec для сегментации сети на основе политик[21]. В 2011 и 2012 годах Cisco выпустила крупные пакеты обновлений, устранив десятки уязвимостей, большинство из которых могли привести к отказу в обслуживании (DoS) в таких функциях, как IPv6, NAT, ZBF и SIP[22][23].

В середине десятилетия Cisco начала активно укреплять безопасность на аппаратном и программном уровнях. Была внедрена инициатива Trustworthy Systems, направленная на обеспечение целостности устройств с помощью таких технологий, как безопасная загрузка (Secure Boot), цифровая подпись образов ПО и аппаратный модуль доверия (Trust Anchor module)[24]. Одновременно компания перешла к использованию более стойкой криптографии в рамках инициативы Next Generation Encryption (NGE), внедрив алгоритмы из набора Suite B, такие как AES-GCM, SHA-2 и криптографию на эллиптических кривых[25]. В марте 2013 года были представлены маршрутизаторы ISR-AX, поставлявшиеся с предустановленным пакетом лицензий на сервисы безопасности и оптимизации WAN, что превратило маршрутизатор в платформу для доставки приложений[26]. В марте 2015 года Cisco перешла на предсказуемый график публикации обновлений безопасности для IOS и IOS XE — дважды в год, в марте и сентябре[27][28].

Ключевым событием десятилетия стал окончательный переход на IOS XE. В 2016 году с выходом версии 16.1.1 «Denali» была представлена единая программная платформа для маршрутизаторов и коммутаторов, что унифицировало разработку[29]. В июне 2017 года были выпущены коммутаторы нового поколения Catalyst 9000, работающие под управлением архитектуры «Open IOS XE»[30]. В этой архитектуре традиционная IOS запускается как отдельный процесс (демон IOSd) поверх ядра Linux, что обеспечивает модульность, повышенную отказоустойчивость и новые возможности: программируемость через API (NETCONF, RESTCONF) и хостинг сторонних приложений в контейнерах[30][31].

В конце 2010-х годов фокус сместился на автоматизацию и новые модели лицензирования. В 2018 году в релизах IOS XE ветки «Fuji» (16.8.x, 16.9.x) активно развивалась технология автоматической настройки Zero-Touch Provisioning (ZTP)[32]. В том же году Cisco начала переход на централизованную модель лицензирования Smart Licensing, которая стала обязательной для новых версий ПО[33]. В конце года началась разработка версии 16.10.1 «Gibraltar», добавившей поддержку массовых линеек оборудования — коммутаторов Catalyst 9200 и беспроводных контроллеров Catalyst 9800[34]. В декабре 2019 года Cisco анонсировала IOS XR7 — версию ОС для оборудования операторского класса, адаптированную для облачных сред и обладающую улучшенной модульностью и поддержкой API[35][36]. В том же году была устранена критическая уязвимость (CVE-2019-12643) в REST API на ряде платформ с IOS XE.

Унификация и облачная интеграция (2020-е)

2020-е годы ознаменовались для операционных систем Cisco стратегическим сдвигом в сторону унификации программного обеспечения, облачных моделей лицензирования и углублённой интеграции с искусственным интеллектом. Этот период также был отмечен обнаружением и устранением ряда критических уязвимостей, а также планомерным завершением жизненного цикла устаревших платформ.

В 2020 году ключевым изменением в Cisco IOS XE стал выпуск версии 17.2.1r, в которой был представлен единый универсальный образ ПО для традиционных сетей и сетей SD-WAN, что упростило развёртывание[37]. В том же году с выходом версии 17.3.2 была внедрена новая модель лицензирования Smart Licensing Using Policy (SLUP), основанная на периодической отправке отчётов об использовании, а не на постоянной связи с облаком Cisco[38]. Для IOS XR год был отмечен устранением активно эксплуатируемых уязвимостей в протоколе DVMRP (CVE-2020-3566, CVE-2020-3569)[39]. Одновременно продолжался отказ от старых версий: 31 января 2020 года завершился жизненный цикл ветки IOS 15.2(M&T)[40].

В 2021 году развитие IOS XE было сфокусировано на поддержке нового оборудования, в частности, в версии 17.7.1 была добавлена поддержка маршрутизаторов ISR 1130 с Wi-Fi 6[41]. В IOS XR релиз 7.3.1 принёс улучшения для Segment Routing и поддержку оптики 400G-ZR[42]. В 2022 году в IOS XE версии 17.8 была добавлена поддержка LACP на маршрутизаторах ISR1131[43], а в сентябре был выпущен крупный пакет обновлений, устранивший 14 уязвимостей высокой степени опасности[44]. Для IOS XR была обнаружена уязвимость «нулевого дня» (CVE-2022-20821), позволявшая получить несанкционированный доступ к контейнеру Redis[45].

Ключевым событием 2023 года стало обнаружение в октябре критической уязвимости в веб-интерфейсе IOS XE (CVE-2023-20198, CVSS 10.0), которая позволяла удалённому злоумышленнику без аутентификации создавать учётные записи с максимальными привилегиями и устанавливать вредоносное ПО[46][47]. Уязвимость активно эксплуатировалась, что привело к компрометации десятков тысяч устройств по всему миру[48]. Эксплуатация этой уязвимости на необновлённых устройствах продолжалась и в последующие годы[49]. В 2024 году Cisco выпустила плановые пакеты обновлений, устранив уязвимости в LISP, IKEv1, DHCP Snooping (март)[50] и CSRF в веб-интерфейсе (сентябрь)[51].

В 2025 году стратегический фокус сместился на интеграцию ИИ, в частности, был представлен Cisco AI Assistant для упрощения управления сетями[52][53]. Однако в сентябре была раскрыта новая уязвимость «нулевого дня» в подсистеме SNMP (CVE-2025-20352), позволявшая вызвать отказ в обслуживании[54]. Параллельно Cisco продолжала развивать архитектуру SD-Access на базе модели «нулевого доверия» и укреплять аппаратную безопасность в рамках инициативы Trustworthy Systems[55].

Десятилетие также характеризуется планомерным завершением жизненного цикла популярных платформ. В октябре 2020 года было объявлено о прекращении поддержки коммутаторов Catalyst 2960-X/XR (с окончанием выпуска обновлений безопасности в октябре 2024 года)[40]. В ноябре 2022 года аналогичное объявление было сделано для маршрутизаторов серии ISR 4000 (с окончанием выпуска обновлений безопасности в ноябре 2027 года)[56].

Командная строка

Интерфейс командной строки (CLI) IOS является англоязычным[57] и предоставляет фиксированный набор многословных команд, наличие которых определяется рабочим режимом и уровнем привилегий пользователя. Режим глобальной конфигурации предназначен для изменения системных настроек, а режим конфигурации интерфейса — для управления отдельными интерфейсами. Все команды имеют свой уровень привилегий от 0 до 15, и доступны только пользователям с достаточными правами. Через интерфейс командной строки можно определить, какие команды будут разрешены для каждого уровня привилегий.

Поддержка скриптов

Tcl (унаследованный подход)

В большинстве сборок IOS встроен интерпретатор Tcl[58]. Благодаря этому, используя механизм встроенного менеджера событий (Embedded Event Manager, EEM), возможно написание скриптов (апплетов), реагирующих на различные события в сети, такие как сбой интерфейса, срабатывание таймера или появление определённого сообщения в системном журнале. Несмотря на поддержку, Tcl считается унаследованным инструментом, и для новых задач предпочтение отдаётся Python[59].

Python (современный подход)

Современные операционные системы Cisco IOS XE и IOS XR предоставляют встроенные возможности для выполнения скриптов на Python, что является стратегическим направлением для автоматизации сетевых операций. Классическая монолитная IOS не имеет встроенной поддержки Python[60].

  • В Cisco IOS XE поддержка Python реализована через Guest Shell — изолированную среду на базе Linux (контейнер), работающую непосредственно на сетевом устройстве[61]. Администратор может войти в эту среду и запускать скрипты, которые взаимодействуют с основной ОС через специальные модули для выполнения команд и получения данных. Эта функция доступна на современных платформах, таких как коммутаторы Catalyst 9000 и маршрутизаторы ISR 4000/ASR 1000[62].
  • В Cisco IOS XR поддержка Python является нативной и не требует отдельной гостевой среды[63]. Система позволяет напрямую запускать скрипты для автоматизации, которые могут быть нескольких типов: Exec-скрипты (запускаемые вручную), Config-скрипты (для валидации конфигурации), EEM-скрипты (запускаемые по событиям) и Process-скрипты (работающие как фоновые процессы)[64].

Режимы работы

Доступные рабочие режимы включают:[65]

  • User EXEC Mode
  • Privileged EXEC Mode
  • Global Configuration Mode
  • ROM Monitor Mode
  • Setup Mode

И более 100 других режимов конфигурирования и подрежимов.

Архитектура

Cisco IOS реализует монолитную архитектуру ядра из-за ограничений аппаратных ресурсов маршрутизаторов и коммутаторов 1980-х годов. Это означает, что все процессы имеют прямой доступ к оборудованию с целью максимального использования процессорного времени. В системе отсутствует защита памяти между процессами, а планировщик работает по принципу run-to-completion (процесс завершает работу до передачи управления). Процесс не может быть прерван планировщиком: только сам процесс может передать управление ядру с помощью системного вызова. Каждому процессу присваивается приоритет, и процессы с высоким приоритетом получают доступ к процессору раньше очереди низкоприоритетных, но процессы с низким приоритетом не могут быть прерваны.

Ядро IOS не реализует защиту памяти для данных различных процессов — вся физическая память доступна в едином адресном пространстве. Paging и свопинг отсутствуют, объём используемой памяти ограничивается установленной физической памятью устройства. Такая архитектура была выбрана ради повышения производительности и минимизации накладных расходов. Недостатками такой реализации являются усложнение кода, возможность повреждения данных между процессами и даже нестабильность или аварийное завершение работы всей системы. При критическом сбое операционная система автоматически перезагружается и восстанавливает сохранённую конфигурацию.

В отличие от классической IOS, современные операционные системы, такие как Cisco IOS XE, имеют модульную архитектуру, основанную на ядре Linux. В этой архитектуре традиционная IOS запускается как отдельный процесс (демон IOSd), что позволяет сохранить привычный интерфейс командной строки, добавив при этом преимущества современных ОС: многозадачность, защиту памяти и, как следствие, более высокую отказоустойчивость[66].

Подход к управлению программным обеспечением также кардинально различается. Классическая IOS представляет собой единый монолитный образ (файл с расширением .bin), и для обновления или изменения набора функций требуется полная замена этого файла с последующей перезагрузкой устройства[66][67]. В IOS XE, напротив, используется пакетная система: операционная система состоит из набора отдельных программных подпакетов[68]. На современных устройствах по умолчанию используется режим установки (Install Mode), при котором все компоненты отслеживаются в файле packages.conf. Это позволяет устанавливать, обновлять или удалять отдельные пакеты, что упрощает управление ПО и в некоторых случаях позволяет избежать полной перезагрузки системы[69].

Маршрутизация

Во всех версиях Cisco IOS функции маршрутизации и пересылки пакетов (коммутации) реализованы раздельно. Протоколы маршрутизации и сервисы работают как процессы IOS и формируют Routing Information Base (RIB), которая затем используется для построения таблицы маршрутизации (FIB, Forwarding Information Base), применяемой функцией пересылки пакетов. На маршрутизаторах с программной пересылкой (например, Cisco 7200) большинство операций, включая фильтрацию по access-list и коммутацию, реализуется на уровне прерываний с помощью Cisco Express Forwarding (CEF) или dCEF. Это позволяет обрабатывать пакеты без переключения контекста процесса. Функции маршрутизации — например, OSPF или BGP — выполняются как отдельные процессы. В устройствах с аппаратной коммутацией (например, серия Cisco 12000) FIB строится в программном обеспечении и загружается в аппаратные компоненты (ASIC или сетевой процессор), которые отвечают за пересылку пакетов.

Interface descriptor block

Interface Descriptor Block (IDB) — это область памяти или внутренняя структура данных IOS, содержащая такие сведения, как IP-адрес, состояние интерфейса и статистика по переданным пакетам. Для каждого физического интерфейса и каждой подпорты IOS поддерживает отдельный IDB. Количество IDB в системе зависит от модели оборудования.

Физические и логические интерфейсы обозначаются сокращёнными или полными именами портов в сочетании с указанием слота, модуля и номера интерфейса. В таблице ниже приведены полные названия и общепринятые сокращения для различных типов интерфейсов[70][71], включая современные стандарты скоростей до 800 Гбит/с[72].

Идентификаторы интерфейсов
Полное название Сокращение
EightHundredGigabitEthernet EH
FourHundredGigabitEthernet F
TwoHundredGigabitEthernet TH
HundredGigabitEthernet Hu
FiftyGigE FGE
FortyGigabitEthernet Fo
TwentyFiveGigE Twe
TenGigabitEthernet Te
FiveGigabitEthernet Fi
TwoGigabitEthernet Tw
GigabitEthernet Gi
FastEthernet Fa
Ethernet Et
Port-channel Po
AppGigabitEthernet Ap

Пакеты и функциональные наборы

Программное обеспечение Cisco IOS поставляется в виде единого скомпилированного файла (образа), уникального для каждой модели оборудования. В классической IOS для обновления или изменения набора функций требуется полная замена этого файла с последующей перезагрузкой устройства[73]. Обновление производится путём копирования нового образа с сетевого сервера (по протоколам TFTP, FTP, SCP) или с USB-накопителя[74][75].

Эволюция модели лицензирования

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

Традиционная модель (до IOS 15)

Изначально для получения разного функционала Cisco выпускала различные образы операционной системы, так называемые «наборы функций» (feature sets). Например, для коммутаторов Catalyst существовали версии с базовой маршрутизацией (IP Base), полной поддержкой IPv4 (IP Services) и расширенными функциями, включая IPv6 (Advanced IP Services)[73]. Выбор образа определял доступный набор команд и возможности оборудования.

Универсальные образы и пакеты активации

С выходом маршрутизаторов ISR G2 (серий 1900, 2900, 3900) и операционной системы IOS версии 15.0(1)M Cisco перешла на модель с универсальными образами (например, universalk9)[76]. В таком образе содержатся все доступные для платформы функции, но большинство из них заблокированы. Для их активации требуется установка лицензии, которая приобреталась с помощью ключа активации продукта (Product Activation Key, PAK)[73]. Основные технологические пакеты включали[76]:

  • IP Base — базовый набор функций, поставляемый по умолчанию.
  • Data — функции для глобальных сетей, такие как MPLS.
  • Security (SEC) — расширенные функции безопасности, включая VPN и межсетевой экран Cisco IOS Firewall.
  • Unified Communications (UC) — функции для IP-телефонии (VoIP).

Централизованное лицензирование: Smart Licensing

В середине 2018 года с выходом IOS XE версии 16.9.1 для новых версий ПО на ключевых платформах (например, Catalyst 9000) стало обязательным использование Smart Licensing[77]. Эта модель предполагает централизованное управление всеми лицензиями организации через облачный портал Cisco (Smart Account). Устройства должны периодически синхронизироваться с сервером Cisco Smart Software Manager (CSSM) для подтверждения легитимности используемых лицензий[78].

Упрощение: Smart Licensing Using Policy (SLUP)

В конце 2020 года, начиная с IOS XE 17.3.2, была внедрена усовершенствованная модель Smart Licensing Using Policy (SLUP)[79]. В отличие от предыдущей версии, она не требует обязательной регистрации и постоянной связи с облаком для начала работы. Модель основана на периодической отправке отчётов об использовании лицензий (RUM-отчёты) в Smart Account администратором[80]. Для сетей, изолированных от интернета, предусмотрен механизм резервирования лицензий (Specific License Reservation, SLR)[81].

Подписки Cisco DNA и DNX

Современная модель лицензирования для оборудования на IOS XE сочетает бессрочные и срочные лицензии. При покупке устройства приобретаются[82]:

  1. Сетевая лицензия (Network Essentials или Network Advantage) — является бессрочной (perpetual) и определяет базовый функционал коммутации и маршрутизации.
  2. Подписка Cisco DNA (DNA Essentials или DNA Advantage) — является обязательной, приобретается на срок 3, 5 или 7 лет и открывает доступ к расширенным возможностям автоматизации, аналитики и безопасности через систему управления Cisco Catalyst Center (ранее DNA Center)[83]. По истечении срока подписки базовый сетевой функционал сохраняется, но доступ к расширенным функциям и обновлениям ПО прекращается[84]. В 2024 году начался ребрендинг подписок DNA в DNX[82].

Нумерация версий

Cisco IOS использует для версий три числовых поля и дополнительные буквы: a.b(c.d)e, где

  • a — основная версия
  • b — дополнительная версия
  • c — номер выпуска, увеличивается с каждой новой сборкой одной ветки
  • d — номер промежуточной сборки (interim build), отсутствует в обычных релизах
  • e (отсутствует, одна или две буквы) — идентификатор ветки/типа релиза: T (Technology), E (Enterprise), S (Service provider), XA, XB и т. д.

Rebuilds — специальные сборки, исправляющие конкретную проблему или уязвимость для определённой версии IOS; например, 12.1(8)E14 — четырнадцатый rebuild версии 12.1(8)E.

Interim releases — формируются обычно еженедельно и содержат наработки текущей разработки.

Maintenance releases — регулярно тестируемые стабильные релизы с исправлениями и доработками; рекомендуется использовать их вместо interim и rebuild.

Ветки релизов (trains)

По терминологии Cisco, «train» (ветка релиза) — это ветка поставки ПО, объединяющая определённый набор функций и исправлений[85]. Исторически (до версии IOS 15) Cisco IOS развивалась в двух основных параллельных ветках[86]:

  • Mainline (M) train (основная ветка) — наиболее стабильные релизы, предназначенные для длительной эксплуатации. В эту ветку включались только исправления критических ошибок, но не новые функции.
  • Technology (T) train (технологическая ветка) — использовалась для внедрения новых функций и поддержки нового оборудования. Релизы в T-ветке выходили чаще, но считались менее стабильными. Со временем проверенные функции из T-ветки объединялись для создания следующей основной версии[87].

Релизы, которые Cisco считала достаточно стабильными для широкого внедрения, получали статус General Deployment (GD)[88].

Начиная с IOS версии 15, эта модель была упрощена: вместо двух расходящихся веток появилась единая, в которой релизы делятся на два типа по сроку поддержки[89]:

  • Extended Maintenance (M) (релизы с расширенной поддержкой) — стабильные версии с длительным сроком поддержки (44 месяца), выходящие примерно каждые 16–20 месяцев. Они рекомендуются для долгосрочного использования.
  • Standard Maintenance (T) (стандартные релизы) — выходят чаще (2–3 раза в год), включают новейшие функции, но имеют короткий срок поддержки (около 18 месяцев).

До 12.4

До релиза 15 IOS делился на несколько веток (trains), соответствующих разным рынкам и типам оборудования:

  • mainline — самая стабильная ветка, в течение жизненного цикла не расширяется; обновления только по багфиксам;
  • T (Technology) — функциональная ветка, дополняется новшествами и исправлениями; потенциально менее стабильна;
  • S (Service Provider) — специализированная для маршрутизаторов ядра операторских сетей;
  • E (Enterprise) — ориентирована на корпоративные сети;
  • B (Broadband) — поддержка Интернет-доступа по широкополосным каналам;
  • X* (XA, XB и др.) — специальные релизы, протестированные для отдельных задач или клиентов.

Существовали и иные ветки, например 12.0AA — для конкретных платформ.

С версии 15.0

Начиная с IOS версии 15, модель веток была упрощена. В отличие от предыдущей модели с двумя расходящимися ветками (Mainline и Technology), в IOS 15 была введена единая ветка M&T[85], в которой чередовались релизы двух типов[90]:

  • Extended Maintenance (M) (релизы с расширенной поддержкой) — стабильные версии с длительным сроком поддержки (исправления ошибок в течение 44 месяцев), выходящие примерно каждые 16–20 месяцев[89]. Они рекомендуются для долгосрочного использования.
  • Standard Maintenance (T) (стандартные релизы) — выходили чаще (2–3 раза в год), включали новейшие функции, но имели короткий срок поддержки (около 18 месяцев).

Первым M-релизом стал 15.0(1)M, а первым T-релизом — 15.1(1)T.

Начиная с версии 15.6(3)M, Cisco ещё больше упростила модель, отказавшись от выпуска T-релизов[85][91]. С этого момента в ветке 15 M&T стали выходить только M-релизы и их последующие обновления[85].

Нумерация версий IOS XE

Для современной операционной системы Cisco IOS XE была внедрена более предсказуемая модель выпуска обновлений. Релизы делятся на два типа по сроку поддержки[92]:

  • Standard-Support Release (Стандартный релиз) — имеет жизненный цикл поддержки 18 месяцев.
  • Extended-Support Release (Релиз с расширенной поддержкой) — обеспечивает поддержку в течение 48 месяцев.

При этом действует правило, согласно которому каждый третий релиз (например, 3.10S, 3.13S, 3.16S) является релизом с расширенной поддержкой, что позволяет планировать обновления на долгосрочную перспективу[92].

С выходом унифицированной версии IOS XE 16.x в 2016 году была также введена практика присвоения кодовых имён для крупных веток релизов. Например, релизы с 16.1.x по 16.3.x носили имя «Denali», а следующие за ними (16.4.x, 16.5.x, 16.6.x) получили название «Everest».

Безопасность и уязвимости

Cisco IOS является проприетарным программным обеспечением, и её исходный код представляет собой коммерческую тайну. Публичный репозиторий исходного кода отсутствует[93]. В истории были зафиксированы случаи нелегальных утечек частей кода, например, в 2004 году[94].

Хранение паролей

Для ряда задач (например, аутентификация CHAP) IOS хранит пароли в конфигурации в виде слабо зашифрованных строк типа 7, например: Router(config)#username jdoe password 7 0832585B1910010713181F. Этот механизм предназначен лишь для противодействия просмотру паролей с экрана (shoulder-surfing), но небезопасен — пароли легко расшифровываются с помощью ПО наподобие "getpass" (известно с 1995 года) или современных утилит, например "ios7crypt"[95]. Тем не менее, эти программы не способны расшифровать пароли типа 5 или установленные с помощью enable secret: при этом применяется соли и хешируются по алгоритму MD5[96].

Со временем алгоритмы хеширования паролей типов 5 и 7 были признаны устаревшими и уязвимыми. Начиная с версии IOS XE 16.9.1, система выводит предупреждение об их использовании[97]. Для замены были введены более стойкие типы хеширования[98]:

  • Тип 9 (scrypt) — использует алгоритм scrypt, который считается наиболее надёжным, поскольку он требователен к памяти и устойчив к атакам с использованием GPU и ASIC[99].
  • Тип 8 (SHA-256) — использует алгоритм PBKDF2 с хешем SHA-2 (SHA-256), 80-битной солью и 20 000 итераций[98].

Для настройки используется команда enable algorithm-type [scrypt | sha256] secret пароль[100]. В 64-битной ОС IOS XR поддержка паролей типов 8 и 9 была добавлена начиная с релиза 7.0.1[101].

Cisco рекомендует для всех устройств с IOS внедрять модель безопасности AAA (Authentication, Authorization, Accounting), используя при этом базы RADIUS, TACACS+ или локальные учётные записи (на случай аварийных ситуаций)[102].

На конференции Black Hat Briefings в июле 2005 года Майкл Линн (IBM Internet Security Systems) представил исследование критической уязвимости IOS[103]. Cisco уже выпустила патч, но просила не раскрывать подробностей[104]. Компания подала в суд; разбирательство завершилось заключением о неразглашении[105].

Ветка IOS XR

Для устройств Cisco, требующих высокой доступности (например, Cisco CRS-1), архитектура монолитного ядра стала критической проблемой. Кроме этого, у конкурентов (например, Juniper Junos OS) появились системы, лишённые этих ограничений[106]. Ответом Cisco стала разработка нового поколения ОС, обладающей модульной архитектурой, защитой памяти между процессами, «лёгкими» потоками, вытесняющей многозадачностью и возможностью отдельной перезагрузки процессов. Первые версии IOS XR построены на микроядре QNX; значительная часть исходников IOS была переработана с учетом модульности. С 2005 года IOS XR внедряется в серии Cisco 12000 — на аппаратной базе Cisco CRS-1 для магистральных сетей. Начиная с версии 6.0.0, выпущенной в декабре 2015 года, в роли ядра используется 64-битная версия Linux вместо QNX. Одними из первых устройств, получивших поддержку новой ОС, стали маршрутизаторы серии Cisco NCS 5500. Были также попытки внедрить модульную архитектуру и в классический IOS (Catalyst 6500), но они получили ограниченное распространение и были прекращены из-за высоких требований к ресурсам и потери стабильности.

Примечания

  1. https://www.cisco.com/c/en/us/td/docs/ios-xml/ios/15-8m/release/notes/15-8-3-m-rel-notes.html (англ.) — 2019.
  2. 1 2 3 4 5 К 25-летию компании Cisco: история операционной системы IOS. TAdviser. Дата обращения: 3 ноября 2025.
  3. Cisco IOS. StudFiles. Дата обращения: 3 ноября 2025.
  4. Что такое Cisco IOS XE. Merionet. Дата обращения: 3 ноября 2025. Архивировано 9 сентября 2025 года.
  5. 1 2 Cisco Router Repair Revives Piece Of Internet History. Hackaday. Дата обращения: 3 ноября 2025. Архивировано 26 августа 2025 года.
  6. История компании Cisco. Habr. Дата обращения: 3 ноября 2025.
  7. Cisco’s First Router: Revisiting the Venerable AGS in 2021. designated-router.com. Дата обращения: 3 ноября 2025. Архивировано 4 ноября 2024 года.
  8. Cisco Systems Completes Acquisition of Kalpana. Cisco Systems (7 декабря 1994). Дата обращения: 3 ноября 2025. Архивировано 20 января 2025 года.
  9. Cisco to Acquire Kalpana, Leading Ethernet Switching Company. Cisco Systems (24 октября 1994). Дата обращения: 3 ноября 2025. Архивировано 2 ноября 2024 года.
  10. 1 2 3 Comparison CatOS and Cisco IOS. RouteXP. Дата обращения: 3 ноября 2025. Архивировано 6 февраля 2025 года.
  11. Cisco Catalyst 6500 Series Switches With IOS Software Modularity Make IT Managers More Productive and Further Improve Network Reliability. Cisco Systems (29 августа 2005). Дата обращения: 3 ноября 2025. Архивировано 6 августа 2025 года.
  12. Comparison: Cisco Catalyst and Cisco IOS Operating Systems. Cisco Community. Дата обращения: 3 ноября 2025. Архивировано 2 апреля 2025 года.
  13. Cisco IOS v.12.4(15)T Advanced Security. American Tech Depot. Дата обращения: 3 ноября 2025.
  14. Cisco Router Web Setup Default Configuration Vulnerability. Cisco Systems (12 июля 2006). Дата обращения: 3 ноября 2025. Архивировано 9 сентября 2024 года.
  15. CVE-2007-1257. CVE. Дата обращения: 3 ноября 2025. Архивировано 16 апреля 2025 года.
  16. Cisco IOS XE Architecture Deep Dive (pdf). Cisco Live. Дата обращения: 3 ноября 2025. Архивировано 2 августа 2025 года.
  17. Cisco IOS Multiple Protocol Label Switching (MPLS) DoS. SecurityLab.ru (25 сентября 2008). Дата обращения: 3 ноября 2025.
  18. Обзор, настройка и поиск неисправностей функций безопасности маршрутизаторов Cisco ISR G2 (pdf). Technon. Дата обращения: 3 ноября 2025. Архивировано 24 июня 2025 года.
  19. An Introduction to Cisco IOS Version 15. CiscoZine. Дата обращения: 3 ноября 2025. Архивировано 10 сентября 2024 года.
  20. Cisco Group Encrypted Transport Virtual Private Network (GET VPN). Anticisco.ru (10 февраля 2010). Дата обращения: 3 ноября 2025. Архивировано 6 декабря 2024 года.
  21. Cisco TrustSec: безопасность на основе ролей. Компьютерные вести (12 декабря 2007). Дата обращения: 3 ноября 2025. Архивировано 22 апреля 2024 года.
  22. Cisco patches IOS in major rollout, releases 10 security advisories. ComputerWeekly.com (29 сентября 2011). Дата обращения: 3 ноября 2025. Архивировано 26 апреля 2025 года.
  23. Cisco IOS Software Security Advisory Bundled Publication. seclists.org (28 марта 2012). Дата обращения: 3 ноября 2025. Архивировано 15 августа 2025 года.
  24. Cisco Trustworthy Technologies Data Sheet Updated. Firmwaresecurity.com (31 марта 2019). Дата обращения: 3 ноября 2025. Архивировано 9 октября 2025 года.
  25. Next-Generation Encryption. Zones. Дата обращения: 3 ноября 2025.
  26. Cisco Evolves the Router into an Application Delivery Platform. Cisco Systems (26 марта 2013). Дата обращения: 3 ноября 2025. Архивировано 12 июля 2024 года.
  27. Cisco Fixes DoS Vulnerabilities in IOS Software. SecurityWeek (26 марта 2015). Дата обращения: 3 ноября 2025. Архивировано 20 марта 2025 года.
  28. Announcing the first Cisco IOS XE Software Security Advisory Bundled Publication. Cisco Blogs (25 марта 2015). Дата обращения: 3 ноября 2025. Архивировано 14 августа 2025 года.
  29. All you need to know about Cisco IOS XE 16.x releases. Cisco Community (12 сентября 2018). Дата обращения: 3 ноября 2025. Архивировано 12 ноября 2020 года.
  30. 1 2 The Growing Catalyst 9000 Family. Cisco Community (16 января 2019). Дата обращения: 3 ноября 2025. Архивировано 19 марта 2025 года.
  31. Cisco’s 2013: A Look Back at Its Major Moves. Router-switch.com (27 декабря 2013). Дата обращения: 3 ноября 2025. Архивировано 10 августа 2025 года.
  32. IOS XE 16.9 programmability cg. Scribd. Дата обращения: 3 ноября 2025. Архивировано 6 октября 2025 года.
  33. Cisco IOS and IOS XE Software Security Advisory Bundled Publication, March 2018. Cisco Systems (28 марта 2018). Дата обращения: 3 ноября 2025. Архивировано 6 сентября 2025 года.
  34. Cisco IOS XE 16.10.1: The Catalyst Update. Cisco Community (30 января 2019). Дата обращения: 3 ноября 2025. Архивировано 13 марта 2025 года.
  35. Cisco IOS XR7. TAdviser. Дата обращения: 3 ноября 2025.
  36. Обновленное программное обеспечение IOS XR от Cisco. Netstore (12 декабря 2019). Дата обращения: 3 ноября 2025. Архивировано 3 августа 2024 года.
  37. Cisco IOS XE Amsterdam 17.2.1r Enterprise Routing Release Update. Cisco Community (21 апреля 2020). Дата обращения: 3 ноября 2025. Архивировано 27 февраля 2025 года.
  38. Cisco IOS XE 17.3.x (pdf). Cisco Systems. Дата обращения: 3 ноября 2025.
  39. Cisco IOS XR Software Security Advisory. Cisco (28 октября 2020). Дата обращения: 3 ноября 2025.
  40. 1 2 Cisco End of Life (EOL) & End of Service Life (EOSL). Park Place Technologies. Дата обращения: 3 ноября 2025. Архивировано 20 апреля 2025 года.
  41. What’s New: IOS-XE 17.7 Routing Release Update. Cisco Community (15 декабря 2021). Дата обращения: 3 ноября 2025. Архивировано 2 марта 2025 года.
  42. IOS-XR 7.3.1 Innovations. xrdocs.io. Дата обращения: 3 ноября 2025. Архивировано 7 июля 2025 года.
  43. What’s New: IOS-XE 17.8 Routing Release Update. Cisco Community (27 апреля 2022). Дата обращения: 3 ноября 2025. Архивировано 21 мая 2022 года.
  44. Cisco's September patch day: bugs swarm in IOS XE. iTnews (29 сентября 2022). Дата обращения: 3 ноября 2025. Архивировано 16 июня 2025 года.
  45. Cisco Ios Xr 7.4.1. CVE Details. Дата обращения: 3 ноября 2025.
  46. Active exploitation of Cisco IOS XE Software Web UI vulnerability. Cisco Talos (16 октября 2023). Дата обращения: 3 ноября 2025. Архивировано 10 июля 2025 года.
  47. Cisco Networking Catalyst 9000 Switches (pdf). Connection. Дата обращения: 3 ноября 2025.
  48. Cisco экстренно устранила 0-day уязвимость в IOS XE, которой уже пользуются хакеры. ServerNews (23 октября 2023). Дата обращения: 3 ноября 2025. Архивировано 15 мая 2025 года.
  49. Хакеры продолжают заражать маршрутизаторы Cisco через старую уязвимость. SecurityLab.ru (21 октября 2025). Дата обращения: 3 ноября 2025.
  50. Multiple Vulnerabilities in Cisco IOS and IOS XE Software. Cyber Security Agency of Singapore (28 марта 2024). Дата обращения: 3 ноября 2025. Архивировано 19 апреля 2025 года.
  51. Severe Vulnerabilities in Cisco IOS & IOS XE Addressed. SOCRadar (26 сентября 2024). Дата обращения: 3 ноября 2025. Архивировано 12 октября 2024 года.
  52. Cisco Live US 2025 Key Announcements. Scribd. Дата обращения: 3 ноября 2025.
  53. Key Takeaways From Cisco Live 2025: Cisco’s Big Bets For Unified Security And AI. Forrester (5 июня 2025). Дата обращения: 3 ноября 2025. Архивировано 29 сентября 2025 года.
  54. Cisco IOS и IOS XE: Уязвимость нулевого дня в SNMP (CVE-2025-20352). CyberSecureFox (2 октября 2025). Дата обращения: 3 ноября 2025.
  55. Cisco Trusted Platforms: Building a Secure Foundation for Your Network. Cisco Blogs. Дата обращения: 3 ноября 2025. Архивировано 25 сентября 2025 года.
  56. Cisco IOS Software Product Lifecycle Dates & Milestones. Scribd. Дата обращения: 3 ноября 2025. Архивировано 20 августа 2025 года.
  57. CLI Language Versions. Cisco Community. Дата обращения: 3 ноября 2025. Архивировано 2 апреля 2025 года.
  58. Tcl для Cisco IOS в простых примерах. temofeev.ru. Дата обращения: 3 ноября 2025.
  59. TCL для Cisco IOS. Примеры скриптов для автоматизации настроек. Sedicomm (11 декабря 2020). Дата обращения: 3 ноября 2025. Архивировано 10 июля 2025 года.
  60. A Guide to On-box Python Scripting. xrdocs.io. Дата обращения: 3 ноября 2025.
  61. Guest Shell: Built-in Linux Container on Cisco IOS-XE. Brezular (1 июня 2020). Дата обращения: 3 ноября 2025. Архивировано 1 июня 2022 года.
  62. cisco-ios-xe-programmability-lab-day0-guestshell-guestshare. GitHub. Дата обращения: 3 ноября 2025.
  63. Exec Scripts Overview. Cisco DevNet. Дата обращения: 3 ноября 2025. Архивировано 19 июля 2024 года.
  64. xr-python-scripts. GitHub. Дата обращения: 3 ноября 2025. Архивировано 27 марта 2025 года.
  65. Configuration Fundamentals Configuration Guide, Cisco IOS Release 15M&T. Cisco. Дата обращения: 14 мая 2022. Архивировано 15 мая 2022 года.
  66. 1 2 What are the key differences between Cisco IOS and IOS-XE? Packet Coders. Дата обращения: 3 ноября 2025. Архивировано 10 июля 2025 года.
  67. Про операционную систему Cisco IOS. Merionet. Дата обращения: 3 ноября 2025. Архивировано 24 января 2025 года.
  68. Differences between IOS and IOS-XE. nocsma.wordpress.com (27 февраля 2018). Дата обращения: 3 ноября 2025.
  69. Introduction to Cisco IOS-XE. NetworkLessons.com. Дата обращения: 3 ноября 2025.
  70. Shortname for a TwentyFiveGigE on the show interface status. Cisco Community (21 марта 2019). Дата обращения: 3 ноября 2025. Архивировано 12 марта 2025 года.
  71. Cisco Port Abbreviations. reece.ai. Дата обращения: 3 ноября 2025.
  72. New Cisco 800G Innovations Help to Supercharge the Internet for the Future. Cisco Systems (6 марта 2023). Дата обращения: 3 ноября 2025. Архивировано 29 июня 2025 года.
  73. 1 2 3 IOS Licensing. NetworkLessons.com. Дата обращения: 3 ноября 2025. Архивировано 8 августа 2025 года.
  74. Обновление прошивки (IOS) на Cisco. xCAT. Дата обращения: 3 ноября 2025. Архивировано 6 октября 2025 года.
  75. Обновление Cisco IOS с флешки. Quaded. Дата обращения: 3 ноября 2025. Архивировано 7 декабря 2024 года.
  76. 1 2 Licensing Information for ISR G2. Cisco Community (15 февраля 2011). Дата обращения: 3 ноября 2025. Архивировано 4 марта 2025 года.
  77. Важное объявление касаемо Cisco IOS XE 16.9.1. Т-Маш (12 сентября 2018). Дата обращения: 3 ноября 2025. Архивировано 22 июня 2025 года.
  78. Cisco Smart Licensing Explained. Router-switch.com. Дата обращения: 3 ноября 2025.
  79. Лицензирование Cisco Smart Licensing в вопросах и ответах. Netstore. Дата обращения: 3 ноября 2025. Архивировано 10 апреля 2021 года.
  80. Smart License Using Policy (SLP). Cisco Community (13 ноября 2020). Дата обращения: 3 ноября 2025. Архивировано 22 сентября 2022 года.
  81. Подробная документация по резервированию лицензий Cisco. ITMALL.SALE. Дата обращения: 3 ноября 2025.
  82. 1 2 Cisco DNA Essentials vs. DNA Advantage. Edgeium. Дата обращения: 3 ноября 2025. Архивировано 18 апреля 2025 года.
  83. Как выбрать лицензию для коммутатора Cisco. Квантум. Дата обращения: 3 ноября 2025. Архивировано 4 сентября 2025 года.
  84. Cisco DNA for Access Wireless and Switching Subscription (pdf). Cloud Managed. Дата обращения: 3 ноября 2025. Архивировано 2 августа 2025 года.
  85. 1 2 3 4 Cisco IOS and NX-OS Software Reference Guide. Cisco. Дата обращения: 3 ноября 2025. Архивировано 13 июля 2025 года.
  86. Версии Cisco IOS (Cisco IOS Versions). CiscoTips. Дата обращения: 3 ноября 2025. Архивировано 18 мая 2025 года.
  87. Cisco IOS Versions and Naming Overview. Router-switch.com (20 августа 2013). Дата обращения: 3 ноября 2025. Архивировано 19 июля 2025 года.
  88. Версии Cisco IOS. Microsin. Дата обращения: 3 ноября 2025. Архивировано 16 июня 2025 года.
  89. 1 2 9.1.1.5 Cisco IOS 15. jarkom.unama.ac.id. Дата обращения: 3 ноября 2025.
  90. Cisco IOS Naming Convention. CCNACourseComplete. Дата обращения: 3 ноября 2025. Архивировано 22 ноября 2023 года.
  91. STL-TR-2018-02 (pdf). htwsaar.de. Дата обращения: 3 ноября 2025.
  92. 1 2 cisco-ios-xe-software-support-timeline-starting. studylib.net. Дата обращения: 3 ноября 2025. Архивировано 15 августа 2025 года.
  93. Cisco Data Leaked By Hacker. Forbes. Дата обращения: 3 ноября 2025. Архивировано 30 мая 2025 года.
  94. Cisco probes source code leak. iTnews (17 мая 2004). Дата обращения: 3 ноября 2025. Архивировано 14 июля 2025 года.
  95. ios7crypt. GitHub. Дата обращения: 19 сентября 2012. Архивировано 25 марта 2017 года.
  96. Cisco IOS Password Encryption Facts. Дата обращения: 12 сентября 2017. Архивировано 13 сентября 2017 года.
  97. Why you should be using scrypt for Cisco router password storage. Cisco Community. Дата обращения: 3 ноября 2025. Архивировано 4 октября 2022 года.
  98. 1 2 Cisco Password Types Best Practices (pdf). Cybersecurity and Infrastructure Security Agency (17 февраля 2022). Дата обращения: 3 ноября 2025. Архивировано 28 сентября 2025 года.
  99. Upgrading Your Cisco IOS Passwords. thisbridgeistheroot.com. Дата обращения: 3 ноября 2025. Архивировано 15 февраля 2025 года.
  100. How to configure level 9 enable secret on IOS-XE. Cisco Community. Дата обращения: 3 ноября 2025. Архивировано 25 февраля 2025 года.
  101. Password, AAA, and Security Command Reference for Cisco NCS 5500 Series Routers, IOS XR Release 7.0.x (pdf). Cisco. Дата обращения: 3 ноября 2025.
  102. Cisco 500-052 Test. Дата обращения: 21 февраля 2017. Архивировано 22 февраля 2017 года.
  103. Kim Zetter (2005-08-01). “Router Flaw Is a Ticking Bomb”. Wired. Архивировано из оригинала 2014-09-04. Дата обращения 2014-08-09. Используется устаревший параметр |url-status= (справка)
  104. Kim Zetter (2005-07-27). “Cisco Security Hole a Whopper”. Wired. Архивировано из оригинала 2014-09-05. Дата обращения 2014-08-09. Используется устаревший параметр |url-status= (справка)
  105. Statement on Federal District Court Injunction (Black Hat Presentation), Press release, Cisco Systems (28 июля 2005). Архивировано 5 февраля 2012 года. Дата обращения: 18 июня 2013.
  106. Junos OS. Juniper Networks. Дата обращения: 10 апреля 2024. Архивировано 6 апреля 2024 года.