取消
显示结果 
搜索替代 
您的意思是: 
cancel
13646
查看次数
20
有帮助
8
评论
ruihache
Cisco Employee
Cisco Employee
Cisco IOS/IOS-XE 嵌入式抓包(Embedded Packet Capture)使用指南
背景介绍
在对cisco路由器进行排错时,难免会遇上需要在接口抓包的操作,但有时由于可用接口数量有限,没有合适的交换机或者无法断开接口网线等情况,使得抓包这一操作很难实现。cisco路由器提供了嵌入式抓包(Embedded Packet Capture)的功能,当该功能启用后,路由器会捕捉指定接口收发的数据包,并存储在DRAM的buffer中(因此重启后数据会消失),捕捉到数据包后,有两种方式可以查看,第一种是直接在路由器上通过show命令查看,另一种是将抓包文件,通常是PCAP文件导出路由器通过抓包工具如wireshark等进行分析。嵌入式抓包为暂时性功能,无法存储到路由器配置中,因此重启后会消失。
功能需求
嵌入式抓包功能支持版本
Cisco IOS Release 12.4(20)T or later
Cisco IOS-XE Release 15.2(4)S - 3.7.0 or later
配置详解
IOS 配置详解
该配置适用于IOS系统中如C2900,C3900系列等。
1.首先定义一个缓存名称,这个缓存将会存储所有抓到的包,一旦生成,可以定义的参数有许多,包括缓存大小,最大包尺寸等,线性或者循环存储方式等。
monitor capture buffer BUF size 2048 max-size 1518 linear ## 定义buffer名称为BUF,大小2048字节,最大包1518,线性存储
2.可以通过ACL来过滤需要抓取的数据包。
ip access-list extended BUF-FILTER
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 ## 将BUF-FILTER与BUF绑定
3.定义第二个量,抓取点,表示在哪个接口抓取,同事可以定义抓取IPv4或IPv6的包和转发路径(进程转发或cef转发)。
monitor capture point ip cef POINT fastEthernet 0 both ##定义POINT在fastEthernet 0的收发方向同时抓取cef转发的数据包
4.将buffer与point绑定。
monitor capture point associate POINT BUF ##将抓取点POINT与BUF进行绑定
5.开始抓取
monitor capture point start POINT
6.稍等片刻,停止抓取
monitor capture point stop POINT
7.在路由器上观察采集到的数据包
show monitor capture buffer BUF dump
8.导出数据包文件
monitor capture buffer BUF export tftp://10.1.1.1/BUF.pcap
如果路由器没有FTP或者TFTP等功能,可以复制路由器上show出来的信息,拷贝到新建的文本文件然后利用hex-pcap转换分析。
9.删除抓包功能
no monitor capture point ip cef POINT fastEthernet 0 both
no monitor capture buffer BUF
IOS-XE 配置详解
该配置适用于IOS-XE系统,包括ISR4000,ASR1000等。相较于IOS,配置会简洁一些。
1.定义抓包点。
monitor capture CAP interface GigabitEthernet0/0/1 both
2.过滤抓包,可以配置命令行中或者绑定指定的ACL和class-map。
monitor capture CAP match ipv4 protocol tcp any any
3.开始抓包。
monitor capture CAP start
4.稍等片刻,停止抓包。
monitor capture CAP stop
5.查看抓取的数据包。
show monitor capture CAP buffer brief
show monitor capture CAP buffer detailed
6.导出路由器进行分析。
monitor capture CAP export ftp://10.0.0.1/CAP.pcap
7.删除抓包
no monitor capture CAP
Note
其实不关闭抓包。也可以通过show命令实时观察数据包
功能排错
当功能不好用时,可以通过以下命令来进行排错
检查配置参数是否正确:
show monitor capture xxx parameter
对功能进行debug(会对设备性能产生影响,慎用):
debug epc provision
debug epc capture-point
参考文献
Embedded Packet Capture for Cisco IOS and IOS-XE Configuration Example
https://www.cisco.com/c/en/us/support/docs/ios-nx-os-software/ios-embedded-packet-capture/116045-productconfig-epc-00.html?dtid=osscdc000283
Embedded Packet Capture - Cisco IOS-XE
https://www.cisco.com/c/en/us/td/docs/ios-xml/ios/epc/configuration/xe-3s/epc-xe-3s-book.html
评论
LinusT
Cisco Employee
Cisco Employee
学习了,ruihache,谢谢
liukaiyang
Level 1
Level 1
学习了 谢谢!
wilson_yong
Community Member
不错,支持一下。
moxiuli
Level 9
Level 9
读嵌入式抓包
请教一下:该操作是否只能抓取上CPU的流量呢?是否可以抓取到所有的流量呢?
谢谢
z328443036
Level 1
Level 1
好文!感谢分享!
avic
Level 9
Level 9
只抓取上CPU的流量呢?
2095316477
Level 1
Level 1
个人习惯还是 镜像,毕竟如果在设备上直接嵌入式抓包,担心会影响其他应用。
感谢楼主分享,学习了~
入门指南

使用上面的搜索栏输入关键字、短语或问题,搜索问题的答案。

我们希望您在这里的旅程尽可能顺利,因此这里有一些链接可以帮助您快速熟悉思科社区:









快捷链接