6 de enero de 2011

EPC - Captura de tráfico en IOS

Cisco IOS Embedded Packet Capture (EPC) es un feature de Cisco IOS que permite capturar tráfico que fluye a través, hacia o desde un router Cisco. Su utilidad más notoria es la posibilidad de realizar capturas de tráfico en aquellos puntos de la red en los que la instalación de un analizador de protocolos (sniffer) no es posible o práctico.
Características:

  • Captura tráfico IPv4 e IPv6 que es forwardeado vía CEF.
  • La captura se almacena en un buffer de memoria RAM que puede ser definido en cuanto a memoria y tipo.
  • Se administra utilizando comandos EXEC de nivel privilegiado.
  • La captura puede visualizarse en el mismo router o exportarse para ser revisada en un analizador de tráfico como Wireshark.
Disponibilidad del feature:
  • Soportado en plataformas ISR (800, 1800, 1900, 2800, 2900, 3800, 3900) y routers de la serie 7200.
  • Disponible a partir de IOS 12.4(20)T.
Opciones:
  • Hay dos posibilidades de buffer de memoria RAM: lineal (define una capacidad y cuando se completa cesa la captura) o circular (define una capacidad y cuando se completa se comienzan a descartar los datos más antiguos).
  • Se puede definir una cantidad máxima de bytes a capturar por paquete.
  • La captura de paquetes puede ser filtrada utilizando ACLs.
  • Se puede definir una tasa máxima de captura o un período de muestreo.
  • El buffer de memoria puede ser controlado a través de comandos que permiten vaciarlo, inicar o terminar la captura, mostrar la captura, etc.
  • Se puede capturar tráfico entrante o saliente a través de las interfaces.
  • La captura puede ser visualizada en formato ASCII o hexadecimal por CLI, o se puede exportar en formato de archivo PCAP.
Un ejemplo de activación del feature:
A modo de ejemplo vamos a definir una captura de tráfico con las siguientes características:
  • Definiré un buffer de memoria lineal llamado CAPTURA de 1 MB de capacidad (el default es 256KB), y que almacenará los primeros 512 B de cada paquete (el default es 64 B).
  • Filtraré el tráfico para capturar exclusivamente tráfico http.
  • Definiré un punto de captura llamado PUNTO, que será la interfaz FastEthernet 0/0, donde capturaré el tráfico entrante o saliente a través de esa interfaz.
  • Luego aplicaré la captura al punto de captura que definí en el paso anterior.

Router#monitor capture buffer CAPTURA size 1024 max-size 512 linear
Router#configure terminal

Router(config)#access-list 125 permit tcp any any eq 80
Router(config)#access-list 125 permit tcp any 80 any
Router(config)#exit
Router#monitor capture buffer CAPTURA filter access-list 125
Router#monitor capture point ip cef PUNTO FastEthernet 0/0 both

Router#monitor capture point associate PUNTO CAPTURA


A continuación se debe dar inicio a la captura. Para esta tarea se utiliza un conjunto de comandos específicos que permiten administrar el buffer de memoria:
Router#monitor capture point start PUNTO
Router#monitor capture point stop PUNTO
Router#show monitor capture buffer CAPTURA
Router#monitor capture buffer CAPTURA clear


Hay comandos de monitoreo específicos para esta operación:
Router#show monitor capture buffer all parameter
Router#show monitor capture point all


Como dije antes, el resultado de la captura puede ser exportado en formato PCAP para luego poder ser visualizado utilizando Wireshark:
Router#monitor capture buffer CAPTURA export tftp://192.168.100.100/captura.cap


Enlaces de referencia:

¿Tenés alguna información o comentario para aportar en este tema....?
Perfecto!!!! agregá un comentario con el detalle.
Muchas gracias.
Oscar Gerometta

3 comentarios:

  1. Gracias por la información, muy util para garantizar la seguridad de la red y la información que transita por la misma.

    ResponderBorrar
  2. buenas noches, no puede traer problemas de memoria por mas que definamos el tamaño del buffer? una vez que este se completa si sigue pasando trafico que definimos en la ACL no va a querer almacenarlo en la memoria del dispositivo?

    ResponderBorrar
    Respuestas
    1. Precisamente, la definición de un tamaño de buffer permite establecer un límite para el almacenamiento de la información de manera tal de impedir el uso excesivo de memoria.
      Una vez que el buffer de memoria se complete, comenzará a borrar las entradas más viejas para dejar lugar a las que se van generando.

      Borrar

Gracias por tu comentario.
En este blog los comentarios están moderados, por lo que su publicación está pendiente hasta la revisión del mismo.