Как я могу ускорить ввод CLI в Cisco IOS, используя ярлыки?

10

Я знаю, что мы можем использовать автозаполнение (клавиша табуляции) и сокращенные команды (такие как sh ip int bri), чтобы ускорить ввод текста.

Тем не менее, я все еще не удовлетворен набором цепочек шифрования, таких как sh ip dh sn bi | i 20.12for show ip dhcp snooping binding | include 20.12.

Можно ли определить ярлыки для часто используемых последовательностей команд и как?

Стефан
источник
Если вы знаете, что печатаете, вы будете думать show ip dhcp snooping...при вводе. sh ip dh sn... Если вы отправляете это кому-то по электронной почте, по крайней мере, сделайте аббревиатуры очевидными (например, snoopvs sn). Я предпочитаю не сокращать в этом случае. ИМХО, псевдонимы хороши, когда инженеры развертывают конфиги для тех, кто не знаком с Cisco, но которые все еще должны увидеть полезный вывод. Псевдонимы для опытных людей просто делают их ленивыми. (Опять же, полностью мое мнение ...)
Тара
1
Научиться печатать быстрее - один из вариантов. ;-)
generalnetworkerror
1
@generalnetworkerror Мне часто приходится использовать насыщенные спутниковые соединения с низкой пропускной способностью с задержкой 800 мс. Меньше нажатий клавиш будет вариант, набирая быстрее не очень (хотя я быстро).
Стефан
Используете ли вы алгоритм Nagle по этому каналу с высокой задержкой? "Router (config) # service nagle"
generalnetworkerror
@generalnetworkerror Очень хороший момент! Я не использую Nagle, но везде есть WAAS для оптимизации и сжатия TCP.
Стефан

Ответы:

17

Мы можем использовать alias команду в глобальном режиме conf:

alias <mode> <command-alias> <original-command>

<mode>является одним из многих режимов команд IOS . Если вам это нужно в разных режимах, вы должны вызывать его для каждого типа, alias ?чтобы получить длинный список режимов.

Пример проверки IP-адреса, отслеживаемого по протоколу DHCP, введите глобальный режим conf

alias exec snoop show ip dhcp snooping binding | include

Теперь вы можете просто напечатать, snoop 172.16.20.12чтобы проверить этот IP или snoop 801проверить все IP в VLAN 801, например. Сделайте то же самое для show mac-address-table | includeи вы быстрее в поиске и устранении неполадок.

Дальнейшие советы:

  • документируйте ваши псевдонимы для вас и ваших коллег
  • sh aliases показывает ваши псевдонимы плюс предопределенные
  • в то время как no alias <mode> <command>можно угадать для удаления псевдонима, no alias <mode>удаляет псевдонимы для полного режима - так что вы можете очистить несколько одновременно, default alias <mode>работает аналогично, как и ожидалось
  • если вы решили использовать псевдонимы, разверните их один раз везде, где они могут вам понадобиться
  • такие инструменты, как Cisco Prime, могут помочь в развертывании
  • не забывайте оригинальные команды ;-)
Стефан
источник
Лол, ты ответил на свой вопрос в ту же минуту, когда ты его написал? :) Архивирование знаний?
Bulki
@Bulki Обмен знаниями, создание значимого контента сайта на стадии бета-тестирования, поиск альтернативных решений. Что значит ваш "лол"?
Стефан
Что ж, мне смешно, когда ты видишь это, но я думаю, что важно сделать это действительно, чтобы иметь хорошую базу знаний для других людей :) Я был удивлен, я даже заметил это :) хорошие сообщения, кстати!
Bulki
6

Для сложных задач предлагаю посмотреть на TCL. Вы можете использовать TCL для создания сценариев, которые можно хранить и запускать на ваших устройствах IOS / Nexus, обеспечивая удивительную гибкость в сборе и отображении данных.

Хотя это не обязательно быстрее для простых задач, вы можете собирать и сопоставлять информацию из нескольких команд и переформатировать ее, как вам нравится. Он также может извлекать информацию из SNMP.

Если вы еще не изучили это, вы можете найти один такой документ здесь .

Изменить: я не добавил это, но, вероятно, должен был. Как только у вас есть сценарий TCL, вы можете использовать команду alias из великолепного ответа Стефана, чтобы создать более быстрый доступ к сценарию. Например:

alias exec mac-lookup tclsh flash:mac-lookup.tcl
YLearn
источник
Также хорошее предложение, но не отвечает на вопрос ОП. :-)
Джон Дженсен
Хотя это и не ярлык в смысле псевдонима, это ярлык, так как он может выполнять множество действий и отображать нужные вам данные за меньшее время, чем требуется для ввода всех этих команд. Например, если вы дали ему MAC-адрес, вы могли получить обратно интерфейс, к которому он был подключен, сколько других устройств было подключено к этому порту, счетчики интерфейса этого интерфейса, любые записи DHCP, отслеживающие этот MAC, и т. Д. , Варианты настолько безграничны, насколько вы хотите, чтобы они были с TCL. Псевдонимы, хотя и отличные, ограничены по объему и тому, сколько работы / печати они могут сэкономить.
YLearn
Я ввел части Q. «часто используемые последовательности команд» и «ускорение ввода в CLI». Поскольку для многих общих задач требуется выполнение последовательности или серии команд, в этих случаях лучше использовать TCL для «быстрого вызова». "
YLearn
Согласился с @YLearn; иногда лучший (не обязательно лучший) ответ добавляет большую ценность для ОП и других, которые читают это, чтобы понять все варианты улучшений CLI. Новички OP могут даже не знать о TCL, но это может быть именно то, что они ищут.
generalnetworkerror
Мой аргумент conter - это количество усилий, которое требуется при написании сценария Tcl против создания псевдонима, и не у всех есть свободное время (или желание) для изучения синтаксиса Tcl. В ответ на вопрос ОП я вижу полезность указания на опцию Tcl.
Джон Дженсен
2

Лично я считаю, что псевдонимы - плохая идея. Вы никогда не знаете, когда будете входить на устройство, для которого не определен ваш любимый псевдоним. Затем вам нужно помнить, что вы печатаете с начала снова.

Лучше всего сделать? Просто продолжайте печатать. Со временем ваша скорость набора текста улучшится.

mellowd
источник
У меня нет проблем с использованием псевдонимов. Мое эмпирическое правило заключается в том, что их следует использовать для повышения эффективности работы, а не для упрощения вещей, которых я не знаю / не понимаю. Если вы можете сделать это без псевдонима, прекрасно, если нет, убедитесь, что вы понимаете, что делает псевдоним.
YLearn
1

Если для доступа к telnet / ssh / console вы используете securecrt (и если не хотите слишком много писать скрипты оболочки), вы всегда можете «записать» свои команды, у него есть опция, а затем вы можете просто выбрать записанный скрипт в инструментах Я верю что

alex_da_gr8
источник
0

В зависимости от того, что вы делаете, лучшим вариантом может быть написание shell, ожидаемых или других сценариев для выполнения ваших общих задач.

Для базового устранения неполадок даже лучше, чтобы моя система оповещения уже выполняла часть сбора информации.

Комбинируя такие инструменты, как Notch , с соответствующими инструментами, такими как «Mr CLI», можно очень легко создавать действительно мощные инструменты, помогая вам сегодня, и легкий путь для дальнейшего улучшения вещей завтра, если не полностью автоматизировать, то вы сможете перенести задачи в службу поддержки, которой может быть предоставлено тривиальное веб-приложение, которое выполняет основные шаги и помогает быстрее решать проблемы пользователей.

LapTop006
источник
В то время как все это в основном точно, это все еще не отвечает на вопрос OP; это в основном создает моменты для обсуждения, которых мы должны избегать.
Джон Дженсен