zoukankan      html  css  js  c++  java
  • Embedded Packet Capture (EPC)

    Embedded Packet Capture (EPC)是一个很好的抓包工具,在排障的时候,需要在线抓包的情况下,是一个非常好的选择。

    EPC在IOS和IOS-XE都是支持,不过,不同平台下有版本的限制。

    1、IOS:需要在12.4(20)T及之后的版本支持

    2、IOS-XE:需要在15.2(4)S - 3.7.0 及之后的版本

    如下配置示例,简单记录了IOS和IOS-XE的EPC不同配置:

    关于IOS的EPC

    配置步骤:

    1、定义一个“capture buffer”,这是一个临时的buffer,给抓取的数据使用,当定义buffer的时候,有各种参数可以定义,例如:buffer大小(size),最大报文大小(max packet size),capture buffer的模式【这里分为2中,一种是linear(称为“线性模式”吧,当buffer满了,丢弃新的数据包),另一种是circular(称为“循环模式”吧,当buffer满了,丢弃旧的数据包)。】

    2、可以定义一个ACL去匹配对应的流量。

    3、定义一个“capture point”,定义哪个位置的流量会被抓取,抓取的方向是in,out,还是both,还可以定义是发生在IPv4还是IPv6,或者交换方式是process还是CEF。

    4、为“capture point”关联buffer。

    5、开启capture,开启之后,就可以抓取报文了。

    6、待抓取结束,停止capture。

    配置示例:

    monitor capture buffer BUF size 2048 max-size 1518 linear <<<<<<定义一个名为BUG的buffer,buffer大小2MB,最大报文1518 Byte,当buffer满了,丢弃抓取的数据包。

    ip access-list extended BUF-FILTER <<<<<<定义流量的src&dst地址

      permit ip host 192.168.1.1 host 172.16.1.1

      permit ip host 172.16.1.1 host 192.168.1.1

    monitor capture buffer BUF filter access-list BUF-FILTER  <<<<<<关联ACL到BUF

    monitor capture point ip cef P fastethernet 0 both <<<<<<定义要抓取的接口,方向,交换方式

    monitor capture point associate P BUF <<<<<<定义一个名为“P”的capture point并关联buffer参数

    monitor capture point start P  <<<<<<开启monitor capture

    ....            <<<<<<抓取过程

    monitor capture point stop P <<<<<<停止抓取

    直接在设备上查看抓取的信息:(但是看到的是16进制的方式)

    show monitor capture buffer BUF dump

    我们可以通过如下方式去查看:

    1、导出为wireshark可读文件(通过FTP/TFTP)。

    monitor capture buffer BUF export tftp://10.1.1.1/BUF.pcap

    其他:当信息收集完毕之后,删除capture:

    no monitor capture point ip cef P fastethernet 0 both

    no monitor capture buffer BUF

    注意:在IOS 15.0(1)M之前,buffer size被限制为512K,报文大小被限制为1024 Byte。抓取的信息存在DRAM中,不能存到NVRAM中,且重启后消失。另外,可以定义在某接口抓取或者全局抓取。

    关于IOS-XE的EPC

    配置步骤如下:

    1、定义抓取的位置。

    2、关联一个过滤信息,这里可以直接指定,也可以跟ACL或者route-map。

    3、开启抓取。

    ...

    4、停止抓取。

    5、查看抓取的摘要信息或详细信息。

    6、可以到处抓取的信息。

    7、操作完毕,移除capture。

    配置示例:

    monitor capture C interface GigabitEthernet 0/0/1 both

    monitor capture C match ipv4 protocol tcp any any

    monitor capture C start

    ...

    monitor capture C stop

    查看抓取的信息:

    show monitor capture C buffer brife

    show monitor capture C buffer detailed

    导出抓取的文件:

    monitor capture C export tftp://10.0.0.1/C.pcap

    移除capture:

    no monitor capture C

    注意:capture可以在物理接口,子接口和tunnel接口执行;目前不支持NBAR。

    排查IOS-XE的EPC配置,如下debug可以确保正确的设置EPC:

    debug epc provision

    debug epc capture-point

    相关链接1:Embedded Packet Capture Configuration Guide, Cisco IOS Release 15M&T

    https://www.cisco.com/c/en/us/td/docs/ios-xml/ios/epc/configuration/15-mt/epc-15-mt-book/nm-packet-capture.html?referring_site=RE&pos=3&page=https://www.cisco.com/c/en/us/support/docs/ios-nx-os-software/ios-embedded-packet-capture/116045-productconfig-epc-00.html

    相关链接2:Embedded Packet Capture Configuration Guide, Cisco IOS XE Release 3S

    https://www.cisco.com/c/en/us/td/docs/ios-xml/ios/epc/configuration/xe-3s/epc-xe-3s-book.html?referring_site=RE&pos=2&page=https://www.cisco.com/c/en/us/support/docs/ios-nx-os-software/ios-embedded-packet-capture/116045-productconfig-epc-00.html

    好好学习,天天向上!
  • 相关阅读:
    CSS hack
    字符串中常用的方法
    排序算法
    拾遗
    数组类型检测
    数组常用的方法
    go 文件服务器(标准库) 添加关机,睡眠,退出功能
    go cmd 交互 初始化执行某些命令
    go 内网IP及外网IP获取
    go 快排实现
  • 原文地址:https://www.cnblogs.com/MomentsLee/p/9904539.html
Copyright © 2011-2022 走看看