端口镜像
端口镜像(portMirroring)把交换机一个或多个端口(VLAN)的数据镜像到一个或多个端口的方法。
1 功能
监视到进出网络的所有数据包,供安装了监控软件的管理服务器抓取数据,如网吧需提供此功能把数据发往公安部门审查。而企业出于信息安全、保护公司机密的需要,也迫切需要网络中有一个端口能提供这种实时监控功能。在企业中用端口镜像功能,可以很好的对企业内部的网络数据进行监控管理,在网络出现故障的时候,可以做到很好地故障定位。
(备注:交换机把某一个端口接收或发送的数据帧完全相同的复制给另一个端口;其中被复制的端口称为镜像源端口,复制的端口称为镜像目的端口。)
2 目的
为了方便对一个或多个网络接口的流量进行分析(如 IDS 产品、网络分析仪等),可以通过配置交换机来把一个或多个端口(VLAN)的数据转发到某一个端口来实现对网络的监听。
3 工作原理
SPAN(SwitchedPort Analyzer)的作用主要是为了给某种网络分析器提供网络数据流。
它既可以实现一个VLAN中若干个源端口向一个监控端口镜像数据,也可以从若干个VLAN向一个监控端口镜像数据。源端口的5号端口上流转的所有数据流均被镜像至10号监控端口,而数据分析设备通过监控端口接收了所有来自5号端口的数据流。值得注意的是,源端口和镜像端口必须位于同一台交换机上(但也有例外,如Catalyst6000系列交换机);而且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任务中,所有源端口的被监控方向都必须是一致的。
在Catalyst4006交换机上的VLAN也可以整体设置为源端口,这意味着被指定VLAN中的所有端口均为当前SPAN任务中的源端口。
Trunk端口可以单独设为源端口,也可以与非Trunk端口一起被设置为源端口,但要注意的是,在监控端口不会识别来自Trunk端口针对不同VLAN的数据封装格式,换句话说,在监控端口收到的数据包将无法辨明是来自哪个VLAN。
SPAN数据流主要分为三类:
(1)输入数据流(IngressSPAN):指被源端口接收进来,其数据副本发送至监控端口的数据流;
(2)输出数据流(EgressSPAN):指从源端口发送出去,其数据副本发送至监控端口的数据流;
(3)双向数据流(BothSPAN):即为以上两种的综合。
基于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两次,反之亦然。
4 别名
端口镜像通常有以下几种别名:
●PortMirroring 通常指允许把一个端口的流量复制到另外一个端口,同时这个端口不能再传输数据。
●MonitoringPort 监控端口
●SpanningPort 通常指允许把所有端口的流量复制到另外一个端口,同时这个端口不能再传输数据。
●SPAN port 在 Cisco 产品中,SPAN通常指Switch Port ANalyzer。某些交换机的 SPAN 端口不支持传输数据。
●Link Modeport这样,这些流量就可以被一个特殊的设备监控。它对发现和修理故障有很大的帮助。
5 建立方法
CiscoCATALYST交换机端口监听配置
CiscoCATALYST交换机分为两种,在CATALYST家族中称侦听端口为分析端口(analysisport)。1、Catalyst2900XL/3500XL/2950系列交换机端口监听配置 (基于CLI)
以下命令配置端口监听:
portmonitor
例如,F0/1和F0/2、F0/3同属VLAN1,F0/1监听F0/2、F0/3端口:
interfaceFastEthernet0/1
portmonitor FastEthernet0/2
portmonitor FastEthernet0/3
portmonitor VLAN1
2、Catalyst4000,5000 and6000系列交换机端口监听配置 (基于IOS)
以下命令配置端口监听:
set span
例如,模块1中端口1和端口2同属VLAN1,端口3在VLAN2,端口4和5在VLAN2,端口2监听端口1和3、4、5,
set span1/1,1/3-5 1/2
2950/3550/3750
格式如下:
#monitorsession number source interface mod_number/port_number both
#monitorsession number destination interface mod_mnumber/port_number
//rx-->指明是进端口得流量,tx-->出端口得流量both 进出得流量
forexample:
第一条镜像,将第一模块中的源端口为1-10的镜像到端口12上面;
#monitorsession 1 source interface 1/1-10 both
#monitorsession 1 destination interface 1/12
第二条镜像,将第二模块中的源端口为13-20的镜像到端口24上面;
#monitorsession 2 source interface 2/13-20 both
#monitorsession 2 destination interface 2/24
当有多条镜像、多个模块时改变其中的参数即可。
Catalyst2950 3550不支持port monitor
C2950#configureterminal
C2950(config)#
C2950(config)#monitorsession 1 source interface fastEthernet 0/2
!---Interface fa 0/2 is configured as source port.
C2950(config)#monitorsession 1 destination interface fastEthernet 0/3
!--- Interfacefa0/3 is configured as destination port.
6 端口监听配置命令
● 指定分析口
featurerovingAnalysis add,或缩写 f r a,
例如:
Select menuoption: feature rovingAn alysis add
Selectanalysis slot: 1?& nbsp;
Selectanalysis port: 2
● 指定监听口并启动端口监听
feature rovingAnalysisstart,或缩写 f r sta,
例如:
Select menuoption: feature rovingAn alysis start
Select slotto monitor ?(1-12): 1
Select portto monitor&nb sp;?(1-8): 3
● 停止端口监听
featurerovingAnalysis stop,或缩写 f r sto
7 常见交换机端口监听配置
7.1 Intel交换机端口监听配置
Intel 称端口监听为“MirrorPorts”。网络流量被监听的端口称作“源端口”(Source Port),连接监听设备的端口称作“镜像口”(Mirror Port)。
配置端口监听步骤如下:
● 在 navigation菜单,点击Statistics下的MirrorPorts,弹出MirrorPorts信息。
● 在ConfigureSource 列中点击端口来选择源端口,弹出MirrorPorts Configuration。
● 进行源端口设置:
源端口是镜像流量的来源口,镜像口是接收来自源端口流量的端口。
● 点击Apply确定
可以选择三种监听的方式:
1.连续(Always):镜像全部流量。
2.周期(Periodic):在一定周期内镜像全部流量。镜像周期在SamplingInterval configuration中设置。
3 .禁止(Disabled):关闭流量镜像。
7.2 Avaya交换机端口监听配置
在Avaya交换机用户手册中,端口监听被称为“端口镜像”(Port Mirror)。
以下命令配置端口监听:
{ set|clear} Port Mirror
设置端口侦听:set portmirror
禁止端口监听:clear portmirror
命令中,mod-port-range指定端口的范围;mod-port-spec指定特定的端口;piggyback-port指定双向镜像的端口;sampling指定镜像周期;max-packets-sec仅在sampling设置为periodic时使用,指定监听口每秒最多的数据报数量。
7.3 华为交换机端口监听配置
华为交换机用户手册中,端口监听被称为“端口镜像”(Port Mirroring)。
使用HuaweiLanswitch View管理系统添加一个镜像端口:
● 选择DeviceSetup或Stack Setup。
● 点击PortMirroring。
● 点击Add按钮。
● 对于堆叠,点击Switch并从列表选择一个交换机。
● 点击Reflectfrom并选择流量将被镜像的端口。
● 点击Reflect to并选上面所选择的端口。