Центр Диагностики & База Системных Ошибок

Решения для Windows Server, Active Directory, 1С, СУБД, Linux, Cisco, MikroTik и IP-телефонии.

⚠️ Важная информация Все материалы, инструкции, команды и скрипты предоставлены исключительно в ознакомительных целях. Их применение может повлиять на работу операционной системы, баз данных и сетевого оборудования. Перед выполнением действий обязательно создайте резервную копию. При отсутствии необходимой квалификации обратитесь к ИТ-специалистам.

Защита плоскости управления маршрутизатора: настройка CoPP на Cisco IOS

Обновлено: 25.08.2026  ·  Официальная база знаний
  • Процессор маршрутизатора загружен на 100% из-за сетевого сканирования или целенаправленной DoS-атаки.
  • Падение сессий динамической маршрутизации (BGP/OSPF flapping) из-за потери keepalive-пакетов.
  • Потеря SSH/Telnet/SNMP доступа к устройству во время инцидентов перегрузки сети.
  • Очередь Control Plane input queue переполнена дропами.

1. Концепция Control Plane Policing (CoPP)

CoPP использует модульный интерфейс QoS CLI (MQC) для фильтрации и жесткого ограничения скорости (Policing) трафика, адресованного непосредственно процессору маршрутизатора (Control Plane), защищая его от DoS-атак и исчерпания очередей.

2. Классификация служебного трафика (Class-Maps)

# 1. Критический трафик маршрутизации
ip access-list extended ACL_COPP_ROUTING
 permit ospf any any
 permit bgp any any
 permit bgp any eq bgp any
 permit tcp any any eq bgp

# 2. Трафик управления (SSH, SNMP, NTP)
ip access-list extended ACL_COPP_MANAGEMENT
 permit tcp 192.168.100.0 0.0.0.255 any eq 22
 permit udp 192.168.100.0 0.0.0.255 any eq snmp
 permit udp any any eq ntp

# 3. Служебный ICMP трафик
ip access-list extended ACL_COPP_ICMP
 permit icmp any any echo
 permit icmp any any echo-reply
 permit icmp any any ttl-exceeded
 permit icmp any any unreachable

# Привязка ACL к Class-Map
class-map match-all CM_COPP_ROUTING
 match access-group name ACL_COPP_ROUTING

class-map match-all CM_COPP_MANAGEMENT
 match access-group name ACL_COPP_MANAGEMENT

class-map match-all CM_COPP_ICMP
 match access-group name ACL_COPP_ICMP

3. Определение политик ограничения скорости (Policy-Map)

policy-map PM_COPP_PROTECTION
 class CM_COPP_ROUTING
  police 10000000 1250000 conform-action transmit exceed-action transmit

 class CM_COPP_MANAGEMENT
  police 2000000 250000 conform-action transmit exceed-action drop

 class CM_COPP_ICMP
  police 500000 62500 conform-action transmit exceed-action drop

 class class-default
  police 250000 31250 conform-action transmit exceed-action drop

4. Применение политики к Control Plane

control-plane
 service-policy input PM_COPP_PROTECTION

5. Верификация и анализ отброшенных пакетов

show policy-map control-plane
show policy-map control-plane input class CM_COPP_ICMP
Практический опыт инженера: Перед активацией действия exceed-action drop в боевой сети всегда настраивайте exceed-action transmit и собирайте статистику через show policy-map control-plane в течение суток для точного расчета лимитов CIR/PIR.

Частые вопросы (FAQ)

Что произойдет, если в политике CoPP ошибочно заблокировать протокол OSPF/BGP?

Маршрутизатор перестанет получать Hello и Keepalive пакеты от соседей, что приведет к разрыву всех смежностей и полному отключению маршрутизации через данное устройство.

В чем разница между conform-action, exceed-action и violate-action?

Conform-action применяется к пакетам в пределах установленной полосы (CIR), exceed-action — к пакетам, превышающим полосу в пределах всплеска (burst), а violate-action — к пакетам, превышающим максимальный всплеск (PIR).

Можно ли применять CoPP на уровне конкретного физического интерфейса?

Нет. CoPP применяется глобально в специальном контексте конфигурации control-plane и фильтрует суммарный поток трафика со всех интерфейсов, направленный на CPU.

Зачем выделять отдельный лимит для ICMP-трафика в CoPP?

Неограниченный поток ICMP запросов (ping sweep или flood) может полностью забить очередь процессора, оставив его без ресурсов для обработки BGP/OSPF и LACP пакетов.