1.基本概念
SPAN技术主要是用来监控交换机上的数据流,分为两种类型,本地SPAN(Local Switched Port Analyzer)和远程SPAN(Remote SPAN).
我们一般说SPAN指的就是本地的,远程的一般管它叫RSPAN。
这些SPAN技术可以把交换机上某些想要被监控端口(也叫受控端口)的数据流COPY(也说MIRROR)一份,发送给连接在监控端口上的数据流分析设备,比如IDS或是装了SNIFFER工具的主机。受控端口和监控端口可以在同一台交换机上(本地SPAN),也可以在不同的交换机上(RSPAN)。
注意:本地SPAN必须在一台交换机上用,RSPAN必须不在一台交换机上用!
*下文的SPAN如无特殊强调则同时指本地和远程的*
2.SPAN监控数据流类型
SPAN可监控的数据流类型分为三种;
inbound SPAN 受控端口的接收流量。
outbound SPAN 受控端口的发送流量。
Both 一个受控端口的接收和发送流量。
3.SPAN端口类型
Source Port--SPAN源端口,也叫monitored port即被监控端口(受控端口)
受控端口可以是实际的物理端口、VLAN、以太信道EtherChannel,物理端口可以在不同的VLAN中,受控端口如果是VLAN则包括此VLAN中的所以物理端口,受控端口如果是以太信道则包括组成此以太信道的所有物理端口,如果受控端口是一个TRUNK干道端口,则此TRUNK端口上承载的所有VLAN流量都会受到监控,也可以使用filter vlan 参数进行调整,只对filter vlan 中指定的VLAN数据流量做监控。
Destination Port--SPAN目的端口,也就是monitoring port-即监控端口(连监控设备用的)。
监控端口只能是单独的一个实际物理端口,一个监控端口同时只能在一个SPAN中使用,监控端口不参与其它的二层协议如:
Cisco Discovery Protocol (CDP),
VLAN Trunk Protocol (VTP),
Dynamic Trunking Protocol (DTP),
Spanning Tree Protocol (STP),
Port Aggregation Protocol (PagP),
Link Aggregation Control Protocol (LACP)等.
缺省情况下监控端口不会转发除SPAN Session以外的任何其它的数据流,也可以通过设置ingress参数,打开监控端口的二层转发功能,比如当连接CISCO IDS的时会有这种需求,此时IDS不仅要接 收SPAN Session的数据流,IDS本身在网络中还会与其它设备有通讯流量,所以要打开监控端口的二层转发功能。
*反正你就记着如过把一个端口错误的设置为监控端口了,那么它就不能正常的进行除SPAN外的所有通信了*
监控端口的带宽最好大于等于受控端口的带宽,否则可能会出现丢包的情况。
4.Reflector Port--反射端口
*反射端口只在RSPAN中使用*与RSPAN中的受控端口在同一台交换机上(监控端口不在这台交换机上),是用来将本地的受控端口数据流转发到RSPAN中在另一台交换机上的远程监控端口的方法,反射端口也只能是一个实际的物理端口。
*反射端口不能属于任何一个VLAN*
*RSPAN中还要使用一个专用的VLAN来转发流量*,反射端口会使用这个专用VLAN将数据流通过TRUNK端口发送给其它的交换机,远程交换机再通过此专用VLAN将数据流发送到监控端口上的分析仪。
在使用RSPAN VLAN的时候,所有参与RSPAN的交换机应在同一个VTP域中,不能用VLAN 1,也不能用1002-1005,这是保留给令牌环和FDDI的,如果是2-1001的标准VLAN,则只要在VTP Server上创建即可(将交换机VTP模式设为Transparent后全部手工创建也可以),其它的交换机会自动学到,如果是1006-4094的扩展VLAN,则需要在所有交换机上创建此专用VLAN。
反射端口的带宽最好大于等于受控端口的带宽,否则可能会出现丢包的情况。
5.SPAN的3种模式:
1.SPAN:源端口和目标端口都处于同一交换机,并且源端口可以是一个或多个交换机端口.
2.基于VLAN的交换式端口分析器(VSPAN):SPAN的一种变体,源端口不是物理端口,而是VLAN.
3.远程交换式端口分析器(RSPAN):源端口和目标端口处于不同的交换机.
4. ERSPAN ---- Enhanced Remoted SPAN ---- 增强SPAN
6.需要注意的问题
监控端口不参与很多通信!并会对其他一些通信产生影响!反射端口影响小些,但也会有问题。大部分错误都是由这个引起的。
利用SPAN监控VLAN时,只能监控VLAN中所有活动端口接收的流量,如果监控端口也属于属于此VLAN,则此端口不在监控范围内。
利用SPAN监控VLAN时,不监控VLAN间的路由数据,比如我开个SPAN监控一台三层交换机某个VLAN的inbound方向的数据流(也只能是这个方向),当一个数据流被从其他VLAN路由到此VLAN时,此数据流不在监控范围内。
配置了端口安全的端口(如最大地址学习数等)不能设置为监控端口。
案例实验:本地端口镜像(SPAN):
拓扑图:
SW配置:
[sw1]mirroring-group 1 local #本地端口镜像组
[sw1]mirroring-group 1 mirroring-port Ethernet 1/0/10 Ethernet 1/0/20 both #监控镜像源端口的输入输出
[sw1]mirroring-group 1 monitor-port e1/0/24 #设置e1/0/24端口为本地镜像组的目的端口
[sw1]dis mirroring-group 1 #查看显示镜像组信息
mirroring-group 1:
type: local
status: active
mirroring port:
Ethernet1/0/10 both
Ethernet1/0/20 both
monitor port: Ethernet1/0/24
PC-A(交换机代替)配置:只需配置一个ip地址,telnet的23端口打开即可。
PC-A]dis cu
#
sysname PC-A
local-user admin
password simple admin
service-type ftp
#
vlan 1
#
interface Vlan-interface1
ip address 192.168.2.10 255.255.255.0
PC-B(防火墙代替)配置:同样是一个ip地址,telnet的23端口打开。
<PC-B>dis cu
#
sysname PC-B
#
firewall packet-filter enable
firewall packet-filter default permit
#
undo insulate
#
local-user admin
password simple admin
service-type telnet
#
interface Ethernet0/0
ip address 192.168.2.20 255.255.255.0
#
firewall zone trust
add interface Ethernet0/0
set priority 85
#
PC-A telnet PC-B测试:
<PC-A>telnet 192.168.2.20
Trying 192.168.2.20 ...
Press CTRL+K to abort
Connected to 192.168.2.20 ...
********************************************************************************
* Copyright(c) 2004-2009 Hangzhou H3C Technologies Co., Ltd. All rights reserved.*
* Without the owner's prior written consent, *
* no decompiling or reverse-engineering shall be allowed. *
********************************************************************************
Login authentication
Username:admin
Password:
<PC-B>
我们的IPS或者IDS通过抓包软件获取数据包就是能够检测到镜像源端口的通信。
远程端口镜像(RSPAN)
拓扑图:
SW3源交换机配置:
<SW3>dis cu
#
sysname SW3
#
mirroring-group 1 remote-source #定义SW3交换机为远程源镜像组
#
vlan 1
#
vlan 10 #创建VLAN 10
remote-probe vlan enable #定义VLAN 10为remote-probe VLAN
#
interface Ethernet1/0/1
port link-type trunk #配置e1/0/1为trunk端口
port trunk permit vlan 1 10 #配置trunk端口允许remote-probe VLAN报文通过
#
interface Ethernet1/0/5
duplex full
speed 100
mirroring-group 1 reflector-port #配置e1/0/5端口为远程反射端口
#
interface Ethernet1/0/10
mirroring-group 1 mirroring-port inbound #监控e1/0/10远程镜像源端口的输入报文
#
interface Ethernet1/0/20
mirroring-group 1 mirroring-port outbound #监控e1/0/20远程镜像源端口的输出报文
#
interface NULL0
#
mirroring-group 1 remote-probe vlan 10 #配置远程源镜像的remote-probe VLAN
查看显示远程源镜像组配置
<SW3>dis mirroring-group remote-source
mirroring-group 1:
type: remote-source
status: active
mirroring port:
Ethernet1/0/10 inbound
Ethernet1/0/20 outbound
reflector port: Ethernet1/0/5
remote-probe vlan: 10
SW2中间交换机的配置:
<SW2>dis cu
#
sysname SW2
#
vlan 10
remote-probe vlan enable #配置VLAN 10为remote-probe VLAN
#
interface Ethernet1/0/1
port link-type trunk #配置e1/0/1为trunk端口
port trunk permit vlan 1 10 #使当前trunk端口允许remote-probe VLAN报文通过
#
interface Ethernet1/0/24
port link-type trunk #配置e1/0/1为trunk端口
port trunk permit vlan 1 10 #使当前trunk端口允许remote-probe VLAN报文通过
SW1目的交换机的配置:
<SW1>dis cu
#
sysname SW1
#
mirroring-group 1 remote-destination #配置远程目的镜像组
#
vlan 10
remote-probe vlan enable #定义VLAN 10为remote-probe VLAN
#
interface Ethernet1/0/1
port link-type trunk #配置e1/0/1端口为trunk端口
port trunk permit vlan 1 10 #使当前trunk端口允许remote-probe VLAN报文通过
#
interface Ethernet1/0/24
port access vlan 10
mirroring-group 1 monitor-port #配置e1/0/24为远程镜像的目的端口
#
mirroring-group 1 remote-probe vlan 10 #配置VLAN 10为远程目的镜像组的remote-probe VLAN
查看并显示远程目的镜像组的配置:
[SW1]dis mirroring-group remote-destination
mirroring-group 1:
type: remote-destination
status: active
monitor port: Ethernet1/0/24
remote-probe vlan: 10