简介
本文档介绍 Cisco IOS® 软件中的嵌入式数据包捕获 (EPC) 功能。
先决条件
要求
本文档没有任何特定的要求。
使用的组件
本文档中的信息基于以下软件和硬件版本:
- Cisco IOS版本12.4(20)T或更高版本
- Cisco IOS XE版本15.2(4)S - 3.7.0或更高版本
本文档中的信息都是基于特定实验室环境中的设备编写的。本文档中使用的所有设备最初均采用原始(默认)配置。如果您的网络处于活动状态,请确保您了解所有命令的潜在影响。
背景信息
启用后,路由器会捕获发送和接收的数据包。 数据包存储在DRAM中的缓冲区中,在重新加载过程中不会持续存在。 捕获数据后,可以在路由器的摘要或详细视图中查看该数据。
此外,还可以将数据导出为数据包捕获(PCAP)文件,以便进一步检查。 该工具在执行模式下配置,被视为临时帮助工具。 因此,工具配置不存储在路由器配置中,并且在系统重新加载后不会保持不变。
数据包捕获配置生成器和分析器工具可供Cisco客户用于帮助配置、捕获和提取数据包捕获。
Cisco IOS配置示例
基本EPC配置
- 定义捕获缓冲区,它是存储捕获数据包的临时缓冲区。
- 定义缓冲区时,可以选择各种选项,例如大小、最大数据包大小和循环/线性:
monitor capture buffer BUF size 2048 max-size 1518 linear
- 过滤器适用于将捕获限制为所需流量。在配置模式下定义访问控制列表(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
- 定义捕获点,用于定义捕获发生的位置。
- 捕获点还定义捕获是IPv4还是IPv6,以及交换路径(进程与cef)在哪个:
monitor capture point ip cef POINT fastEthernet 0 both
- 将缓冲区附加到捕获点:
monitor capture point associate POINT BUF
- 开始捕获:
monitor capture point start POINT
- 捕获现在处于活动状态。允许收集必要数据。
- 停止捕获:
monitor capture point stop POINT
- 检查设备上的缓冲区:
show monitor capture buffer BUF dump
注意:此输出仅显示数据包捕获的十六进制转储。为了便于人们阅读,有两种方法。
从路由器导出缓冲区以进行进一步分析:
monitor capture buffer BUF export tftp://10.1.1.1/BUF.pcap
上述方法并不总是实用,因为它要求对路由器进行T/FTP访问。在这种情况下,请复制十六进制转储并使用任何在线十六进制pcap转换器来查看文件。
- 收集完必要的数据后,删除捕获点和捕获缓冲区:
no monitor capture point ip cef POINT fastEthernet 0 both
no monitor capture buffer BUF
其他Cisco IOS配置信息
- 在早于Cisco IOS 15.0(1)M版的版本中,缓冲区大小限制为512K。
- 在早于Cisco IOS 15.0(1)M版的版本中,捕获的数据包大小限制为1024字节。
- 数据包缓冲区存储在DRAM中,在重新加载后不会一直存在。
- 捕获配置不存储在NVRAM中,在重新加载后也不会持续存在。
- 可以定义捕获点以在cef或进程交换路径中捕获。
- 捕获点可以定义为仅在接口上捕获或全局捕获。
- 当以PCAP格式导出捕获缓冲区时,不会保留L2信息(例如以太网封装)。
- 有关本部分中所用命令的详细信息,请参阅搜索命令最佳实践。
基本IP流量导出配置
IP流量导出是导出多个并发WAN或LAN接口上收到的IP数据包的另一种方法。
1. 在配置模式下,定义IP流量导出配置文件。
Device(config)# ip traffic-export profile mypcap mode capture
2. 在配置文件中配置双向流量。
Device(config-rite)# bidirectional
3.退出。
4. 为导出的流量指定接口。
Device(config-if)# interface GigabitEthernet 0/1
5. 在接口上启用IP流量导出。
Device(config-if)# ip traffic-export apply mypcap size 10000000
6. 退出。
7. 开始捕获。捕获现在处于活动状态。允许收集必要数据。
Device# traffic-export interface GigabitEthernet 0/1 start
8. 停止捕获。
Device# traffic-export interface GigabitEthernet 0/1 stop
9. 将捕获导出到外部TFTP服务器。
Device# traffic-export interface GigabitEthernet 0/1 copy tftp://<TFTP_Address>/mypcap.pcap
10. 一旦收集了必要数据,就删除配置文件。
Device(config)# no ip traffic-export profile mypcap
IP流量导出缺点
与EPC方法相比,IP流量导出具有以下缺点:
- 导出捕获流量的接口必须是以太网接口。
- 不支持IPv6。
- 没有第2层信息,只有第3层及更高层信息。
Cisco IOS XE配置示例
Cisco IOS XE版本3.7 ― 15.2(4)S中引入了嵌入式数据包捕获功能。 捕获的配置与Cisco IOS不同,因为它添加了更多功能。
基本EPC配置
- 定义捕获发生的位置:
monitor capture CAP interface GigabitEthernet0/0/1 both
- 关联过滤器。过滤器是内联指定的,或者可以引用ACL或类映射:
monitor capture CAP match ipv4 protocol tcp any any limit pps 1000000
- 开始捕获:
monitor capture CAP start
- 捕获现在处于活动状态。允许它收集必要数据。
- 停止捕获:
monitor capture CAP stop
- 在摘要视图中检查捕获:
show monitor capture CAP buffer brief
- 在详细视图中检查捕获:
show monitor capture CAP buffer detailed
- 此外,以PCAP格式导出捕获以供进一步分析:
monitor capture CAP export tftp://10.0.0.1/CAP.pcap
- 收集完必要的数据后,删除捕获:
no monitor capture CAP
其他信息
- 捕获在物理接口、子接口和隧道接口上执行。
- 当前不支持基于网络的应用识别(NBAR)的过滤器(在类映射下使用
match protocol
命令)。
- 有关本部分中所用命令的详细信息,请参阅搜索命令最佳实践。
验证
当前没有可用于此配置的验证过程。
故障排除
对于在Cisco IOS XE®上运行的EPC,此debug命令用于确保EPC设置正确:
debug epc provision
debug epc capture-point
相关信息