Маршрутизаторы : Маршрутизаторы Cisco серии 7500

Устранение неполадок при зависании маршрутизатора

15 ноября 2010 - Перевод, выполненный профессиональным переводчиком
Другие версии: PDF-версия:pdf | Машинный перевод (28 июля 2013) | Английский (2 августа 2006) | Отзыв

Требования

Для этого документа отсутствуют особые требования.

Используемые компоненты

Сведения, содержащиеся в данном документе, касаются следующих версий программного обеспечения и оборудования:

  • Все версии программного обеспечения Cisco IOS®

  • Все маршрутизаторы Cisco

Этот документ неприменим к коммутаторам Cisco Catalyst или платформам MGX.

Сведения, представленные в этом документе, были получены от устройств, работающих в специальной лабораторной среде. Все устройства, описанные в данном документе, были запущены с конфигурацией по умолчанию. При работе в действующей сети необходимо понимать последствия выполнения любой команды.

Условные обозначения

Дополнительные сведения об условных обозначениях см. в документе Технические рекомендации Cisco. Условные обозначения.

Консоль не реагирует

Проблемы с консолью возникают, когда маршрутизатор перестает реагировать на входные данные порта консоли. Если консоль не отвечает, это значит, что процесс с высоким приоритетом не дает драйверу консоли отреагировать на ввод.

Порядок поиска и устранения неполадок

  • Проверьте подключение кабеля.

  • Убедиться в том, что питание включено.

  • Проверьте состояние светодиодов маршрутизатора. Если все светодиодные индикаторы погасли, по всей вероятности причина в источнике питания маршрутизатора.

Если трафик по-прежнему проходит через маршрутизатор:

  • Отсоедините сетевые интерфейсы и проверьте, отвечает ли маршрутизатор. Часто маршрутизатор не обслуживает сеансы exec, т. к. предполагается выполнение более важных задач.

  • Можно также попытаться воспроизвести проблему с помощью следующих команд:

    Для устройств Cisco серий 7200 и 7500:

    configure terminal
    scheduler allocate 3000 1000
    ^Z
    

    Команда scheduler allocate гарантированно выделяет время ЦПУ для низкоприоритетных процессов. Она задает максимальное время, выделяемое для быстрой коммутации (3000 микросекунд [мкс]) и коммутации в контексте процесса (1000 мкс) на уровне отдельных контекстов прерывания сети.

    На всех других платформах используйте:

    configure terminal 
    scheduler interval 500 
    ^Z 
    

    Команда scheduler interval позволяет планировать низкоприоритетные процессы через каждые 500 мкс и, таким образом, позволяет набирать команды в консоли, даже если центральный процессор занят на 100%.

    Дополнительную информацию об этих командах можно найти в разделе Основные команды управления системой Справочника по командам программного обеспечения Cisco IOS.

  • Если консоль не отвечает из-за высокой загрузки ЦПУ маршрутизатора, то следует выявить и устранить причину высокой загрузки ЦПУ. Например, если источником проблем является IP-трафик с коммутацией в контексте процесса, то это будет заметно по процессу IP Input в выходных данных команды show processes cpu. В этом случае для дальнейшей диагностики неполадки необходимо собрать выходные данные команд show interfaces, show interfaces stat и, возможно, show processes. Чтобы исправить эту проблему, понадобится уменьшить объем IP-трафика, коммутируемого в контексте процесса. Дополнительную информацию см. в документе Устранение неполадок, связанных с высокой загрузкой процессора в маршрутизаторах Cisco.

  • Другая возможная причина наблюдаемого зависания – сбой при выделении памяти: либо маршрутизатор израсходовал всю доступную память, либо память фрагментирована на сегменты, не позволяющие отыскать доступный блок требуемого размера. Дополнительные сведения см. в документе Устранение неполадок, связанных с памятью.

  • Маршрутизатор может прекратить отвечать из-за проблем, связанных с безопасностью, типа интернет-червя или вируса. Вероятнее всего причиной является именно это, если в сети не было недавних изменений, например, обновление IOS маршрутизатора. Обычно для ограничения негативных последствий этой проблемы бывает достаточно добавить строки в списки доступа. На странице Сообщения и заметки по безопасности продуктов Cisco содержится информация по выявлению наиболее вероятных причин и конкретные способы их устранения.

    Дополнительную информацию см. в следующих разделах:

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

    В качестве обходного решения загрузите маршрутизатор в режиме ROMMON и пропустите сохраненную конфигурацию, а затем выполните настройку повторно. Выполните следующие действия:

    1. Подключите терминал или ПК с эмуляцией терминала к консольному порту маршрутизатора.

      Используйте следующие настройки терминала:

      • скорость передачи 9600 бод;

      • без контроля четности;

      • 8 бит данных;

      • 1 стоповый бит;

      • Без квитирования (flow control).

    2. Перезагрузите маршрутизатор и войдите в режим ROMMON, нажав клавишу BREAK на клавиатуре терминала в течение 60 секунд включения питания. Если последовательность клавиш BREAK не работает, см. другие комбинации клавиш в разделе Стандартные комбинации клавиш прерывания во время восстановления пароля.

    3. Установите для регистра конфигурации значение 0x2142 и выполните перезагрузку маршрутизатора. Для этого выполните команду confreg 0x2142 в приглашении rommon 1>. Затем наберите reset в приглашении rommon 2>. В результате маршрутизатор загрузится из флэш-памяти без загрузки конфигурации.

    4. Введите no после каждого вопроса настройки или нажмите клавиши CTRL+C, чтобы пропустить процедуру начальной настройки.

    5. Введите enable после подсказки Router>.

      Произойдет переход в разрешенный режим (enable) и появится приглашение Router#.

    6. Теперь можно сохранить пустую конфигурацию (с удалением всех команд). Введите команду copy running-config startup-config. Либо, если есть подозрение на конкретную команду, конфигурацию можно отредактировать. Для этого введите команду copy startup-config running-config. Затем введите configure terminal и внесите необходимые изменения.

    7. По завершении восстановите значение регистра конфигурации 0x2102. Для этого введите config-register 0x2102. Для сохранения изменений введите команду copy running-config startup-config.

Если трафик не проходит через маршрутизатор.

  • Если трафик перестал проходить через маршрутизатор, а консоль не реагирует, то может иметь место проблема с системой. Обычно это означает, что маршрутизатор вошел в бесконечный цикл или не может выполнить функцию. Почти всегда это вызвано ошибкой в программном обеспечении. Установите новейшую отладочную версию программного обеспечения Cisco IOS из используемой серии.

    Перед обращением в Центр технической поддержки Cisco получите трассировку стека ROM Monitor. Наличие трассировки стека по состоянию на момент возникновения проблемы позволяет определить, где именно в коде маршрутизатора произошел бесконечный цикл или зависание.

Трафик не проходит

Проблемы с трафиком имеют место тогда, когда консоль реагирует на действия, но трафик не проходит через маршрутизатор. В этом случае не реагирует часть трафика или отдельные интерфейсы. Это может быть вызвано различными причинами. Если такая проблема возникнет, данные можно получить из маршрутизатора через порт консоли. Причины этих проблем с трафиком различны – от ошибок на интерфейсах до программных и аппаратных проблем.

Возможные причины

  • Проблемы с маршрутизацией. – Изменения в топологии сети или конфигурации некоторых маршрутизаторов могут влиять на таблицы маршрутизации.

  • Высокая загруженность ЦПУ – Выполните команду show process cpu. Если центральный процессор загружен более чем на 95 %, производительность маршрутизатора может ухудшиться, и пакеты могут задерживаться или удаляться. Дополнительную информацию см. в документе Устранение неполадок, связанных с высокой загрузкой процессора на маршрутизаторах.

  • Отключенный интерфейс – один из интерфейсов маршрутизатора отключен. Это может быть вызвано множеством причин – от неправильной команды настройки до аппаратного сбоя интерфейса или кабеля. Если при выдаче команды show interfaces некоторые интерфейсы показываются как неактивные, то постарайтесь найти причину.

  • Невыгруженный интерфейс – это особый случай утечки буфера, приводящий к тому, что входящая очередь интерфейса переполняется, и интерфейс теряет возможность принимать пакеты. Перезагрузите маршрутизатор. При этом входящая очередь освобождается, и трафик восстанавливается до тех пор, пока очередь не заполнится снова. Подобная ситуация может происходить с интервалом от нескольких секунд до нескольких недель в зависимости от серьезности утечки.

    Самым простым способом выявления невыгруженных интерфейсов является выполнение команды show interfaces и поиск сообщений, похожих на следующее:

    Output queue 0/40, 0 drops; input queue 76/75, 27 drops 

    Дополнительные сведения и примеры см. в документе Поиск и устранение утечки буферов.

Трассировка стека в ROM Monitor

K-trace – процедура, используемая для получения трассировки стека для маршрутизатора с помощью ROM Monitor. В маршрутизаторах с более старым кодом ROM Monitor трассировка стека получается командой k. На маршрутизаторах с более новым кодом ROM Monitor также доступна команда stack.

Для получения трассировки стека от маршрутизатора, который не отвечает, выполните следующие операции.

  1. Включите последовательность BREAK. Для этого измените значение регистра конфигурации. Чтобы сигнал BREAK не игнорировался, нужно обнулить восьмой двоичный разряд. Значение 0x2002 срабатывает.

    Router#configure terminal
    Enter configuration commands, one per line.  End with CNTL/Z.
    Router(config)#config-register 0x2002
    
  2. Перезагрузите маршрутизатор, чтобы использовалось новое значение регистра конфигурации.

  3. Отправьте последовательность BREAK, когда проблема возникнет. Должно появиться приглашение ROM Monitor вида «>» или «rommon 1 >».

  4. Получите трассировку стека. Для этого соберите выходные данные команды k 50 или stack 50. Добавьте к команде 50, чтобы получить более развернутую трассировку стека.

  5. Для продолжения воспользуйтесь командой c или cont.

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

  7. Получив несколько трассировок стека, перезагрузите маршрутизатор, чтобы восстановить его из состояния зависания.

Ниже приведен пример выполнения этой процедуры.

User break detected at location 0x80af570
rommon 1 > k 50
Stack trace:
PC = 0x080af570
Frame 00: FP = 0x02004750    RA = 0x0813d1b4
Frame 01: FP = 0x02004810    RA = 0x0813a8b8
Frame 02: FP = 0x0200482c    RA = 0x08032000
Frame 03: FP = 0x0200483c    RA = 0x040005b0
Frame 04: FP = 0x02004b34    RA = 0x0401517a
Frame 05: FP = 0x02004bf0    RA = 0x04014d9c
Frame 06: FP = 0x02004c00    RA = 0x040023d0
Frame 07: FP = 0x02004c68    RA = 0x04002e9e
Frame 08: FP = 0x02004c78    RA = 0x040154fe
Frame 09: FP = 0x02004e68    RA = 0x04001fc0
Frame 10: FP = 0x02004f90    RA = 0x0400c41e
Frame 11: FP = 0x02004fa4    RA = 0x04000458
Suspect bogus FP = 0x00000000, aborting
rommon 2 > cont

В случае проблемы с системой эту процедуру следует повторить несколько раз, чтобы собрать несколько экземпляров трассировки стека.

Если маршрутизатор не отвечает, в большинстве случаев причиной этого являются ошибки программного обеспечения. В данном случае соберите как можно больше сведений, включая трассировку стека, перед тем как обращаться в Центр TAC. Кроме того, необходимо включить в сообщение выводы команд интерфейса show version, show run и show interfaces.

Сведения, необходимые при обращении в Центр технической поддержки

При обращении в Центр технической поддержки (TAC) приложите следующие сведения для диагностики зависания маршрутизатора.

  • Сведения о действиях по поиску и устранению неполадок, проведенных перед направлением запроса.

  • Результаты выполнения команды show technical-support (по возможности – в разрешенном режиме).

  • Результаты выполнения команды show log или снимки консоли (если имеются).

  • Трассировка стека из ROM Monitor

Присоедините собранные данные к описанию в простом текстовом файле (.txt) Информацию можно приложить к запросу путем загрузки с помощью программы подготовки запросов в Центр технической поддержки (только для зарегистрированных заказчиков). Если инструмент для составления обращений TAC Service Request Tool недоступен, то относящиеся к проблеме данные можно отправить на адрес attach@cisco.com с номером обращения в строке «Тема» в отправляемом сообщении.

Примечание. Если консоль отвечает на команды, не перезагружайте вручную и не выключайте маршрутизатор перед сбором указанных выше данных (в случае отсутствия зависания маршрутизатора), так как можно потерять важные данные, необходимые для определения причины возникновения проблемы.


Связанные обсуждения сообщества поддержки Cisco

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


Дополнительные сведения


Document ID: 15105