简介
本文档介绍捕获完全在思科统一计算系统(UCS)外的流量并将其定向到在UCS内运行嗅探器工具的虚拟机(VM)的步骤。捕获的流量的源和目标在UCS之外。捕获可以在直接连接到UCS的物理交换机上启动,也可以在几跳之外启动。
先决条件
要求
Cisco 建议您了解以下主题:
- UCS
- VMware ESX 4.1版或更高版本
- 封装远程交换机端口分析器(ERSPAN)
使用的组件
本文档中的信息基于以下软件和硬件版本:
- 运行12.2(18)ZYA3c的Cisco Catalyst 6503
- 运行2.2(3e)的Cisco UCS B系列
- VMWare ESXi 5.5内部版本1331820
本文档中的信息都是基于特定实验室环境中的设备编写的。本文档中使用的所有设备最初均采用原始(默认)配置。如果您使用的是真实网络,请确保您已经了解所有命令的潜在影响。
背景信息
UCS没有远程SPAN(RSPAN)功能,无法从连接的交换机接收SPAN流量并将其定向到本地端口。因此,在UCS环境中实现此目标的唯一方法是在物理交换机上使用封装RSPAN(ERSPAN)功能,并使用IP将捕获的流量发送到虚拟机。在某些实施中,运行嗅探器工具的VM不能有IP地址。本文档说明嗅探器VM具有IP地址时所需的配置以及没有IP地址的场景。此处的唯一限制是嗅探器VM需要能够从发送到它的流量中读取GRE/ERSPAN封装。
配置
网络图
本文档已考虑此拓扑:
连接到Catalyst 6500的GigabitEthernet1/1的PC正在受到监控。GigabitEthernet1/1上的流量被捕获并发送到服务器1上Cisco UCS内部运行的嗅探器VM。6500交换机上的ERSPAN功能捕获流量,使用GRE将其封装,然后将其发送到嗅探器VM的IP地址。
具有IP地址的嗅探器虚拟机
注意:本节中介绍的步骤也可用于嗅探器在UCS刀片上的裸机服务器中运行,而不是在VM上运行的场景。
当嗅探器VM可以具有IP地址时,需要执行以下步骤:
- 在UCS环境中配置嗅探器VM,使用可从6500访问的IP地址
- 在虚拟机内运行嗅探器工具
- 在6500上配置ERSPAN源会话,并将捕获的流量直接发送到VM的IP地址
6500交换机上的配置步骤:
CAT6K-01(config)#monitor session 1 type erspan-source
CAT6K-01(config-mon-erspan-src)#source interface gi1/1
CAT6K-01(config-mon-erspan-src)#destination
CAT6K-01(config-mon-erspan-src-dst)#ip address 192.0.2.2
CAT6K-01(config-mon-erspan-src-dst)#origin ip address 192.0.2.1
CAT6K-01(config-mon-erspan-src-dst)#erspan-id 1
CAT6K-01(config-mon-erspan-src-dst)#exit
CAT6K-01(config-mon-erspan-src)#no shut
CAT6K-01(config-mon-erspan-src)#end
在本例中,嗅探器VM的IP地址为192.0.2.2
嗅探器VM,无IP地址
当嗅探器VM不能有IP地址时,需要执行以下步骤:
- 在UCS环境中配置嗅探器VM
- 在虚拟机内运行嗅探器工具
- 创建可在同一主机中具有IP地址的第二个VM,并使用可从6500访问的IP地址配置该VM
- 将VMWare vSwitch上的端口组配置为混合模式
- 在6500上配置ERSPAN源会话,并将捕获的流量发送到第二个VM的IP地址
以下步骤显示VMWare ESX上所需的配置:如果已配置端口组,请直接转到步骤2。
1.创建虚拟机端口组,并为其分配两个虚拟机
- 导航至“网络”选项卡,然后单击“vSphere标准交换机”下的“添加网络”
- 将物理接口(vmnic)分配给端口组,如本图所示。
2.将端口组配置为混杂模式,如图所示。
- 端口组现在必须显示在“网络”选项卡下
- 单击“属性”
- 转到“安全”选项卡,将“混杂模式”设置更改为“接受”,如下图所示
3.从“虚拟机设置”部分将两个虚拟机分配给端口组。
4.两个虚拟机必须立即显示在“网络”选项卡下的端口组中。
在本示例中,具有IP的VM是具有IP地址的第二个VM,而嗅探器VM是具有嗅探器工具且没有IP地址的VM。
5.这显示了6500交换机上的配置步骤:
CAT6K-01(config)#monitor session 1 type erspan-source
CAT6K-01(config-mon-erspan-src)#source interface gi1/1
CAT6K-01(config-mon-erspan-src)#destination
CAT6K-01(config-mon-erspan-src-dst)#ip address 192.0.2.3
CAT6K-01(config-mon-erspan-src-dst)#origin ip address 192.0.2.1
CAT6K-01(config-mon-erspan-src-dst)#erspan-id 1
CAT6K-01(config-mon-erspan-src-dst)#exit
CAT6K-01(config-mon-erspan-src)#no shut
CAT6K-01(config-mon-erspan-src)#end
在本例中,第二个VM(具有IP的VM)的IP地址为192.0.2.3。
通过此配置,6500封装捕获的数据包,并使用IP地址将其发送到虚拟机。VMWare vSwitch上的混杂模式使嗅探器VM也能查看这些数据包。
故障场景
本节介绍在物理交换机上使用本地SPAN功能而不是ERSPAN功能时的常见故障场景。此拓扑在以下位置考虑:
从PC A到PC B的流量使用本地SPAN功能进行监控。SPAN流量的目的地被定向到连接到UCS交换矩阵互联(FI)的端口。
带有嗅探器工具的虚拟机在服务器1的UCS内运行。
以下是6500交换机上的配置:
CAT6K-01(config)#monitor session 1 source interface gigabitEthernet 1/1, gigabitEthernet 1/2
CAT6K-01(config)#monitor session 1 destination interface gigabitEthernet 1/3
端口Gig1/1和Gig1/2上流动的所有流量将复制到端口Gig1/3。UCS FI将不知道这些数据包的源和目的MAC地址。
在UCS以太网终端主机模式下,FI会丢弃这些未知单播数据包。
在UCS以太网交换模式下,FI在连接到6500(Eth1/1)的端口上学习源MAC地址,然后将下游的数据包泛洪到服务器。此事件序列发生:
- 为便于理解,请考虑接口Gig1/1和Gig1/2上仅PC A(使用mac-address aaaa.aaaa.aaaa)和PC B(使用mac-address bbbb.bbbb.bbbbb))之间的流量
- 第一个数据包从PC A到PC B,在UCS FI Eth1/1上可以看到
- FI在Eth1/1上学习mac-address aaaa.aaaa.aaaa
- FI不知道目的mac-address bbbb.bbbb.bbbb,并将数据包泛洪到同一VLAN中的所有端口
- 嗅探器VM(位于同一VLAN中)也会看到此数据包
- 下一个数据包从PC B到PC A
- 当此命中Eth1/1时,将在Eth1/1上学习mac-address bbbb.bbbb.bbbb
- 数据包的目的地为mac-address aaaa.aaaa.aaaa
- FI会丢弃此数据包,因为Eth1/1上获取了mac-address aaaa.aaaa.aaaa,而Eth1/1本身也收到了该数据包
- 以mac-address aaaa.aaaa.aaaa或mac-address bbbb.bbbbb.bbbb为目的地的后续数据包会因相同原因被丢弃
验证
当前没有可用于此配置的验证过程。
故障排除
目前没有针对此配置的故障排除信息。
相关信息