Как стать автором
Обновить

Курс молодого бойца: тонкости настроек маршрутизаторов и коммутаторов

Время на прочтение 3 мин
Количество просмотров 25K
Будем считать, что вы уже активно осваиваете хитрости настройки через консоль. Пришло время рассказать ещё несколько тонкостей. О чём имеет смысл подумать при настройке маршрутизаторов и коммутаторов cisco.

Тонкость 1. Аккуратность.
Часто возникает задача что-нибудь добавить в текущую конфигурацию. Наверняка вы знаете, что многие элементы пишутся отдельно, а отдельно применяются (на интерфейс, ко всей железке и т.д.). Будьте крайне осторожны, изменяя настройки таких технологий, как PBR (route-map), QoS (policy-map), IPSec (crypto map), NAT. Лучше всего сначала снять их с использования, потом изменить, потом повесить снова. Связано это с тем, что все изменения вы вносите сразу же в состояние железки. Иногда то, что уже работает (например, подгружено в оперативку) конфликтует с новым конфигом. Не редки ситуации, когда железка уходит в перезагрузку после попытки изменения конфига.

Пример: пусть у нас есть route-map, примененный на интерфейс. Пусть нам надо его изменить. Наиболее «чистый» способ такой:

1. Копируем из конфига существующий route-map
2. Вставляем его в блокнот.
3. Меняем ему имя в блокноте
4. Меняем сам route-map
* Обязательно проверьте его на логику: будет ли он делать то, что нужно
5. Копируем его из блокнота
6. Вставляем в конфиг.
* Он ещё никуда не применен, т.к. с другим именем, поэтому процедура безопасна
7. Применяем новый route-map на интерфейс

К сожалению, такую красивую процедуру делать обычно лень :)

Если политика безопасности требует, чтобы в конфиге все названия были каноническими, то можно дополнительно сделать так:

3А. Копируем route-map с новым именем
3Б. Вставляем в конфиг.
3В. Применяем route-map с новым именем

А измененному route-map оставляем старое, каноническое имя.Если нет возможности снять, например, crypto map (в этом случае упадут все туннели), а добавить новый абзац надо, то необходимо минимизировать время, в течение которого будет «недоделанный конфиг» (incomplete crypto map). Это происходит, если в абзаце не хватает одной или двух строчек из

match address
set transform-set
set peer

Для минимизации времени простоя вбейте необходимый кусок конфига crypto-map в блокноте и потом копи-пастом влейте его на циску.

2. Тонкость. Подстраховка.
Помните, что пока вы не набрали

copy running-config startup-config

или что тоже самое

wr

файл начальной конфигурации ещё старый. Поэтому, если всё поломалось, достаточно перезагрузить железяку. Дабы не бегать самому или не звонить на другой конец (офиса/города/планеты) есть технология «отложенной перезагрузки»

reload in

и перезагрузки в конкретное время

reload at

(о них упомянули в топике про консоль)

Отменить отложенную перезагрузку можно командой

reload cancel

3. Тонкость. Сохранение конфигов
Помните, что файл конфигурации — это просто текстовый файл. Можно скидывать файл настройки на tftp, ftp, http, flash и т.д. А можно просто забрать его к себе на рабочую машину. Например, включив в PuTTy (или другом терминальном клиенте) лог выводимого на экран, можно банально дать команду

sh run

и получить свой конфиг в файл лога.

*Хинт: sh run выводит конфиг поэкранно, разделяя полосочками. В файле эти полосочки тоже будут. Если лень эти полосочки потом убирать, можно дать команду

sh run | tee http:// 1.1.1.1

Команда tee копирует на экран то, что пытается отправить по http на 1.1.1.1. Отправить ей не удастся, но на экран вывалится весь конфиг без задержек и разделителей.

4. Тонкость. Имена.
Не секрет, что проще написать конфиг самому, чем разобраться в чужом :) Да и свои старые конфиги иногда трудно читать. Поэтому, чтобы помочь себе и другим рекомендую

— Все названия (ACL, route-map, crypto-map, transform-set и т.д.) писать большими буквами (ну или хотя бы с большой буквы). И имена желательно подбирать не слишком длинные (иначе замучаешься вбивать), но «говорящие». Приведу для примера любимую строчку из конфига ASA (в ней для внешнего NAT на внешнем интерфейсе применяется ACL с названием outside)

nat (outside) 10 access-list outside outside

Если использовать ACL большими буквами легко выделить, где ключевые слова, а где названия.

nat (outside) 10 access-list OUTSIDE outside

— СРАЗУ УДАЛЯТЬ НЕНУЖНОЕ! Потренировались, побились лбом, поэкспериментировали — мусор удалить! Уже через неделю трудно вспомнить, нужные это конструкции или нет.

— В новых IOS (начиная с версии 12.3) строчки поименованных ACL нумеруются через 10 (это легко увидеть, дав команду sh ip access-list). Поэтому можно удалить существующую или добавить новую строку между существующими, используя синтаксис (для примера добавим между 20 и 30 номером строки)

ip access-list ex NEW
25 permit tcp any any eq 25


— Если ACL всё-таки используются нумерованные (исторически, например), их можно изменять, используя синтаксис поименованных ACL

ip access-list ex 101
no 10
25 permit tcp host 1.1.1.1 any eq 25


Дерзайте и пусть Ваши циски работают устойчиво!
И ждите следующих серий :)

WBR, Сергей Фёдоров

ЗЫ Я немного правлю топик без уведомления по Вашим просьбам или сам, если мысль приходит в голову
Теги:
Хабы:
+31
Комментарии 40
Комментарии Комментарии 40

Публикации

Истории

Ближайшие события

Московский туристический хакатон
Дата 23 марта – 7 апреля
Место
Москва Онлайн
Геймтон «DatsEdenSpace» от DatsTeam
Дата 5 – 6 апреля
Время 17:00 – 20:00
Место
Онлайн