镜像简介

镜像是指将经过指定端口(源端口或者镜像端口)的报文复制一份到另一个指定端口(目的端口或者观察端口)。

目的:

在网络运营与维护的过程中,为了便于业务监测和故障定位,网络管理员时常要获取设备上的业务报文进行分析。

镜像可以在不影响设备对报文进行正常处理的情况下,将镜像端口的报文复制一份到观察端口。网络管理员通过网络监控设备就可以分析从观察端口复制过来的报文,判断网络中运行的业务是否正常。

基本概念:

镜像端口和观察端口

  1. 镜像端口:是指被监控的端口,镜像端口收发的报文将被复制一份到与监控设备相连的端口。

  2. 观察端口:是指连接监控设备的端口,用于将镜像端口复制过来的报文发送给监控设备。

一般观察端口专门用于镜像流量的转发,因此不建议在上面配置其他业务,防止镜像流量与其他业务流量在观察端口上同时转发会互相影响。

在设备上应用镜像功能时,如果镜像过多,会占用较多的设备内部转发带宽,可能影响其他业务转发。另外,如果镜像端口与观察端口的带宽不一致,比如,镜像端口的带宽是1000Mbit/s,观察端口的带宽是100Mbit/s,则有可能导致观察端口因带宽不足而不能及时转发全部的镜像报文,发生丢包情况。

镜像方向:

镜像方向是指将镜像端口指定方向的报文复制到观察端口,包括:

  1. 入方向:将镜像端口接收的报文复制到观察端口上。

  2. 出方向:将镜像端口发送的报文复制到观察端口上。

  3. 双向:将镜像端口接收和发送的报文都复制到观察端口上。

端口镜像:

  1. 端口镜像是指设备复制从镜像端口流经的报文,并将此报文传送到指定的观察端口进行分析和监控。
  2. 端口镜像根据监控设备在网络中位置的不同,分为本地端口镜像和远程端口镜像。

定义端口

  1. 定义源端口

Monitor session {session-number} source {interface interface-number | vlan vlan-ID} [rx|tx|both]

  1. 定义目的端口

Monitor session {session-number} destination {interface interface-number | vlan vlan-ID} [rs|tx|both]

本地端口镜像:

本地端口镜像是指观察端口与监控设备直接相连,此时观察端口被称为本地观察端口。

举例:把g0/12的收到的流量镜像到g0/24去 Monitor session 1 source interface g0/12 rx //rx表示收发双向 Monitor session 1 destination interface g0/24

远程端口镜像:

远程端口镜像是指观察端口与监控设备通过中间网络传输镜像报文,此时观察端口被称为远程观察端口。

原理:

  1. 源端口和目的端口位于不同交换机上 原理是将源端口的流量镜像到本端VLAN中,然后通过TRUNK传送到目的设备。
  2. 再将本地设备中VLAN中的数据镜像到指定的端口中。

例如:

  • 被监控端交换机配置:
(config)#vlan 777    //创建vlan 777
(config-vlan)#remote-span
(config)#monitor session 1 source int g1/0/1     //创建监控session1 本地监控接口G1/0/1 ,配置source
(config)#monitor session 1 destination remote vlan 777  //将监控流量镜像到VLAN 777中,配置remote

G1/0/1中端口的流量镜像到VLAN 777中

  • 监控端配置:
(config)#vlan 777
(config-vlan)#remote-span
(config)#monitor session 1 source remote vlan 777   //创建session远程监控的VLAN777,配置source
(config)#monitor session 1 destination interface g1/0/10           //配置remote即监控交换机的g1/0/10

将VLAN 777中的流量镜像到G1/0/10,这时在G1/0/10上接设备就可以远程抓取数据包。 需要将远程交换机的观察端口、监控设备被监控的端口都加入VLAN777,保证两个设备间能够二层通信。