Коммутация LAN : Ethernet

Восстановление порта из состояния "errdisabled" на платформах CatOS

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


Содержание


Введение

Клиенты часто обращаются в техническую поддержку Cisco, когда они замечают один, или больше их портов коммутатора стало отключенным в результате ошибки; т.е. когда порты имеют состояние errDisable. Они не знают, почему это произошло и как можно восстановить нормальную работу портов. В этом документе описано, что такое состояние errDisable, как восстановить работу после такого отказа, и приводятся два примера восстановления. Внутри этого документа термины errDisable и error-disable обозначают одно и то же. (errDisable – статус порта в том виде, в котором он отображается командой show port, error-disable или error-disabled – это эквиваленты errDisable).)

Предварительные условия

Требования

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

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

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

  • Два коммутатора семейства Catalyst 4000/5000/6000 (или подобные им) в лабораторных условиях с очищенными конфигурациями. Нашей основной машиной был Catalyst 5500 рабочий CatOS 5.4 (2). Данное устройство было подключено к коммутатору Catalyst 6509 под управлением 5.3(5a)CSX (также можно использовать любое устройство под управлением CatOS с поддержкой функций Ethernet-канала и PortFast).

  • Два перекрестных кабеля Ethernet с разъемом RJ-45.

  • CatOS 5.4(x) как минимум на одном коммутаторе.

  • Два порта FastEthernet в каждом коммутаторе поддерживают EtherChannel и portfast.

  • Терминальное подключение к одному или обоим коммутаторам.

Сведения, рассматриваемые в этом документе, были получены из изолированной среды. Перед использованием любой команды необходимо изучить ее потенциальное воздействие на сеть. На коммутаторе была введена команда clear config all, чтобы обеспечить конфигурацию по умолчанию. Если вдруг потребуется размножить эти ошибки и поработать с ними, выполняйте это только в изолированной среде, чтобы не повлиять на работу реально используемой сети. Данные примеры относятся только к инструкциям. Выходные данные некоторых команд были отброшены в случае, если они не увеличивали обсуждение.

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

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

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

errDisable

Платформы, использующие функцию errDisable

Характеристика errDisable поддерживается на Коммутаторах Catalyst рабочий CatOS (Catalyst 2948G, 4500/4000, 5500/5000 и 6500/6000), а также Коммутаторах Catalyst рабочая Cisco IOS (Catalyst 2900XL, 2950, 2970, 3550, 4500 и 65000). Способ реализации функции errDisable зависит от платформы. Этот документ уделяет особое внимание отключениям в результате ошибок у коммутаторов с программным обеспечением CatOS.

Назначение errDisable

Функция errDisable впервые была реализована в операционной системе CatOS версии 3.2(2). Если в конфигурации показано, что порт должен быть включен, но программное обеспечение на коммутаторе обнаружило на порте ситуацию, связанную с появлением ошибки, то программное обеспечение отключит этот порт. Другими словами, порт был автоматически отключен операционной системы коммутатора, так как на порту было обнаружено состояние ошибки.

Когда порт отключен из-за ошибки, он фактически выключается, а прием и отправка трафика на нем не выполняются. LED порта горит оранжевым цветом, при вводе команды show port статус порта меняется на errdisable. Вот пример того, на что отключенный в результате ошибки порт был бы похож от интерфейса командной строки коммутатора.

Cat5500> (enable) show port 11/1
Port  Name               Status     Vlan       Level  Duplex Speed Type
----- ------------------ ---------- ---------- ------ ------ ----- ------------
11/1  		          errdisable   1 normal   auto  auto 10/100BaseTX

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

Причины errDisable

Сначала данная возможность была реализована для обработки особых конфликтных ситуаций, когда коммутатор обнаруживал на порту избыточные или поздние конфликты. Избыточные коллизии возникают, когда кадр отбрасывается из-за 16 коллизий подряд. Запоздалые коллизии происходят после того, как каждое устройство на проводе должно было распознать, что использовался провод. Ошибки этих типов могут быть вызваны параметрами кабеля, отличающимися от указанных в спецификации (слишком длинный, неверного типа, неисправный), или плохой картой сетевого интерфейса (NIC) (с физическими проблемами, или с проблемами в драйвере), или неверной конфигурацией дуплекса портов. Эта последняя причина широко распространена из-за сбоев в согласовании скорости и параметров дуплексной передачи между двумя непосредственно связанными устройствами (такими как сетевая интерфейсная карта, подключенная к коммутатору). Только полудуплексные соединения должны когда-либо иметь коллизии в LAN; из-за природы Ethernet Множественного доступа с контролем несущей (CSMA), коллизии обычны для полудуплекса, пока они не превышают небольшой процент трафика.

Поскольку возможности CatOS выросли, было больше способов, которыми порт мог стать отключенным в результате ошибки. Например, на Catalyst 6500, работающем catOS, Характеристика errDisable поддерживается для этих проблем с подключением:

  • Проверка ARP

  • Подавление широковещания

  • Защита портов BPDU

  • Неверная конфигурация канала

  • Перекрестный сбой

  • Несоответствие дуплексных режимов

  • Неверная конфигурация туннеля протокола уровня 2

  • В CatOS 5.2 реализована макрокоманда set port host port range, обеспечивающая существенное повышение эффективности автосогласования и сетевого взаимодействия и включающая в себя следующие рекомендованные конфигурации для портов доступа

  • UDLD

Функция error-disable позволяет коммутатору отключать порт в подобных ситуациях. Помните: порт, отключенный из-за ошибки, сам по себе не является причиной сигнала тревоги до тех пор, пока он определяет и разрешает основные причины ошибок. Отключенный в результате ошибки порт – симптом более глубокой проблемы, которую необходимо решить.

Восстановление из errDisable

Для восстановления с errDisable, необходимо сделать две вещи:

  1. Определите и устраните причину, по которой порты перешли в состояние "error-disabled" (кабель, NIC, EtherChannel и так далее).

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

  2. Включите порт.

    Порты не будут включены снова даже при определении источника проблемы. Как только вы исправляете источник проблемы, порты все еще отключены (и светодиодные индикаторы порта являются все еще оранжевыми); портам нужно реактивировать, прежде чем они станут активными. Сначала единственный способ отмены запрета порта состоял в ручном вводе команды set port enable для соответствующих портов. В течение долгого времени были дополнительные расширения, добавленные к характеристике отключения в результате ошибки для создания его более гибким и автоматическим.

Примечание: Отключенный в результате ошибки порт не является единственной причиной, светодиодный индикатор порта мог пойти оранжевый; это - только одна из причин. Поэтому целесообразно проверять статус порта с помощью команды show port.

Расширения к errDisable

Set Option Errport – CatOS 4.2(2)

Некоторые клиенты хотели иметь возможность определить, должен ли порт быть закрыт из-за специальных ошибок коллизии, обнаруженных CatOS. Были некоторые ситуации, такой, как будто ссылка была магистральным соединением, например, где, завершая порты фактически будут хуже, чем ошибки, с которыми встретились на портах; было бы более выбираемо покинуть порты, функционирующие как можно больше, пока проблема не могла быть решена, вместо того, чтобы закрыть их. Таким образом, в версии 4.2(2) к CatOS была добавлена новая команда set option errport, позволяющая администратору определить, какую процедуру выполнил маршрутизатор после обнаружения порта, имеющего данные конкретные конфликты. Исходным состоянием и состоянием по умолчанию является set option errport disable, в котором коммутатор переведет порт в состояние error-disabled при обнаружении специальных ошибок коллизий типа error-disable. Иначе, в случае использования команды set option errport enable, коммутатор оставит порты включенными даже в случае возникновения ошибок коллизий, которые обычно приводят к отключению этих портов.

Эта команда влияет на коммутатор глобально; это не может быть выполнено для отдельного порта. Это не перечислено в Справочнике по командам, но перечислено в Комментариях к выпуску для 4.2 (2) (Комментарии к выпуску для Выпуска ПО Семейства Catalyst 5000 4. x . Обратите внимание на то, что эта команда, кажется, парадоксальна; нужно позволить параметру errport отключить опцию err-disable (включил по умолчанию). Имейте ввиду, чтобы избежать отключения порта в результате ошибки, просто задайте команду set option errport enable.

Команда set option errport только рекомендуется, если вы понимаете несение некоторого риска других портов на модуле, влияемом, если вы позволяете этим состояниям ошибки продолжаться. Это - только временная мера, не "исправление" к проблеме; это просто предотвращает порты, которые встречаются с этими ошибками от того, чтобы быть закрытым, пока вы не можете обратиться к реальной проблеме. Use with CAUTION.

Задание errdisable-timeout - CatOS 5.4(1)

В версии CatOS 5.4(1) введена новая команда set errdisable-timeout. Эта команда является более сложной версией команды set option errport, обсужденной ранее. Эта команда автоматически активирует отключенный из-за ошибки (error-disabled) порт после того как истечет настраиваемое количество времени (от 30 с до 24 ч, указанное в секундах). Это позволяет избежать необходимости включать такой порт вручную.

Эта команда влияет на все порты, включенные на коммутаторе текущей конфигурацией, но переведенные в состояние отключения в результате ошибки программным обеспечением CatOS. Используйте команду show errdisable-timeout для наблюдения текущего статуса характеристики времени ожидания при отключении в результате ошибки. Можно определить пять отдельных областей, в которых возможно включение данной функции: bpdu-guard, channel-misconfig, duplex-mismatch, (со специальными ошибками коллизий, описанными выше), udld, other. Таким образом, это может все еще дать вам постоянную защиту отключения из-за ошибки в областях, где вы хотите его, но позволяете вам выборочно выбирать области, где вы сделали бы, чтобы порты продолжали функционировать, пока вы не можете решить проблему.

В программном обеспечении версии 5.2.1 и 5.2.2 для Catalyst 6000 есть дефект, который приводит к отключению сети, когда порт изменяет состояние на error-disabled. Если порт переходит в режим errDisable, коммутатор провоцирует случайную пересылку известного MAC-адреса на ошибочно отключенный порт. Это вызовет сбои в соответствующей VLAN. Это дефект ПО имеет идентификатор ошибки Cisco CSCdm48887. Проблема разрешена в ПО версий 5.2.3 и более поздних.

Кратковременный обходной прием для предотвращения этой проблемы следующие:

  1. Введите команду set option errport, способную отключить функцию, отключенную в результате ошибки.

  2. Включите снова все отключенные из-за ошибки порты, используя команду set port speed mod_num/port_num.

    Пример: set port enable 3/1

  3. Очистите таблицу MAC-адресов с помощью команды clear cam dynamic для восстановления динамически полученных MAC-адресов.

Как восстановить порт из блокированного состояния

На этом этапе в документе, мы предоставляем два примера того, как вы могли бы встретиться с отключенным в результате ошибки портом и как исправить их; краткое обсуждение трех других причин, что порт мог стать отключенным в результате ошибки; и сводка команд, обсужденных касающийся отключенных в результате ошибки портов. Конкретные примеры таких неполадок, приведенные ниже, легко воспроизвести в лабораторных условиях.

Используйте эти шаги для восстановления порта с состояния errdisable:

  1. Версия программного обеспечения, использованного в данном документе

    Команда show version показывает, что версия программного обеспечения коммутатора работает согласно этому документу. Здесь просто показано, какую версию CatOS мы использовали для этого теста и какие были задействованы модули.

    Cat5500> (enable) show version
    WS-C5500 Software, Version McpSW: 5.4(2) NmpSW: 5.4(2)
    Copyright (c) 1995-2000 by Cisco Systems
    NMP S/W compiled on Apr  7 2000, 16:59:29
    MCP S/W compiled on Apr 07 2000, 16:49:24
    
    System Bootstrap Version: 5.1(1)
    
    Hardware Version: 1.3  Model: WS-C5500  Serial #: 069041642
    
    Mod Port Model      Serial #  Versions
    --- ---- ---------- --------- ----------------------------------------
    1   0    WS-X5540   013459824 Hw : 1.1
                                  Fw : 5.1(1)
                                  Fw1: 5.1(1)
                                  Sw : 5.4(2)
                                  Sw : 5.4(2)
    11  24   WS-X5225R  012121634 Hw : 3.1
                                  Fw : 4.3(1)
                                  Sw : 5.4(2)
    
           DRAM                    FLASH                   NVRAM
    Module Total   Used    Free    Total   Used    Free    Total Used  Free
    ------ ------- ------- ------- ------- ------- ------- ----- ----- -----
    1       32768K  18567K  14201K   8192K   4171K   4021K  512K  179K  333K
    
    Uptime is 0 day, 0 hour, 4 minutes
    
    Cat5500> (enable) show module
    Mod Slot Ports Module-Type               Model               Status
    --- ---- ----- ------------------------- ------------------- --------
    1   1    0     Supervisor IIG            WS-X5540            ok
    15  1          Route Switch Feature Card 
    11  11   24    10/100BaseTX Ethernet     WS-X5225R           ok
    
    Mod Module-Name         Serial-Num
    --- ------------------- --------------------
    1                       00013459824
    11                      00012121634
    
    Mod MAC-Address(es)                        Hw     Fw         Sw
    --- -------------------------------------- ------ ---------- -----------------
    1   00-90-ab-28-d0-00 to 00-90-ab-28-d3-ff 1.1    5.1(1)     5.4(2)
    5   00-10-7b-7c-09-d4 to 00-10-7b-7c-09-df 3.0    3.1(1)     5.4(2)
    6   00-e0-1e-6c-80-da to 00-e0-1e-6c-80-dc 1.0    4.1(1)     5.4(2)
    8   00-10-7b-44-16-40 to 00-10-7b-44-16-57 1.3    3.1(1)     5.4(2)
    10  00-10-7b-0c-32-d0 to 00-10-7b-0c-32-db 2.0    3.1(1)     5.4(2)
    11  00-50-a2-f4-e4-50 to 00-50-a2-f4-e4-67 3.1    4.3(1)     5.4(2)
  2. Как узнать, что порты находятся в состоянии errDisable

    Можно ввести команду show port, чтобы определить, был ли порт отключен в результате ошибки. Это - пример активного порта; далее ниже тот же порт в состоянии отключения в результате ошибки.

    Cat5500> (enable) show port 11/1
    Port  Name        Status     Vlan       Level  Duplex Speed Type
    ----- -------    ---------- ---------- ------ ------ ----- ------------
    11/1             connected  1          normal a-half a-100 10/100BaseTX
    
    
    Cat5500> (enable) show port 11/1
    Port  Name         Status     Vlan       Level  Duplex Speed Type
    ----- -------     ---------- ---------- ------ ------ ----- ------------
    11/1              errdisable  1          normal   auto  auto 10/100BaseTX

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

  3. Как Определить Причину для Состояния отключения в результате ошибки (консольные сообщения, системный журнал, show errdisable-timeout)

    Когда коммутатор помещает порт в состояние отключения в результате ошибки, он передает сообщение к консоли и описывает, почему был отключен порт. Это два примера сообщения, которые показывают, почему отключен порт: одна из функций защиты portfast BPDU и другие проблемы из конфигурации EtherChannel.

    2000 May 09 19:09:18 %SPANTREE-2-RX_PORTFAST:Received BPDU on PortFast
    enable port. Disabling 11/1
    
    2000 May 09 19:09:18 %PAGP-5-PORTFROMSTP:Port 11/1 left bridge port
    
    
    2000 May 09 19:22:11 %SPANTREE-2-CHNMISCFG: STP loop - channel 11/1-2
    is disabled in vlan 1
    
    2000 May 09 19:22:11 %PAGP-5-PORTFROMSTP:Port 11/1 left bridge port 11/1-2

    Примечание: Сообщения явно не сообщают errDisable или отключенный в результате ошибки; однако, они действительно указывают, что коммутатор отключает порт. После генерации сообщений в консоли они не сохраняются, если в сети не используется syslog-сервер. Если настроить коммутатор на отправку этих сообщений на syslog-сервер, то можно будет просмотреть подробную запись времени и причин отключения порта. Сведения о настройке коммутатора на пересылку сообщений серверу системных журналов см. в разделе "Настройка ведения журналов системных сообщений" в руководстве по настройке CatOS 5.4.

    При выполнении CatOS 5.4 (1) или позже существует функция, названная errdisable-timeout, который, если включено, говорит вам, почему был отключен порт. Ниже представлен пример

    Cat5500> (enable) show errdisable-timeout
    ErrDisable Reason   Timeout Status Port ErrDisable Reason
    ------------------- -------------- ----  ----------------
    bpdu-guard          enable         11/1  bpdu-guard
    channel-misconfig   disable
    duplex-mismatch     disable
    udld                disable
    other               disable
    
    Interval: 30 seconds
  4. Порядок устранения проблемы. После обнаружения, почему порты были отключены, необходимо сначала исправить корневую проблему, затем реактивировать порт.

    1. Исправление проблемы корневого узла

      Это зависит от того, какова проблема вызова фактически. Множество причин может инициировать завершение работы. Это некоторые самые значимые и типичные причины.

      • Неверная конфигурация EtherChannel

        Для EtherChannel для работы вовлеченные порты должны иметь однотипные конфигурации; та же VLAN, тот же режим магистрали, та же скорость, тот же дуплекс, и т.д. Большинство различий в настройке в коммутаторе поймали и сообщают при создании канала. В некоторых ситуациях, обычно когда вы используете ON (включено) режим (в противоположность автоматическому или выбираемому), все может быть непротиворечивым на одном коммутаторе так, чтобы канализирование запусков коммутатора. Но, связанный соседний коммутатор не может быть установлен то же и может заставить первый коммутатор становиться отключенным в результате ошибки. Если оба из коммутаторов поддерживают Протокол PAgP, можно настроить канальные режимы на каждом коммутаторе, чтобы быть выбираемыми вместо на приблизительно этой проблеме.

      • Несоответствие дуплексных режимов

        Несогласованность дуплексных параметров встречается довольно часто из-за невозможности автоматического согласования скорости и дуплексной передачи. В отличие от полудуплексного устройства, которому приходится ждать пока все другие устройства прекратят передавать данные по тому же сегменту LAN, полнодуплексное устройство будет передавать данные всякий раз при появлении информации для отправки, вне зависимости от других устройств. Если эта передача производится, когда передает полудуплексное устройство, оно будет рассматривать это как коллизию (в течение данного временного интервала) или как позднюю коллизию (по истечении интервала). Так как дуплексный узел никогда не вызывает коллизии, в них не реализуется возможность повторной передачи отброшенных пакетов. Низкий процент конфликтов характерен для полудуплексного, но не для дуплексного соединения. Если порт коммутатора получает большое количество поздних коллизий, это обычно свидетельствует о проблеме несоответствия дуплекса; удостоверьтесь, что порты с обеих сторон кабеля установлены в ту же скорость и дуплексный режим. Команда show port скажет вам скорость и дуплексный режим для Портов коммутатора Catalyst. Более поздние версии протокола обнаружения Cisco (Cisco Discovery Protocol, CDP) предупреждают о несоответствии режимов дуплекса до перевода порта в состояние отключения в результате ошибки. Кроме того, могут быть установочные параметры платы NIC, которые вызывают проблемы (такие как автоматические функции полярности, если у вас есть сомнения, выключите их). Если вы имеется много плат NIC от поставщика и на них на всех наблюдается одна и та же проблема, найдите на веб-сайте производителя документацию по версии и проверьте, что установлены последние драйвера от производителя. Среди других причин поздних коллизий — неисправность NIC (физическая неисправность, а не только проблемы конфигурации), повреждение кабеля или слишком длинный сегмент кабеля.

        2000 May 09 19:19:09 %CDP-4-DUPLEXMISMATCH:Full/half duplex
        mismatch detected on port 11/3
      • Защита портов BPDU

        Если portfast включен на порты, некоторые более новые версии программного обеспечения коммутатора контролируют. Порт в режиме PortFast должен быть подключен к конечной станции, а не к устройствам, которые генерируют пакеты STP (BPDU). Если коммутатор обнаруживает BPDU, исходящий от порта с включенной возможностью portfast, этот порт будет переведен в режим errDisable.

      • UDLD

        UDLD — это протокол в некоторых новых версиях программного обеспечения, который определяет, является ли связь по каналу только односторонней и, соответственно, частично разорванной. Кабель поврежденного оптоволокна или другое кабельное подключение/проблема порта могли вызвать это одностороннее только связь. При этом могут возникать циклы связующего дерева. UDLD позволяет порту обнаружить однонаправленный канал и в этом случае может перевести порт в состояние errDisable.

      • Другой

        Любой процесс на коммутаторе, обнаружив неисправность порта, может поместить порт в состояние "error-disable". Просмотрите сообщения от консоли или те, что были посланы на сервер syslog и в которых указана причина отключения порта. Кроме того, если включена функция времени ожидания при отключении в результате ошибки (как минимум на CatOS 5.4(1)), команда show errdisable-timeout позволяет выяснить причину отключения порта.

    2. Включите порт

      После решения проблемы корневой проблемы порты будут все еще отключены; необходимо реактивировать порты. Это можно выполнить вручную при помощи команды set port enable.

      Cat5500> (enable) set port enable 11/1-2
      Ports 11/1-2 enabled.
      

      Если у вас есть CatOS 4.2 (2) или позже, можно использовать команду set option errport, как описано выше, чтобы препятствовать тому, чтобы порты стали отключенными в результате ошибки. Так как вы фактически не исправляете источник проблемы, это может быть опасно. При наличии CatOS 5.4(1) или более новой версии, можно воспользоваться командой errdisable-timeout для автоматического повторного включения портов, как это описано в следующем разделе.

  5. Как автоматически снова включить порт при помощи команды errdisable-timeout – CatOS 5.4(1)

    Команда errdisable-timeout позволяет вам избирательно выбрать, какой тип ошибок будет автоматически делать порты снова доступными по прошествии определённого периода времени. Вывод показывает состояние по умолчанию, которое на определенное время отключено в результате ошибки (неактивно), для всех пяти возможных состояний. Если бы условие было включено, то портам с этим условием реактивировали бы после 30 секунд.

    Cat5500> (enable) show errdisable-timeout
    ErrDisable Reason   Timeout Status
    ------------------- --------------
    bpdu-guard          disable
    channel-misconfig   disable
    duplex-mismatch     disable
    udld                disable
    other               disable
    
    Interval: 30 seconds
    

    Чтобы включить функцию errdisable-timeout, используйте следующие команды для выбора состояний errdisable.

    Cat5500> (enable) set errdisable-timeout enable ?
      bpdu-guard                 BPDU Port-guard
      channel-misconfig          Channel misconfiguration
      duplex-mismatch            Duplex Mismatch
      udld                       UDLD
      other                      Reasons other than the above
      all                        Apply errDisable timeout to all reasons
    
    Cat5500> (enable) set errdisable-timeout enable bpdu-guard 
    Successfully enabled errdisable-timeout for bpdu-guard.
    
    Cat5500> (enable) set errdisable-timeout interval 30
    Successfully set errdisable timeout to 30 seconds.

    Прекрасная характеристика этой команды - то, что при включении errdisable-timeout она перечислит обычно, почему порты были помещены в состояние отключения в результате ошибки. Для большего количества подробных описаний необходимо сослаться на сообщения, отображенные во время возникновения. Помните, что первым шагом исправления состояния отключения в результате ошибки является исправление исходной ошибки, повлекшей прекращение работы. Обратите внимание далее, что порт 11/1 был отключен функцией bpdu-guard.

    Cat5500> (enable) show errdisable-timeout
    ErrDisable Reason   Timeout Status   Port ErrDisable Reason
    ------------------- --------------   ---- -----------------
    bpdu-guard          enable           11/1  bpdu-guard
    channel-misconfig   disable
    duplex-mismatch     disable
    udld                disable
    other               disable
    
    Interval: 30 seconds

    Здесь дан пример того, что отображается, когда коммутатор заново включает порт из-за функции errdisable-timeout.

    Cat5500> (enable)
    2000 May 09 19:17:27 %MGMT-5-ERRDISPORTENABLED:Port 11/1 err-disabled
    by bpdu-guard enabled by errdisable timeout
    
    
  6. Что, если Вы Реактивируете порт, Не Решая проблему?

    Если снова включить порт, не исправив проблему, порты снова станут отключенными из-за ошибки. Это продолжится много раз, пока вы не решите реальную проблему. Обратите внимание на три сообщения ниже. В первом коммутатор описывает отключение порта 11/1 вследствие получения BPDU на порт, для которого включен режим portfast (такая ситуация приводит к ошибке, если включена функция bpdu-guard). По истечении 25 секунд порт автоматически включается функцией времени ожидания при отключении в результате ошибки. Затем, четырьмя секундами позже, порт снова становится неработоспособным, потому что настоящая проблема так и не была решена.

    2000 May 09 19:17:33 %SPANTREE-2-RX_PORTFAST:Received BPDU on PortFast
    enable port. Disabling 11/1
    
    2000 May 09 19:17:58 %MGMT-5-ERRDISPORTENABLED:Port 11/1 err-disabled by
    bpdu-guard enabled by errdisable timeout
    
    2000 May 09 19:18:02 %SPANTREE-2-RX_PORTFAST:Received BPDU on
    PortFast enable port. Disabling 11/1
    

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

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

    Ниже приведен пример предотвращения отключения порта коммутатором при ошибке вследствие чрезмерных или поздних коллизий. Команда set option errport стала доступной в выпуске 4.2 (2) CatOS. И снова не забывайте, что это следует использовать только как подручное средство измерения. Это позволяет избежать отключений портов из-за ошибок по причине конфликтов, однако может не уберечь от конфликтов, которые обычно приводят к отключению порта коммутатором. При выполнении этой команды коммутатор не будет отключать порт в случае коллизии.

    Cat5500> (enable) set option errport enable
    Error port option is enabled
    
    Cat5500> (enable) show option errport
    Option errport   : enabled
    

    Ниже приведен пример возврата в состояние по умолчанию, которое позволяет коммутатору отключить порт в результате ошибки.

    Cat5500> (enable) set option errport disable
    Error port option is disabled
    
    Cat5500> (enable) show option errport
    Option errport   : disabled
    

    Команда show option errport покажет текущий режим, в котором находится характеристика отключения в результате ошибки. Кроме того, команда set option errport enable не исправляет причину ошибок; это только препятствует порту закрываться из-за ошибок. Также существует вероятность того, что порты errDisable могли повлиять на другие порты модуля, если эта ошибка осталась неразрешенной или усугубилась. Таким образом, эту команду следует использовать только при понимании того, что данные ошибки могут теоретически вызвать более серьезные проблемы в модуле коммутатора, и пользователь берет на себя эти риски.

Восстановление отключенного в результате ошибки порта: примеры

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

Порт закрыт из-за ошибок функцией BPDU Port-Guard

Новая функция, появляющаяся в CatOS 5.4(1), позволяет коммутатору управлять портами с включенной функцией portfast. Порт с помощью portfast должен только быть связан с конечной станцией (такой как рабочая станция или сервер), не к устройствам, которые генерируют BPDU связующего дерева, как коммутаторы, или мосты и маршрутизаторы, делающие мостовое соединение. Если коммутатор получает BPDU связующего дерева через быстрый порт, он переводит порт в режим errDisable для предотвращения потенциальных зацикливаний. Portfast предполагает, что порт на коммутаторе не имеет никакой возможности генерации физической петли, и таким образом пропускает начальные проверки связующего дерева для того порта, избегая, чтобы загрузились конечные станции от таймаута на. Portfast должен быть внедрен тщательно администратором сети; на портах, где portfast был включен, защита BPDU помогает гарантировать, что LAN остается исключающее зацикливание.

Включение данной функции. В выбранном примере рассматривается простая в создании ситуация "error-disable".

Cat5500> (enable) set spantree portfast bpdu-guard enable
Spantree portfast bpdu-guard enabled on this switch.

Наш Коммутатор Catalyst 5500 связан с другим коммутатором (6509), что мы сделали, чтобы быть root связующего дерева. 6509 будет пересылать пакеты BPDU каждые 2 секунды (посредством связующего дерева по умолчанию). При включении режима portfast для порта коммутатора 5500 функция bpdu-guard будет наблюдать за входящими в этот порт BPDU. Когда BPDU входит на порт, что означает обнаружение неконечного устройства вне данного порта, возможность bpdu-guard закроет порт, чтобы избежать потенциальной петли связующего дерева.

Cat5500> (enable) set spantree portfast 11/1 enable

Warning: Spantree port fast start should only be enabled on ports connected
to a single host.  Connecting hubs, concentrators, switches, bridges, etc. to
a fast start port can cause temporary spanning tree loops.  Use with caution.
Spantree port 11/1 fast start enabled.

Cat5500> (enable)

2000 May 09 19:09:18 %SPANTREE-2-RX_PORTFAST:Received BPDU on
PortFast enable port. Disabling 11/1

2000 May 09 19:09:18 %PAGP-5-PORTFROMSTP:Port 11/1 left bridge port 11/1

В этом сообщении коммутатор сообщает о поступлении блока BPDU в порт с поддержкой PortFast, из-за чего коммутатор отключает порт Gi4/1. Если посмотреть на статус порта, то он будет отображаться как "errDisable".

Cat5500> (enable) show port 11/1

Port  Name                   Status     Vlan       Level  Duplex Speed Type
----- ------------------     ---------- ---------- ------ ------ ----- ------------
11/1                         errdisable 1          normal   auto  auto 10/100BaseTX

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

Cat5500> (enable) set spantree portfast 11/1 disable
Spantree port 11/1 fast start disabled.

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

Cat5500> (enable) show port 11/1

Port  Name               Status     Vlan       Level  Duplex Speed Type
----- ------------------ ---------- ---------- ------ ------ ----- ------------
11/1                     errdisable 1          normal   auto  auto 10/100BaseTX

В следующем примере показано, как повторно вручную включить порт с помощью команды set port enable. Теперь порт вернется в нормальное состояние.

Cat5500> (enable) set port enable 11/1
Port 11/1 enabled.

Cat5500> (enable) show port 11/3
Port  Name               Status     Vlan       Level  Duplex Speed Type
----- ------------------ ---------- ---------- ------ ------ ----- ------------
11/1                     connected  1          normal a-half a-100 10/100BaseTX

Отключение из-за ошибки, связанной с неправильной конфигурацией EtherChannel

Ниже приведена другая часто встречающая ситуация отключения ошибки, возникающая на портах с поддержкой EtherChannel. Если один коммутатор настроен для EtherChannel, и другой не, это может заставить процесс связующего дерева завершать направленные порты на стороне, настроенной для EtherChannel. Данный сценарий показывает соединение двух перекрестных кабелей от коммутатора 5500 к другому коммутатору. EtherChannel на коммутаторе 5500 был включен с использованием команды set port channel 11/1-2 on. ON (включено) режим EtherChannel не передает пакеты PAgP для согласования с другой стороной перед канализированием; это просто предполагает, что другая сторона направляет. Кроме того, мы не включали EtherChannel для другого коммутатора; мы покинули эти порты как частное лицо ненаправленные порты. Остается в этом состоянии в течение минуты или около, STP в 5500 решает, что это петля. Это заставит порты с разделением каналов быть помещенными в состояние отключения в результате ошибки. Заметьте ниже этого, петля была обнаружена, и порты были отключены. Команда show port channel показывает, что порты больше не направляют; и, когда мы посмотрели на один из вовлеченных портов, мы видим, что его статус является errdisable.

Cat5500> (enable)
2000 May 09 19:20:02 %PAGP-5-PORTTOSTP:Port 11/1 joined bridge port 11/1-2
2000 May 09 19:20:27 %PAGP-5-PORTTOSTP:Port 11/2 joined bridge port 11/1-2
2000 May 09 19:22:11 %SPANTREE-2-CHNMISCFG: STP loop -
channel 11/1-2 is disabled in vlan 1

2000 May 09 19:22:11 %PAGP-5-PORTFROMSTP:Port 11/1 left bridge port 11/1-2
2000 May 09 19:22:11 %PAGP-5-PORTFROMSTP:Port 11/2 left bridge port 11/1-2



Cat5500> (enable) show port channel
No ports channeling

EtherChannel был разъединен, потому что порты были размещены в отключение из-за ошибки на этом коммутаторе.

Cat5500> (enable) show port 11/1
Port  Name                  Status     Vlan       Level  Duplex Speed Type
----- ------------------    ---------- ---------- ------ ------ ----- ------------
11/1                        errdisable 1          normal   auto  auto 10/100BaseTX

Для определения, какова проблема была, мы должны посмотреть на сообщение об ошибках. В сообщении было сказано, что в EtherChannel возникла петля связующего дерева. Как мы знаем из абзаца выше, это может произойти, когда одному устройству (наш коммутатор в этом случае) включили EtherChannel вручную при помощи ON (включено), режиму (в противоположность выбираемому) и другое присоединенное устройство (другой коммутатор в этом случае) не включали EtherChannel вообще. Один способ исправить ситуацию состоит в том, чтобы установить канальный режим в выбираемый с обеих сторон соединения, и затем реактивировать порты. Это заставит каждую сторону формировать канал, только если они оба соглашаются направить. Если соглашение о совместной работе не достигнуто, они продолжают работать как обычные порты.

Примечание: За списком возможных причин неправильной конфигурации EtherChannel обратитесь к руководству по настройке EtherChannel для используемой версии CatOS. Более новые версии имеют определенные разделы названного Fast EtherChannel Настройки Руководства по конфигурации и Gigabit EtherChannel, которые перечисляют зависимости для канала для формирования правильно, включая канальные режимы для настройки.

Cat5500> (enable) set port channel 11/1-2 desirable non-silent
Port(s) 11/1-2 are assigned to admin group 21.
Port(s) 11/1-2 channel mode set to desirable.

Cat5500> (enable) show port 11
Port  Name                  Status     Vlan       Level  Duplex Speed Type
----- ------------------    ---------- ---------- ------ ------ ----- ------------
11/1                        errdisable 1          normal   auto  auto 10/100BaseTX
11/2                        errdisable 1          normal   auto  auto 10/100BaseTX

Заметьте, что не смотря на то, что была отключена функция EtherChannel и установлен режим desirable для EtherChannel, порты все еще отключены. Устранены причины проблемы, теперь для использования портов необходимо снова включить их.

Cat5500> (enable) set port enable 11/1-2
Ports 11/1-2 enabled.

Cat5500> (enable) show port 11
Port  Name                   Status     Vlan       Level  Duplex Speed Type
----- ------------------     ---------- ---------- ------ ------ ----- ------------
11/1                         connected  1          normal a-full a-100 10/100BaseTX
11/2                         connected  1          normal a-full a-100 10/100BaseTX

Cat5500> (enable) show port channel 11/1
Port            Status     Channel              Admin Ch
                           Mode                 Group Id
-----         ----------   -------------------- ----- -----
11/1          connected  desirable non-silent    21   833
11/2          connected  desirable non-silent    21   833

Port  Device-ID                       Port-ID                   Platform
----- ------------------------------- ------------------------- ----------------
11/1  TBA04090489(Cat6000)      5/13                      WS-C6506
11/2  TBA04090489(Cat6000)      5/14                       
----- ------------------------------- ------------------------- ----------------

Проверка конфигурации

  • команда show version отображает версию программного обеспечения, используемого в коммутаторе

  • команда show module отображает список используемых на коммутаторе модулей

  • команда show port отображает текущий статус порта коммутатора

  • команда show option errport отображает состояние команды set option errport

  • команда show errdisable-timeout отображает текущие параметры функции errdisable-timeout и причину, по которой какие-либо порты в настоящий момент отключены из-за ошибки

Устранение неполадок в конфигурации

  • команда show port отображает текущий статус порта коммутатора

  • команда show port channel отображает текущее состояние EtherChannel

  • команда show option errport отображает состояние команды set option errport

  • команда set option errport disable позволяет коммутатору отключить все порты с ошибками, которые операционная система считает нужным отключить. Это состояние по умолчанию, и оно будет другим, только если ранее была дана команда set option errport enable

  • команда show errdisable-timeout отображает текущие параметры функции errdisable-timeout и причину, по которой какие-либо порты в настоящий момент отключены из-за ошибки

  • команда set errdisable-timeout определяет, почему порт отключился (используется вместе с командой show errdisable-timeout)

Перечень команд

Синтаксис: show version
В данном документе используется: show version

Синтаксис: show module [номер_модуля]
В данном документе используется: show module

Синтаксис: показать порт [mod_num[/port_num]]
В данном документе используется: show port 11/1 show port 11

Синтаксис: show port channel [mod_num[/port_num]] [statistics | info [spantree | trunk | protocol | gmrp | gvrp | qos]]
В данном документе используется: show port channel

Синтаксис: set port channel port_list mode {on | off | desirable | auto} [silent | non-silent]
В данном документе используется: set port channel 11/1-2 desirable non-silent

Синтаксис: установить порт в состояние доступности mod_num/port_num
В данном документе используется: set port enable 11/1-2

Синтаксис: show errdisable-timeout
В данном документе используется: show errdisable-timeout

Синтаксис: set errdisable-timeout [enable|disable][bpdu-guard | channel-misconfig | duplex-mismatch | udld | other]
В данном документе используется: set errdisable-timeout enable bpdu-guard

Синтаксис: set errdisable-timeout interval seconds
В данном документе используется: установить время ожидания при отключении в результате ошибки равным 30

Синтаксис: set spantree portfastmod_num/port_num {enable | disable}
В данном документе используется: set spantree portfast 11/1 enable set spantree portfast 11/1 disable

Синтаксис: set spantree portfast bpdu-guard {enable | disable}
В данном документе используется: set spantree portfast bpdu-guard enable

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

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


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


Document ID: 12017