Contenido

Introducción

Prerequisites

Requirements

Componentes Utilizados

Convenciones

Cómo el gusano "Código rojo" afecta a otros sistemas

Asesores que analizan el gusano "Código Rojo"

Síntomas

Identificación del dispositivo infectado

Técnicas de prevención

Bloqueo del tráfico al puerto 80

Reducción del uso de memoria de entrada ARP

Utilizar switching de Cisco Express Forwarding (CEF)

Cisco Express Forwarding vs. Fast Switching

Comportamiento y consecuencias de el fast switching

Ventajas de CEF

Ejemplo de Salida: CEF

Puntos a considerar

Preguntas frecuentes sobre "Código rojo" y sus respuestas

P. Utilizo NAT y experimento un uso de CPU del 100% en la entrada IP. Cuando ejecuto show proc cpu, mi uso de CPU es alto en el nivel de interrupción - 100/99 o 99/98. ¿Puede estar relacionado con "Código rojo"?

P. Ejecuto IRB y encuentro un uso elevado de la CPU en el proceso de entrada de HyBridge. ¿Por qué ocurre esto? ¿Está relacionado con el “Código rojo”?

P. El uso de mi CPU es alto en el nivel de interrupción y recibo vacios si intento un show log. El ritmo de tráfico además es un poco más alto de lo normal. ¿Cuál es la razón para esto?

P. Puedo ver numerosos intentos de conexión HTTP en mi router IOS que ejecuta un servidor ip http. ¿Es por la búsqueda del gusano “Código rojo”?

Soluciones alternativas

Información Relacionada

Introducción

Este documento describe el gusano "Código rojo" y los problemas que puede causar en un entorno de ruteo de Cisco. Este documento también describe técnicas para prevenir la infestación del gusano y proporciona enlaces a recomendaciones relacionadas que describen soluciones para problemas relacionados con el gusano.

El gusano "Código rojo" explota una vulnerabilidad en el servicio de índice de Microsoft Internet Information Server (IIS) versión 5.0. Cuando el gusano "Código Rojo" infecta un host, hace que el host sondee e infecte una serie aleatoria de direcciones IP, lo que causa un fuerte aumento en el tráfico de red. Esto es especialmente problemático si hay links redundantes en la red o si Cisco Express Forwarding (CEF) no se utiliza para conmutar paquetes.

Prerequisites

Requirements

No hay requisitos específicos para este documento.

Componentes Utilizados

Este documento no tiene restricciones específicas en cuanto a versiones de software y de hardware.

The information in this document was created from the devices in a specific lab environment. All of the devices used in this document started with a cleared (default) configuration. If your network is live, make sure that you understand the potential impact of any command.

Convenciones

For more information on document conventions, refer to the Cisco Technical Tips Conventions.

Cómo el gusano "Código rojo" afecta a otros sistemas

El gusano "código rojo" intenta conectarse a direcciones de IP generadas aleatoriamente. Cada servidor IIS infectado puede intentar infectar el mismo conjunto de dispositivos. Puede rastrear la dirección IP de origen y el puerto TCP del gusano porque no se falsifica. El reenvío de ruta inversa de unidifusión (URPF) no puede suprimir un ataque de gusano porque la dirección de origen es legal.

Asesores que analizan el gusano "Código Rojo"

Estos consejos describen el gusano "Código rojo" y explican cómo aplicar parches al software afectado por el gusano:

- Asesoría en seguridad de Cisco: "Gusano "Código rojo" – El impacto en el cliente

- Desbordamiento de memoria intermedia de la extensión ISAPI del servidor de índice ISS remoto

- .ida gusano "código rojo

- ¿CERT? Aviso CA-2001-19: gusano "Código rojo" que explota el desbordamiento de búfer en el archivo DLL del servicio de indexación IIS

Síntomas

Estos son algunos síntomas que indican que un router de Cisco se ve afectado por el gusano "Código rojo":

- Gran número de flujos en tablas NAT o PAT (si utiliza NAT o PAT).

- Gran número de solicitudes ARP o tormentas ARP en la red (causadas por el escaneo de direcciones IP).

- Uso excesivo de la memoria por los procesos IP Input, ARP Input, IP Cache Ager y CEF.

- Uso elevado de la CPU en ARP, entrada IP, CEF e IPC.

- Uso elevado de la CPU en el nivel de interrupción con tasas de tráfico bajas o uso elevado de la CPU en el nivel de proceso en entrada IP, si utiliza NAT.

Una condición de memoria baja o un uso elevado sostenido de la CPU (100%) en el nivel de interrupción puede hacer que un router Cisco IOS® se recargue. La recarga es causada por un proceso que se comporta mal debido a las condiciones de estrés.

Si no sospecha que los dispositivos de su sitio están infectados por o son el objetivo del gusano "Código rojo", consulte la sección Información Relacionada para obtener URL adicionales sobre cómo resolver cualquier problema que encuentre.

Identificación del dispositivo infectado

Utilice el switching de flujo para identificar la dirección IP de origen del dispositivo afectado. Configure el flujo ip route-cache en todas las interfaces para registrar todos los flujos conmutados por el router.

Después de unos minutos, ejecute el comando show ip cache flow para ver las entradas grabadas. Durante la fase inicial de la infección del gusano "Código rojo", el gusano intenta replicarse. La replicación ocurre cuando el gusano envía solicitudes HT a direcciones IP aleatorias. Por lo tanto, debe buscar entradas de flujo de memoria caché con el puerto de destino 80 (HT, 0050 en hexadecimal).

El flujo show ip cache | include 0050 muestra todas las entradas de caché con un puerto TCP 80 (0050 en hexadecimal):

Router#show ip cache flow | include 0050

...

scram        scrappers    dative      DstIPaddress   Pr SrcP  DstP  Pkts

Vl1       193.23.45.35      Vl3        2.34.56.12    06 0F9F  0050     2

Vl1    211.101.189.208     Null     158.36.179.59    06 0457  0050     1

Vl1       193.23.45.35      Vl3     34.56.233.233    06 3000  0050     1

Vl1     61.146.138.212     Null     158.36.175.45    06 B301  0050     1

Vl1       193.23.45.35      Vl3     98.64.167.174    06 0EED  0050     1

Vl1     202.96.242.110     Null     158.36.171.82    06 0E71  0050     1

Vl1       193.23.45.35      Vl3     123.231.23.45    06 121F  0050     1

Vl1       193.23.45.35      Vl3       9.54.33.121    06 1000  0050     1

Vl1       193.23.45.35      Vl3      78.124.65.32    06 09B6  0050     1

Vl1      24.180.26.253     Null    158.36.179.166    06 1132  0050     1

Si encuentra un número anormalmente alto de entradas con la misma dirección IP de origen, dirección IP de destino aleatoria 1, DstP = 0050 (HTTP) y Pr = 06 (TCP), probablemente haya localizado un dispositivo infectado. En este ejemplo de salida, la dirección IP de origen es 193.23.45.35 y viene de VLAN1.

1 Otra versión del gusano "Código rojo", llamado "Código rojo II", no elige una dirección IP de destino totalmente aleatoria. En su lugar, "Código rojo II" mantiene la parte de la red de la dirección IP y elige una parte aleatoria del host de la dirección IP para propagarse. Esto permite que el gusano se propague más rápido dentro de la misma red.

"Código rojo II" utiliza estas redes y máscaras:

Mask        Probability of Infection

0.0.0.0       12.5% (random)

255.0.0.0     50.0% (same class A)

255.255.0.0   37.5% (same class B)

Las direcciones IP de destino excluidas son 127.X.X.X y 224.X.X.X, y no se permite que ningún octeto sea 0 o 255. Además, el host no intenta reinfectarse.

Para obtener más información, consulte Código rojo (II) .

A veces, no puede ejecutar netflow para detectar un intento de infestación de "Código rojo". Esto puede deberse a que se ejecuta una versión de código que no soporta netflow, o porque el router tiene memoria insuficiente o excesivamente fragmentada para habilitar netflow. Cisco recomienda que no habilite netflow cuando hay varias interfaces de ingreso y solamente una interfaz de egreso en el router, porque la contabilización de netflow se realiza en la trayectoria de ingreso. En este caso, es mejor habilitar la contabilidad IP en la interfaz de salida solitaria.

Nota: El comando ip accounting inhabilita DCEF. No habilite la contabilidad IP en ninguna plataforma donde desee utilizar la conmutación DCEF.

Router(config)#interface vlan 1000

Router(config-if)#ip accounting

Router#show ip accounting

Source           Destination           Packets               Bytes

20.1.145.49    75.246.253.88                 2                  96

20.1.145.43    17.152.178.57                 1                  48

20.1.145.49    20.1.49.132                   1                  48

20.1.104.194   169.187.190.170               2                  96

20.1.196.207   20.1.1.11                     3                 213

20.1.145.43    43.129.220.118                1                  48

20.1.25.73     43.209.226.231                1                  48

20.1.104.194   169.45.103.230                2                  96

20.1.25.73     223.179.8.154                 2                  96

20.1.104.194   169.85.92.164                 2                  96

20.1.81.88     20.1.1.11                     3                 204

20.1.104.194   169.252.106.60                2                  96

20.1.145.43    126.60.86.19                  2                  96

20.1.145.49    43.134.116.199                2                  96

20.1.104.194   169.234.36.102                2                  96

20.1.145.49    15.159.146.29                 2                  96

En la salida del comando show ip accounting, busque las direcciones de origen que intentan enviar paquetes a varias direcciones de destino. Si el host infectado está en la fase de escaneo, intenta establecer conexiones HTTP a otros routers. Por lo tanto, verá los intentos de alcanzar varias direcciones IP. La mayoría de estos intentos de conexión normalmente fallan. Por lo tanto, sólo verá una pequeña cantidad de paquetes transferidos, cada uno con un pequeño conteo de bytes. En este ejemplo, es probable que 20.1.145.49 y 20.1.104.194 estén infectados.

Cuando ejecuta Multi-Layer Switching (MLS) en Catalyst 5000 Series y Catalyst 6000 Series, debe tomar diferentes pasos para habilitar la contabilización de NetFlow y rastrear la infestación. En un switch Cat6000 equipado con la tarjeta de función de switch multicapa (MSFC1) o SUP I/MSFC2, MLS basado en netflow se habilita de forma predeterminada, pero el modo de flujo es sólo de destino. Por lo tanto, la dirección IP de origen no se almacena en caché. Puede habilitar el modo "flujo completo" para rastrear los hosts infectados con la ayuda del comando set mls flow full en el supervisor.

Para el modo híbrido, utilice el comando set mls flow full:

6500-sup(enable)set mls flow full

Configured IP flowmask is set to full flow.

Warning: Configuring more specific flow mask may dramatically

increase the number of MLS entries.

Para el modo de IOS nativo, utilice el comando mls flow ip full:

Router(config)#mls flow ip full

Cuando habilita el modo "flujo completo", se muestra una advertencia para indicar un aumento drástico de las entradas MLS. El impacto de las entradas de MLS aumentadas se justifica durante un período corto si su red ya está infestada con el gusano "Código rojo". El gusano hace que las entradas de MLS sean excesivas y aumenten.

Para ver la información recopilada, utilice estos comandos:

Para el modo híbrido, utilice el comando set mls flow full:

6500-sup(enable)set mls flow full

Configured IP flowmask is set to full flow.

Warning: Configuring more specific flow mask may dramatically

increase the number of MLS entries.

Para el modo Native IOS, utilice el comando mls flow ip full:

Router(config)#mls flow ip full

Cuando habilita el modo "flujo completo", se muestra una advertencia para indicar un aumento drástico de las entradas MLS. El impacto de las entradas de MLS aumentadas se justifica durante un período corto si su red ya está infestada con el gusano "Código rojo". El gusano hace que las entradas de MLS sean excesivas y aumenten.

Para ver la información recopilada, utilice estos comandos:

Para el modo híbrido, utilice el comando show mls ent:

6500-sup(enable)show mls ent

Destination-IP  Source-IP     Prot  DstPrt SrcPrt Destination-Mac   Vlan EDst

ESrc DPort     SPort     Stat-Pkts  Stat-Bytes  Uptime   Age

-------------- --------------- ----- ------ ------ ----------------- ---- ----

---- --------- --------- ---------- ----------- -------- --------

Nota: Todos estos campos se rellenan cuando están en modo "flujo completo".

Para el modo de IOS nativo, utilice el comando show mls ip:

Router#show mls ip

DstIP           SrcIP           Prot:SrcPort:DstPort  Dst i/f:DstMAC

--------------------------------------------------------------------

Pkts         Bytes       SrcDstPorts    SrcDstEncap Age   LastSeen

--------------------------------------------------------------------

Cuando determina la dirección IP de origen y el puerto de destino involucrados en el ataque, puede establecer MLS nuevamente en modo "sólo destino".

Para el modo híbrido utilice el comando set mls flow destination:

6500-sup(enable) set mls flow destination

Usage: set mls flow <destination|destination-source|full>

Para el modo de IOS nativo, utilice el comando mls flow ip destination:

Router(config)#mls flow ip destination

La combinación Supervisor (SUP) II/MSFC2 está protegida contra ataques porque el switching CEF se realiza en el hardware y se mantienen las estadísticas de NetFlow. Por lo tanto, incluso durante un ataque "Código rojo", si habilita el modo de flujo completo, el router no se conmuta, debido al mecanismo de conmutación más rápido. Los comandos para habilitar el modo de flujo completo y mostrar las estadísticas son los mismos tanto en el SUP I/MFSC1 como en el SUP II/MSFC2.

Técnicas de prevención

Utilice las técnicas enumeradas en esta sección para minimizar el impacto del gusano "Código rojo" en el router.

Bloqueo del tráfico al puerto 80

Si es factible en su red, la forma más sencilla de evitar el ataque "Código rojo" es bloquear todo el tráfico al puerto 80, que es el puerto conocido para WWW. Cree una lista de acceso para denegar los paquetes IP destinados al puerto 80 y aplicarla de forma entrante en la interfaz que se enfrenta al origen de la infección.

Reducción del uso de memoria de entrada ARP

La entrada ARP utiliza enormes cantidades de memoria cuando una ruta estática apunta a una interfaz de broadcast, como esta:

ip route 0.0.0.0 0.0.0.0 Vlan3

Cada paquete para la ruta predeterminada se envía a la VLAN3. Sin embargo, no se ha especificado ninguna dirección IP de salto siguiente, por lo que el router envía una solicitud ARP para la dirección IP de destino. El router de salto siguiente para ese destino responde con su propia dirección MAC, a menos que el ARP proxy esté inhabilitado. La respuesta del router crea una entrada adicional en la tabla ARP donde la dirección IP de destino del paquete se mapea a la dirección MAC del siguiente salto. El gusano "Código rojo" envía paquetes a direcciones IP aleatorias, lo que agrega una nueva entrada ARP para cada dirección de destino aleatoria. Cada nueva entrada ARP consume cada vez más memoria en el proceso de entrada ARP.

No cree una ruta estática predeterminada a una interfaz, especialmente si la interfaz se transmite (Ethernet/Fast Ethernet/GE/SMDS) o multipunto (Frame Relay/ATM). Cualquier ruta estática predeterminada debe apuntar a la dirección IP del router de salto siguiente. Después de cambiar la ruta predeterminada para apuntar a la dirección IP del siguiente salto, utilice el comando clear arp-cache para borrar todas las entradas ARP. Este comando corrige el problema de utilización de la memoria.

Utilizar switching de Cisco Express Forwarding (CEF)

Para reducir el uso de la CPU en un router IOS, cambie de conmutación Fast/Optimum/Netflow a conmutación CEF. Hay algunas advertencias para habilitar CEF. En la siguiente sección se analiza la diferencia entre CEF y fast switching, y se explican las implicaciones cuando se habilita CEF.

Cisco Express Forwarding vs. Fast Switching

Habilite CEF para aliviar el aumento de la carga de tráfico causado por el gusano "Código rojo". Las versiones 11.1( )CC, 12.0 y posteriores del software del IOS® de Cisco admiten CEF en las plataformas Cisco 7200/7500/GSR. El soporte para CEF en otras plataformas está disponible en Cisco IOS Software Release 12.0 o posterior. Puede investigar más a fondo con la herramienta Software Advisor.

A veces, no puede habilitar CEF en todos los routers debido a una de estas razones:

- Memoria insuficiente

- Arquitecturas de plataforma no admitidas

- Encapsulaciones de interfaz no admitidas

Comportamiento y consecuencias de el fast switching

Estas son las implicaciones cuando utiliza fast switching:

- Caché controlada por tráfico: la memoria caché está vacía hasta que el router conmuta los paquetes y llena la memoria caché.

- El primer paquete es process switched—El primer paquete es process-switched, porque la memoria caché está inicialmente vacía.

- Caché granular: la memoria caché se genera con una granularidad de la parte de entrada de la base de información de routing (RIB) más específica de una red principal. Si RIB tiene /24s para la red principal 131.108.0.0, la memoria caché se genera con /24s para esta red principal.

- /32 caché se utiliza—/32 caché se utiliza para equilibrar la carga para cada destino. Cuando la memoria caché equilibra la carga, la memoria caché se genera con /32 para esa red principal.

Nota: Estos dos últimos problemas pueden causar potencialmente una enorme caché que consumiría toda la memoria.

- Almacenamiento en caché en los principales límites de la red: con la ruta predeterminada, el almacenamiento en caché se realiza en los principales límites de la red.

- El Cache Ager: el cache ager se ejecuta cada minuto y verifica 1/20th (5 por ciento) de la memoria caché en busca de entradas sin usar en condiciones de memoria normales, y 1/4th (25 por ciento) de la memoria caché en condiciones de memoria baja (200k).

Para cambiar los valores anteriores, utilice el comando ip cache-ager-interval X Y Z, donde:

- X es <0-2147483> el número de segundos entre las ejecuciones ager. Predeterminado = 60 segundos.

- Y es <2-50> 1/(Y+1) de caché a antigüedad por ejecución (memoria baja). Valor predeterminado = 4.

- Z es <3-100> 1/(Z+1) de la memoria caché a la antigüedad por ejecución (normal). Valor predeterminado = 20.

Esta es una configuración de ejemplo que utiliza ip cache-ager 60 5 25.

Router#show ip cache

IP routing cache 2 entries, 332 bytes

27 adds, 25 invalidates, 0 refcounts

Cache aged by 1/25 every 60 seconds (1/5 when memory is low).

Minimum invalidation interval 2 seconds, maximum interval 5 seconds,

quiet interval 3 seconds, threshold 0 requests

Invalidation rate 0 in last second, 0 in last 3 seconds

Last full cache invalidation occurred 03:55:12 ago

Prefix/Length          Age    Interface     Next Hop

4.4.4.1/32        03:44:53    Serial1       4.4.4.1

192.168.9.0/24    00:03:15    Ethernet1    20.4.4.1

Router#show ip cache verbose

IP routing cache 2 entries, 332 bytes

27 adds, 25 invalidates, 0 refcounts

Cache aged by 1/25 every 60 seconds (1/5 when memory is low).

Minimum invalidation interval 2 seconds, maximum interval 5 seconds,

quiet interval 3 seconds, threshold 0 requests

Invalidation rate 0 in last second, 0 in last 3 seconds

Last full cache invalidation occurred 03:57:31 ago

Prefix/Length       Age       Interface       Next Hop

4.4.4.1/32-24           03:47:13  Serial1         4.4.4.1

4   0F000800

192.168.9.0/24-0        00:05:35  Ethernet1       20.4.4.1

14  00000C34A7FC00000C13DBA90800

Según la configuración de su caché ager, algunos porcentajes de las entradas de caché envejecen de su tabla de caché rápido. Cuando las entradas envejecen rápidamente, un mayor porcentaje de la tabla de caché rápido envejece y la tabla de caché se vuelve más pequeña. Como resultado, el consumo de memoria en el router se reduce. Una desventaja es que el tráfico continúa fluyendo para las entradas que se desactualizaron de la tabla de caché. Los paquetes iniciales son conmutados por proceso, lo que causa un pico corto en el consumo de CPU en entrada IP hasta que se construya una nueva entrada de caché para el flujo.

A partir de las versiones 10.3(8), 11.0(3) y posteriores del software del IOS de Cisco, la memoria caché IP ager se maneja de manera diferente, como se explica aquí:

- Los comandos ip cache-ager-interval e ip cache-invalidate-delay sólo están disponibles si el comando service internal se define en la configuración.

- Si el período entre las ejecuciones de invalidación de ager se establece en 0, el proceso ager se inhabilita por completo.

- El tiempo se expresa en segundos.

Nota: Cuando ejecuta estos comandos, aumenta el uso de la CPU del router. Utilice estos comandos sólo cuando sea absolutamente necesario.

Router#clear ip cache ?

A.B.C.D Address prefix

<CR>--> will clear the entire cache and free the memory used by it!

Router#debug ip cache

IP cache debugging is on

Ventajas de CEF

- La tabla de Base de información de reenvío (FIB) se basa en la tabla de routing. Por lo tanto, la información de reenvío existe antes de que se reenvíe el primer paquete. FIB también incluye entradas /32 para hosts LAN conectados de manera directa.

- La tabla Adyacencia (ADJ) contiene la información de reescritura de la capa 2 para los saltos siguientes y los hosts conectados directamente (una entrada ARP crea una adyacencia CEF).

- No hay un concepto de memoria caché ager con CEF para aumentar el rendimiento de la CPU. Se elimina una entrada FIB si se elimina una entrada de la tabla de ruteo.

Precaución: Una vez más, una ruta predeterminada que apunta a una interfaz de broadcast o multipunto significa que el router envía solicitudes ARP para cada nuevo destino. Las solicitudes ARP del router crean potencialmente una enorme tabla de adyacencia hasta que el router se queda sin memoria. Si CEF no puede asignar la memoria CEF/DCEF se inhabilita a sí mismo. Tendrá que volver a habilitar CEF/DCEF manualmente.

Ejemplo de Salida: CEF

A continuación, se muestra un ejemplo de salida del comando show ip cef summary, que muestra el uso de la memoria. Este resultado es una instantánea de un servidor de ruta Cisco 7200 con Cisco IOS Software Release 12.0.

Router>show ip cef summary

IP CEF with switching (Table Version 2620746)

109212 routes, 0 reresolve, 0 unresolved (0 old, 0 new), peak 84625

109212 leaves, 8000 nodes, 22299136 bytes, 2620745 inserts, 2511533

invalidations

17 load sharing elements, 5712 bytes, 109202 references

universal per-destination load sharing algorithm, id 6886D006

1 CEF resets, 1 revisions of existing leaves

1 in-place/0 aborted modifications

Resolution Timer: Exponential (currently 1s, peak 16s)

refcounts:  2258679 leaf, 2048256 node

Adjacency Table has 16 adjacencies

Router>show processes memory | include CEF

PID TTY  Allocated      Freed    Holding    Getbufs    Retbufs Process

73   0     147300       1700     146708          0          0 CEF process

84   0        608          0       7404          0          0 CEF Scanner

Router>show processes memory | include BGP

2   0    6891444    6891444       6864          0          0 BGP Open

80   0       3444       2296       8028          0          0 BGP Open

86   0     477568     476420       7944          0          0 BGP Open

87   0 2969013892  102734200  338145696          0          0 BGP Router

88   0   56693560 2517286276       7440     131160    4954624 BGP I/O

89   0      69280   68633812      75308          0          0 BGP Scanner

91   0    6564264    6564264       6876          0          0 BGP Open

101   0    7635944    7633052       6796        780          0 BGP Open

104   0    7591724    7591724       6796          0          0 BGP Open

105   0    7269732    7266840       6796        780          0 BGP Open

109   0    7600908    7600908       6796          0          0 BGP Open

110   0    7268584    7265692       6796        780          0 BGP Open

Router>show memory summary | include FIB

Alloc PC        Size     Blocks      Bytes    What

0x60B8821C        448          7       3136    FIB: FIBIDB

0x60B88610      12000          1      12000    FIB: HWIDB MAP TABLE

0x60B88780        472          6       2832    FIB: FIBHWIDB

0x60B88780        508          1        508    FIB: FIBHWIDB

0x60B8CF9C       1904          1       1904    FIB 1 path chunk pool

0x60B8CF9C      65540          1      65540    FIB 1 path chunk pool

0x60BAC004       1904        252     479808    FIB 1 path chun

0x60BAC004      65540        252   16516080    FIB 1 path chun

Router>show memory summary | include CEF

0x60B8CD84       4884          1       4884    CEF traffic info

0x60B8CF7C         44          1         44    CEF process

0x60B9D12C      14084          1      14084    CEF arp throttle chunk

0x60B9D158        828          1        828    CEF loadinfo chunk

0x60B9D158      65540          1      65540    CEF loadinfo chunk

0x60B9D180        128          1        128    CEF walker chunk

0x60B9D180        368          1        368    CEF walker chunk

0x60BA139C         24          5        120    CEF process

0x60BA139C         40          1         40    CEF process

0x60BA13A8         24          4         96    CEF process

0x60BA13A8         40          1         40    CEF process

0x60BA13A8         72          1         72    CEF process

0x60BA245C         80          1         80    CEF process

0x60BA2468         60          1         60    CEF process

0x60BA65A8      65488          1      65488    CEF up event chunk

Router>show memory summary | include adj

0x60B9F6C0        280          1        280    NULL adjacency

0x60B9F734        280          1        280    PUNT adjacency

0x60B9F7A4        280          1        280    DROP adjacency

0x60B9F814        280          1        280    Glean adjacency

0x60B9F884        280          1        280    Discard adjacency

0x60B9F9F8      65488          1      65488    Protocol adjacency chunk

Puntos a considerar

Cuando el número de flujos es grande, el CEF generalmente consume menos memoria que el fast switching. Si una memoria caché de fast switching ya está consumida, debe borrar la memoria caché ARP (a través del comando clear ip arp) antes de habilitar CEF.

Nota: Cuando borra la memoria caché, se produce un pico en la utilización de la CPU del router.

Preguntas frecuentes sobre "Código rojo" y sus respuestas

P. Utilizo NAT y experimento un uso de CPU del 100% en la entrada IP. Cuando ejecuto show proc cpu, mi uso de CPU es alto en el nivel de interrupción - 100/99 o 99/98. ¿Puede estar relacionado con "Código rojo"?

A. Recientemente se ha corregido un error de NAT de Cisco (CSCdu63623 (sólo clientes registrados) ) que implica escalabilidad. Cuando hay decenas de miles de flujos NAT (según el tipo de plataforma), el error causa un uso de CPU del 100% en el nivel de proceso o interrupción.

Para determinar si este bug es la razón, ejecute el comando show align y verifique si el router enfrenta errores de alineación. Si ve errores de alineación o accesos de memoria espurios, ejecute el comando show align un par de veces y vea si los errores están en aumento. Si el número de errores aumenta, los errores de alineación pueden ser la causa de la alta utilización de la CPU en el nivel de interrupción, y no el error de Cisco CSCdu63623 (sólo clientes registrados) . Para obtener más información, consulte Solución de problemas de accesos espurios y errores de alineación.

El comando show ip nat translation muestra el número de traducciones activas. El punto de fusión para un procesador de clase NPE-300 es de unas 20.000 a 40.000 traducciones. Este número varía según la plataforma.

Este problema de fusión fue observado anteriormente por un par de clientes, pero después de "Código rojo", más clientes han experimentado este problema. La única solución alternativa es ejecutar NAT (en lugar de PAT), de modo que haya menos traducciones activas. Si tiene un 7200, utilice un NSE-1 y reduzca los valores de tiempo de espera de NAT.

P. Ejecuto IRB y encuentro un uso elevado de la CPU en el proceso de entrada de HyBridge. ¿Por qué ocurre esto? ¿Está relacionado con el “Código rojo”?

A. El proceso HyBridge Input maneja cualquier paquete que el proceso IRB no pueda conmutar rápidamente. La incapacidad del proceso IRB para conmutar rápidamente un paquete puede deberse a:

- El paquete es un paquete de difusión.

- El paquete es un paquete multicast.

- Se desconoce el destino y se debe activar ARP.

- Hay BPDU de árbol de expansión.

HyBridge Input encuentra problemas si hay miles de interfaces punto a punto en el mismo grupo de bridges. HyBridge Input también encuentra problemas (pero en menor medida) si hay miles de VS en la misma interfaz multipunto.

¿Cuáles son las posibles razones para los problemas con IRB? Suponga que un dispositivo infectado con "Código rojo" escanea las direcciones IP.

- El router necesita enviar una solicitud ARP para cada dirección IP de destino. Se produce una inundación de solicitudes ARP en cada VC del grupo de bridges para cada dirección que se escanea. El proceso ARP normal no causa un problema de CPU. Sin embargo, si hay una entrada ARP sin una entrada de bridge, el router inunda los paquetes destinados a las direcciones para las cuales ya existen entradas ARP. Puede causar utilización intensa de la CPU ya que el tráfico está conmutado por proceso. Para evitar el problema, aumente el tiempo de envejecimiento del puente (300 segundos o 5 minutos por defecto) para que coincida o exceda el tiempo de espera ARP (4 horas por defecto) de modo que los dos temporizadores estén sincronizados.

- La dirección que el host final intenta infectar es una dirección de broadcast. El router realiza el equivalente a una transmisión de subred que necesita ser reiterada por el proceso de entrada Hybridge. Esto no sucede si el comando no ip directed-broadcast está configurado. Desde la versión 12.0 del software del IOS de Cisco, el comando ip directed-broadcast se inhabilita de forma predeterminada, lo que hace que se descarten todas las difusiones dirigidas por IP.

- Esta es una nota secundaria, no relacionada con "Código rojo", y relacionada con las arquitecturas IRB:

Los paquetes de multidifusión y difusión de capa 2 deben replicarse. Por lo tanto, un problema con los servidores IPX que se ejecutan en un segmento de broadcast puede hacer que el link se desactive. Puede utilizar políticas de suscriptor para evitar el problema. Para obtener más información, refiérase a Soporte de Bridge de Línea de Suscriptor Digital (xDSL). También debe considerar las listas de acceso de puente, que limitan el tipo de tráfico permitido para pasar a través del router.

- Para aliviar este problema IRB, puede utilizar varios grupos de puente y asegurarse de que haya un mapping uno a uno para BVI, subinterfaces y VC.

- RBE es superior que IRB dado que evita que los puentes se apilen todos juntos. Puede migrar a RBE desde IRB. Estos errores de funcionamiento de Cisco inspiran esta migración:

- CSCdr11146 (sólo clientes registrados)

- CSCdp18572 (sólo clientes registrados)

- CSCds40806 (sólo clientes registrados)

P. El uso de mi CPU es alto en el nivel de interrupción y recibo vacios si intento un show log. El ritmo de tráfico además es un poco más alto de lo normal. ¿Cuál es la razón para esto?

A. A continuación se muestra un ejemplo del resultado del comando show logging:

Router#show logging

Syslog logging: enabled (0 messages dropped, 0 flushes, 0 overruns)

^

this value is non-zero

Console logging: level debugging, 9 messages logged

Compruebe si inicia sesión en la consola. Si es así, verifique si hay solicitudes HTTP de tráfico. A continuación, verifique si hay alguna lista de acceso con palabras clave de registro o depuraciones que observen flujos IP específicos. Si los vaciados están en aumento, puede ser porque la consola, normalmente un dispositivo en baudios 9600, no puede manejar la cantidad de información recibida. En este escenario, el router inhabilita las interrupciones y no hace nada más que procesar los mensajes de la consola. La solución es inhabilitar el registro de la consola o eliminar cualquier tipo de registro que realice.

P. Puedo ver numerosos intentos de conexión HTTP en mi router IOS que ejecuta un servidor ip http. ¿Es por la búsqueda del gusano “Código rojo”?

R. "Código rojo" puede ser la razón aquí. Cisco recomienda que inhabilite el comando ip http server en el router IOS para que no tenga que lidiar con numerosos intentos de conexión de hosts infectados.

Soluciones alternativas

Hay varias soluciones alternativas que se discuten en la sección Advertencias que discuten el gusano "Código rojo". Consulte las recomendaciones para las soluciones temporales.

Otro método para bloquear el gusano "Código rojo" en los puntos de ingreso a la red utiliza reconocimiento de aplicaciones basadas en red (NBAR) y listas de control de acceso (ACL) dentro del software IOS en los routers Cisco. Utilice este método junto con los parches recomendados para los servidores IIS de Microsoft. Para obtener más información sobre este método, consulte Uso de NBAR y ACL para bloquear el gusano "Código rojo" en los puntos de entrada de red.

Información Relacionada

- Resolución de problemas de la memoria

- Resolución de problemas de fuga de memoria intermedia

- Resolución de problemas por uso excesivo de las CPU de los routers de Cisco

- Resolución de problemas por averías del router

- Resolución de problemas de notas técnicas - Routers

- Resolución de problemas del router

- Soporte Técnico y Documentación - Cisco Systems