Програмування, автоматизація та інформація Cisco IOS


11

Мене плутає Cisco IOS, і у мене є питання з цього приводу.

Cisco IOS використовується в маршрутизаторах та інших пристроях.

Чи можна написати код (наприклад, PHP) для цього?

Якщо це можливо, якою мовою я можу користуватися?

Мене бентежить не те, як працювати з Cisco IOS; йдеться про те, чи можу я розробити та змінити свій маршрутизатор або інші пристрої відповідно до того, що мені потрібно для мережі чи ні?

Відповіді:


18
  1. Практично кожна система Note 1 Cisco IOS, що працює принаймні IOS 12.2, має вбудовану програмованість оболонки tcl . Ви можете зберігати сценарії tcl у спалах та запускати їх.

  2. Cisco IOS також має легке середовище програмування під назвою EEM (Embedded Event Manager). Події EEM можуть бути ініційовані різноманітними входами, такими як пакети на певному порту (через Netflow), повідомлення журналу або інтерфейс вгору / вниз. Подумайте про EEM як підмножину можливостей tclash в IOS; EEM забирає менше програми, ніж програмування в TCL, але ви також отримуєте плямову підтримку функцій залежно від суміші IOS, з якою ви маєте справу. EEM можна запускати за графіком кронів, якщо це відповідає вашим потребам. В нижній частині цієї відповіді я включив приклад сценарію EEM; майте на увазі, що EEM найкраще підходить для малих номерів висловлювань "if-this, do-that" ..., коли ви хочете почати визначати функції та інші, просто кусайте кулю та використовуйте tclsh.

  3. Нові продукти Cisco підтримують спеціальний набір консервованих API SDN, які є ширшими, ніж я можу пояснити, під час набору тексту на мобільному телефоні; Один із прикладів цієї родини включає Cisco APIC , але це просто подряпини за поверхнею того, що вони є в наявності.

  4. Буду звільнений, якби я не зазначив, що більшість сценаріїв Cisco, зроблених за останні 20 років, проводилися за допомогою екранування екрана , snmp та (у ці дні) NETCONF. Все, що ви можете зробити з CLI, можна автоматизувати за допомогою екранування екрана; Я провів велику частину своєї кар’єри, роблячи саме це. Екрани скребків зазвичай розміщують свої сценарії на зовнішній системі Linux і підключаються до маршрутизатора зі зброєю за власним вибором ... зазвичай це одна з цих мов:

  5. Нарешті, новіші продукти Cisco Nexus мають API Python (такий, як цей для Nexus 9K); API python, як правило, легше мати справу, ніж API TCL, але на даний момент ви обмежені в сім'ї Nexus.


Примітка 1 Єдиним мені відомим винятком є ​​Cisco 3550, якого немає tclshв 12.2 .

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.