Есть ли способ запустить скрипт команд Cisco IOS? - PullRequest
0 голосов
/ 12 апреля 2020

сценарий использования: Создание VPN на AWS для маршрутизатора Cisco CSR v1000, генерация последовательности команд на основе сгенерированных AWS значений, заменяющих токены в шаблоне, настройка маршрутизатора, затем сохраните конфигурацию запуска - все полностью автоматизированным способом с ноутбука разработчика.

То, что я всегда делал сам, чтобы настроить маршрутизатор из набора команд, которые мне нужно применить по порядку, - вот что Я вижу в Интернете, когда я ищу этот вопрос - я s sh в маршрутизатор, затем «config t», а затем я вручную вставляю команды. Я не хочу выполнять это действие вырезания и вставки вручную - я хочу запускать операторы либо на самом маршрутизаторе, либо на моем ноутбуке, чтобы применять команды, которые находятся в скрипте, к конфигурации маршрутизатора - ВМЕСТО от необходимости вырезать и вставить их.

Я думал, что перечислю то, что выяснил здесь, так как было удивительно трудно найти способ сделать даже это так просто и в одном месте. Применяются следующие допущения:

  • У меня есть файл ~ / .ssh / config, который упрощает то, что мне нужно указать в командной строке
  • Это предоставляет пользователя как пользователя ec2, и указывает правильный ключ S SH.
  • Я использую агент s sh, который предоставляет для меня ключевую фразу ключа S SH
  • Полное доменное имя маршрутизатора для этого Например, csr01.mydomain.com
  • Набор команд, которые я хочу выполнить, находится в csr01-apply-config.cfg
  • Я хочу загрузить этот файл в маршрутизатор, а затем применить все команды в идеале в файле одним действием, так как этот скрипт может потребовать внесения изменений, которые могут временно нарушить подключение
  • Я хочу сохранить все такие файлы приложений в папке fla sh: каталог apply-configs

Итак, вот что у меня есть - пропустить один ключевой шаг:

  1. Список файлов в fla sh: файловая система

    # ssh csr01.mydomain.com dir flash:
    
  2. Список файлов в nvram: filesystem

    # ssh csr01.mydomain.com dir nvram:
    
  3. Создать каталог для хранения загруженных файлов конфигурации применяются
    # ssh csr01.mydomain.com mkdir flash:apply-configs
    
  4. Загрузить созданный файл применения конфигурации
    # scp csr01-apply-config.cfg csr01.mydomain.com:flash:/apply-configs/csr01-apply-config.cfg
    
  5. Подтвердить, что загруженный файл существует
    # ssh csr01.mydomain.com dir flash:apply-configs
    
  6. Применить команды
    >>>>>>>>>> Как я могу запустить команды в файле здесь <<<<<<<<<< </strong>
    Например, что-то вроде:

    # run flash:/apply-configs/csr01-apply-config.cfg
    

    Кажется, что это должно быть просто, но я не могу найти какое-либо описание, если это возможно, и если да, то какие команды использовать

  7. Показать запущенную конфигурацию

    # ssh csr01.mydomain.com show run
    
  8. Записать запущенную конфигурацию в память
    # ssh csr01.mydomain.com write mem
    
  9. Скопировать конфигурацию запуска обратно на ноутбук
    # scp csr01.mydomain.com:nvram:startup-config csr01-startup-config-$(date +%Y%m%d-%H%M).cfg
    
...