端口镜像(port Mirroring)把交换机一个或多个端口(VLAN)的数据镜像到一个或多个端口的方法。
  端口镜像的目的
  由于部署 IDS 产品需要监听网络流量(网络分析仪同样也需要),但是在目前广泛采用的交换网络中监听所有流量有相当大的困难,因此需要通过配置交换机来把一个或多个端口(VLAN)的数据转发到某一个端口来实现对网络的监听。
  端口镜像的功能
  监视到进出网络的所有数据包,供安装了监控软件的管理服务器抓取数据,如网吧需提供此功能把数据发往公安部门审查。而企业出于信息安全、保护公司机密的需要,也迫切需要网络中有一个端口能提供这种实时监控功能。在企业中用端口镜像功能,可以很好的对企业内部的网络数据进行监控管理,在网络出现故障的时候,可以做到很好地故障定位。

  端口镜像工作原理:

  SPAN(Switched Port Analyzer)的作用主要是为了给某种网络分析器提供网络数据流。

  它既可以实现一个VLAN中若干个源端口向一个监控端口镜像数据,也可以从若干个VLAN向一个临控端口镜像数据。源端口的5号端口上流转的所有数据流均被镜像至10号监控端口,而数据分析设备通过监控端口接收了所有来自5号端口的数据流。值得注意的是,源端口和镜像端口必须位于同一台交换机上(但也有例外,如Catalyst 6000系列交换机);而且SPAN并不会影响源端口的数据交换,它只是将源端口发送或接收的数据包副本发送到监控端口。

  在SPAN任务过程中,用户可以通过参数控制,来指明需要监控的数据流种类;还可以将一个或多个端、口、一个或多个VLAN作为源端口,并将从这些端口中发送或接收的单向或双向数据流传送至监控端口。在Catalyst 4006交换机中,最多可以配置6个单向的SPAN任务:2个输入数据流监控、4个输出数据流监控。一个双向SPAN任务实际上包含一个单向输入和一个单向输出。而且不仅仅二层交换端口可作为源端口,Catalyst 4006上的三层路由端口也可设置为源端口。

  SPAN 任务不会影响交换机的正常工作。当一个SPAN任务被建立后,根据交换机所处的不同的状态或操作,任务会处于激活或非激活状态,同时系统会将其记入日志。通过“show monitor session”命令可显示SPAN的当前状态。

  如果遇到系统重新启动的情况,在目的端口初始化结束之前,SPAN任务将处于非激活状态。目的端口(监控端口)可以是交换机上的任意一个交换或路由端口。当一个目的端口处于激活状态时,任何发送到该端口且与SPAN任务无关的数据包将会被丢弃。

  一个目的端口只能处于一个SPAN任务中。当一个端口被配制成目的端口后就不能再成为源端口,同时冗余链路端口也不能成为SPAN的目的端口。特别需要指出的是,如果一个 Trunk端口被配置成为SPAN的目的端口,则其Trunk功能也将自动停止。

  源端口又可以称作被监控端口。在一个SPAN任务中,可以有一个或多个源端口,而且可以根据用户需要设置为输入方向、输出方向或双向,但无论哪种情况,在一个SPAN任务中,所有源端口的被监控方向都必须是一致的。

  在Catalyst 4006交换机上的VLAN也可以整体设置为源端口,这意味着被指定VLAN中的所有端口均为当前SPAN任务中的源端口。

  Trunk端口可以单独设为源端口,也可以与非Trunk端口一起被设置为源端口,但要注意的是,在监控端口不会识别来自Trunk端口针对不同VLAN的数据封装格式,换句话说,在监控端口收到的数据包将无法辨明是来自哪个VLAN。

  SPAN数据流主要分为三类:

  (1)输入数据流(Ingress SPAN):指被源端口接收进来,其数据副本发送至监控端口的数据流;

  (2)输出数据流(Egress SPAN):指从源端口发送出去,其数据副本发送至监控端口的数据流;

  (3)双向数据流(Both SPAN):即为以上两种的综合。

  基于VLAN的SPAN是以一个或几个VLAN作为监控对象,其中的所有端口均为源端口,与基于端口的SPAN类似,基于VLAN的SPAN也分为输入数据流、输出数据流和双向数据流监控三种类型。

  在配置基于VLAN的SPAN任务过程中,应注意几点:

  (1)Trunk端口可以包含在源端口中;

  (2)针对双向SPAN任务,如果在源VLAN中的两个源端口之间有数据交换,则每一个数据包将有两个副本被转发至镜像端口;

  (3)对有多个源VLAN的SPAN任务来说,如果某个源VLAN被删除掉,则该VLAN也将从源VLAN列表中删除;

  (4)处于非激活状态的VLAN无法参与SPAN任务;

  (5)对于一个设置为输入数据流监控的源VLAN来说,来自其他VLAN的路由信息数据包不会被镜像;此外,从设置为输出数据流监控的VLAN向其他VLAN发送出的路由信息数据包也同样不会被镜像。换句话说,基于VLAN的SPAN任务只对进出二层交换端口的数据包进行镜像,而不镜像VLAN之间的路由信息。

  所有网间传输的非路由数据包,包括组播包和BPDU(桥接协议数据单元)包,都可以使用SPAN任务进行镜像。

  在一些SPAN任务的配置下,会出现同一个SPAN源端口数据包的多个副本被发送到 SPAN监控端口的情况。正像前面提到的那样,在一个双向SPAN任务中,假设a1和a2为源端口,d1为目的端口,如果a1与a2之间有数据包传输,则在a1传向a2的数据包将会被传送到d1两次,反之亦然。

  镜像端口建立方法

  Cisco CATALYST交换机端口监听配置

  Cisco CATALYST交换机分为两 种,在CATALYST家族中称侦听端口为分析端 口(analysis port)。1、Catalyst 2900XL/3500XL/2950系列交换机端口监听配 置 (基于CLI)

  以下命令配置端口监听:

  port monitor

  例 如,F0/1和F0/2、F0/3同属VLAN1,F0/1监听F0/2、F0/3端口:

  interface FastEthernet0/1

  port monitor FastEthernet0/2

  port monitor FastEthernet0/3

  port monitor VLAN1

  2、Catalyst 4000,5000 and 6000系列交换机端口监听配 置 (基于IOS)

  以下命令配置端口监听:

  set span

  例如,模块1中端口1和端口2同属VLAN1,端口3在VLAN2,端口4和5在VLAN2,端口2监听端 口1和3、4、5,

  set span 1/1,1/3-5 1/2

  2950/3550/3750

  格式如下:

  #monitor session number source interface mod_number/port_number both

  #monitor session number destination interface mod_mnumber/port_number

  //rx-->指明是进端口得流量,tx-->出端口得流量 both 进出得流量

  for example:

  第一条镜像,将第一模块中的源端口为1-10的镜像到端口12上面;

  #monitor session 1 source interface 1/1-10 both

  #monitor session 1 destination interface 1/12

  第二条镜像,将第二模块中的源端口为13-20的镜像到端口24上面;

  #monitor session 2 source interface 2/13-20 both

  #monitor session 2 destination interface 2/24

  当有多条镜像、多个模块时改变其中的参数即可。

  Catalyst 2950 3550不支持port monitor

  C2950#configure terminal

  C2950(config)#

  C2950(config)#monitor session 1 source interface fastEthernet 0/2

  !--- Interface fa 0/2 is configured as source port.

  C2950(config)#monitor session 1 destination interface fastEthernet 0/3

  !--- Interface fa0/3 is configured as destination port.

  3COM交换机端口监听配置

  在3COM交换机中,端口监听被称为“Roving Analysis”。 网络流量被监听的端口称作“监听口”(Monitor Port),连接监听设备的端口称作“分析 口”(Analyzer Port)。

  以下命令配置端口监听:

  ● 指定分析 口

  feature rovingAnalysis add,或缩 写 f r a,

  例 如:

  Select menu option: feature rovingAn alysis add

  Select analysis slot: 1?& nbsp;

  Select analysis port: 2

  ● 指定监听口并启动端口监听

  feature rovingAnalysis start,或缩 写 f r sta,

  例 如:

  Select menu option: feature rovingAn alysis start

  Select slot to monitor ?(1-12): 1

  Select port to monitor&nb sp;?(1-8): 3

  ● 停止端口监 听

  feature rovingAnalysis stop,或缩 写 f r sto

  Intel交换机端口监听配置

  Intel 称端口监听为“Mirror Ports”。 网络流量被监听的端口称作“源端 口”(Source Port),连接监听设备的端口称作“镜像 口”(Mirror Port)。

  配置端口监听步骤如下:

  ● 在 navigation菜单,点击Statistics下的Mirror Ports,弹出Mirror Ports信 息。

  ● 在Configure Source 列中点击端口来选择源端口, 弹出Mirror Ports Configuration。

  ● 进行源端口设 置:

  源端口是镜像流量的来源口,镜像口是接收来自源端口流量的端 口。

  ● 点击Apply确定

  可以选择三种监听的方 式:

  1.连续(Always):镜像全部流量。

  2.周期(Periodic):在一定周期内 镜像全部流量。镜像周期在Sampling Interval configuration中设置。

  3 .禁止(Disabled):关闭流量镜像。

  Avaya交换机端口监听配置

  在Avaya交换机用户手册中,端口监 听被称为“端口镜像”(Port Mirror)。

  以下命令配置端口监听:

  { set|clear } Port Mirror

  设置端口侦 听:set port mirror <mod-port-range> source-port ?<mod-port-range> mirror-port <mod-port-spec> sampling { always | disable | periodic } [ max-packets-sec <max-packets-sec-value>?& nbsp;] [ piggyback-port<mod-port-spec> ]?&nb sp;

  禁止端口监 听:clear port mirror <mod-port-range>

  命令 中,mod-port-range指定端口的范围;mod-port-spec指定特定的端口;piggyback-port指定双向镜像的端口;sampling指定镜像周期;max-packets-sec仅在sampling设置为periodic时使用,指定监听口每秒最多的数据报数量。

  华为交换机端口监听配置

  华为交换机用户手册中,端口监听被称为“端口镜 像”(Port Mirroring)。

  使用Huawei Lanswitch View管 理系统添加一个镜像端口:

  ● 选 择Device Setup或Stack Setup。

  ● 点 击Port Mirroring。

  ● 点击Add按 钮。

  ● 对于堆叠,点击Switch并从列表选择一个交换 机。

  ● 点击Reflect from并选择流量将被镜像的端 口。

  ● 点击Reflect to并选上面所选择的端口。

  (交换机端口镜像配置详解也可参考网站:http://www.51cto.com/art/200512/13919.htm)