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

Embedded Packet Capture (EPC)的更多相关文章

  1. 无Root抓包:Packet Capture 1.2.3

    无Root抓包:Packet Capture 1.2.3 http://www.coolapk.com/apk/app.greyshirts.sslcapture

  2. configure: error: The LBL Packet Capture Library, libpcap, was not found!

    configure: error:  The LBL Packet Capture Library, libpcap, was not found! yum install libpcap*

  3. 手机抓包HTTPS (Fiddler & Packet Capture)

    手机抓包HTTPS (Fiddler & Packet Capture) 以前写了一个小游戏(消灭病毒)的刷金币小脚本,使用需要获取openid ,就需要抓微信的HTTPS包 一直都是用Fid ...

  4. packet Capture 手机抓包工具

    packet Capture packet Capture 是一款免root的app, 运行在安卓平台上,用于捕获http/https网络流量嗅探的应用程序 特点: 捕获网络数据包,并记录太慢,使用中 ...

  5. packet capture

    1.下载地址:https://www.coolapk.com/apk/app.greyshirts.sslcapture

  6. Cisco IOS Debug Command Reference Command E through H

    debug eap through debug he-module subslot periodic debug eap : to display information about Extensib ...

  7. ISR4K-IOS XE EPC

    1.该操作在ISR4K的平台操作,简单的执行了一个控制层面的抓包 配置命令: R01#monitor capture A control-plane both R01#monitor capture ...

  8. LTE Module User Documentation(翻译8)——核心网(EPC)

    LTE用户文档 (如有不当的地方,欢迎指正!) 14 Evolved Packet Core (EPC)   我们现在讲解如何编写一个仿真程序——除了 LTE 无线接入网外,还允许仿真 EPC. EP ...

  9. [转]Getting a Packet Trace

    src:https://developer.apple.com/library/mac/qa/qa1176/_index.html Technical Q&A QA1176 Getting a ...

随机推荐

  1. 求int型正整数在内存中存储时1的个数 && int型的数到底最大是多少?

    输入一个int型的正整数(十位数之内!嘞!),计算出该int型数据在内存中存储时1的个数. #include<bits/stdc++.h> using namespace std; int ...

  2. MyBatis-config.xml示例

    <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE configuration PUBLIC ...

  3. 【转载】SpringMVC配置文件详解

    转自:https://my.oschina.net/happyBKs/blog/691502 web.xml文件是web应用的部署描述. 在上一节的springMVC示例中 ,idea下的Maven- ...

  4. AcWing 847. 图中点的层次

    队列 #include <cstdio> #include <cstring> #include <iostream> #include <algorithm ...

  5. vue环境搭建及单页面标签切换实例

    复习 """ 1.指令: v-once: <p v-once>{{ msg }}</p> v-cloak: 防止页面加载抖动 v-show:绑定的 ...

  6. 莫队或权值线段树 或主席树 p4137

    题目描述 有一个长度为n的数组{a1,a2,…,an}.m次询问,每次询问一个区间内最小没有出现过的自然数. 输入格式 第一行n,m. 第二行为n个数. 从第三行开始,每行一个询问l,r. 输出格式 ...

  7. Django之form表单操作

    小白必会三板斧 from django.shortcuts import render,HttpResponse,redirect HttpRespone:返回字符串 render:返回html页面 ...

  8. 046_使用Scanner获得键盘输入 047_控制语句介绍 048_控制语句_if单选择结构 049_ifelse双选择结构 050_ifelseifelse多选择结构

    046_使用Scanner获得键盘输入 package test_package;import java.util.Scanner;/** * 测试获得键盘输入 * @author * */publi ...

  9. 分析AppClassLoader,ExtClassLoader 和URLClassLoader 的关系

    测试代码: class Hello { public String str = "Hello World"; public void fun() { System.out.prin ...

  10. Chinese Window Lattice And CSS

    谁向云端着此亭,檐前树木映窗棂.-- 释绍嵩<陪赵知府登桃岭山亭> (image from 中国窗棂) The traditional Chinese window lattice has ...