SPAN
SPAN
Switched Port Analyzer ,交换机端口分析器)特性有助于性能管理和排错。 SPAN 能够将某个 VLAN 或一组端口的网络流量复制到某个端口上,这个端口通常连接到网络分析仪,例如 switchProb 设备,它是一种运行数据包捕获应用或 RMON(Remote Monitoring ,远程监控 ) 探测器的工作站。 SPAN 不会对源端口或 VLAN 的网络流量交换产生影响。
一个源端口是 SPAN 程序从中复制流量的一个第 2 层或第 3 层端口,从一个 SPAN 源端口转发到一个 SPAN 目的端口的数据可以包括端口发送的所有帧和 / 或端口接收的所有帧。
一个 SPAN 目的端口是 SPAN 程序将流量复制到一个第 2 层或第 3 层的接口,当一个端口被配置为一个 SPAN 的目的端口时,他将不转发除 SPAN 流量外的任何流量,并且只由 SPAN 程序使用,
本地 SPAN 包括在相同的交换机上配置源端口、源 VLAN 和目标端口。本地 SPAN 包括单个或多个 VLAN 配置为 SPAN 会话源,又称为 VSPAN 。源 VLAN 中的所有端口将成为 VSPAN 的源端口。本地 SPAN 将任何 VLAN 中的单个或多个端口(或从单个或多个 VLAN )中的网络流量复制到用于分析的目标端口。
 
如图,将端口 5 的数据流镜像到端口 10 。端口 10 上的一个网络分析仪无需物理连接到端口 5 就能收到来自端口 5 的所有网络流量。
SPAN
会话支持对如下 3 种类型的网络流量进行监控:流入的网络流量、流出的网络流量、双向网络流量。通过将需要分析的源端口和 VLAN 所接受的网络流量复制到目标端口,流入 SPAN 能够监控流入的网络流量。通过将需要分析的源端口和 VLAN 所发送的网络流量复制到目标端口,流出 SPAN 能够监控流出的网络流量。当使用 both( 双向 ) 关键字的时候, SPAN 能够监控双向的网络流量。
默认情况下,本地 SPAN 监控所有的网络流量,其中包括多播和 BPDU Bridge Protocol Data Unit
SPAN
支持将交换端口和路由端口配置为 SPAN 源端口。 SPAN 能够在单个 SPAN 会话中监控单个或多个源端口。任何 VLAN 中都可以配置为源端口。 Trunk 端口能够与非 Trunk 端口混合形成有效的源端口,虽然如此,目标端口的 trunk dot1q ISL )配置能够确定目标端口所转发的数据包封装。如果目标端口没有配置 trunk 封装,那么在对流入的帧进行传输之前,帧将清除其中 ISL dot1q
在使用本地 SPAN 的时候,需要遵守下列规则和限制:
基于 Cisco IOS 软件的交换机,第 2 层交换端口(采用 Switchport 命令配置的 LAN 端口)和第 3 层交换端口(未采用 switchport 命令配置的 LAN 端口)都能配置未源端口或目标端口。
如果只有 1 SPAN 会话,那么端口能够担当目标端口
如果某个端口是某个 SPAN 会话的源端口,那么它就不能配置成目标端口
端口通道接口( Etherchannel )能够配置为源端口
端口通道接口不能够配置为目标端口
. SPAN
支持源端口属于不同 VLAN 的配置
本地 SPAN 将使用先前在 Cisco CatOS 中所启用的配置。为了避免任何未得到确认的情况,在 Cisco CatOS 中启用 SPAN 之前,我们都应当检查先前的配置。
默认情况下, SPAN 袁的流量方向是双向的
目标端口从来不参与生成树实例。本地 SPAN 包括被监控流量的 BPDU ,所以目标端口所看见的任何 BPDU 都来自于源端口。基于上述原因, SPAN 目标端口不应当连接到其他交换机,其原因在于这可能导致网络环路。
无论数据包是否因为外出端口上 STP 阻塞状态而真实地离开交换机,目标端口都将获得通过交换机进行交换的所有数据包的副本。
在使用 VSPAN 的时候,还需要遵守下列规则和限制:
如果 VSPAN 会话配置流入和流出等两种选项,那么只有数据包在相同的 VLAN 中进行交换的时候, VSPAN 会话将转发来自源端口的重复数据包。数据包的 1 个副本来自于流入端口的输入流量,而数据包的另外 1 个副本来自于流出端口的输出流量。
. VSPAN
只能监控 VLAN 中进出第 2 层端口的流量:
因为流量从来不表现为进入 VLAN 中的 2 层端口的输入流量,如果 SPAN 会话将 VLAN 配置为流入源,那么进入被监控 VLAN 的路由流量将不被捕获。
因为流量从来不表现为进入 VLAN 中的 2 层端口的输入流量,如果 SPAN 会话将 VLAN 配置为外出源,对于被路由到被监控 VLAN 之外的流量将不被捕获。
SPAN
监控和其他特性的影响:
1
 SPAN vlan CDP 的影响
1) 
可以进行 VLAN 成员的改变,但他们不能作用到 SPAN 目的端口上,对于源端口, VLAN 或者中继设置立即生效, SPAN 会话因此自动调整。   
2) SPAN
的目的端口不参与 CDP<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

    2 SPAN EtherChannel 成员或中继端口的相互影响
如果一个被监控的 EtherChannel 组中添加一个端口,就把它加到 SPAN 源端口列表中,如果从一个被监控的 EtherChannel 中删除一个端口,它会自动从源端口列表中删除。
一个 EtherChannel 组可以配置为一个源端口,但不能配置为目的端口
可以在任何时候为源目的端口修改 VLAN 成员或者只中继,   但是一个目的端口的 VLAN 成员或中继设置改变直到禁用 SPAN 会话才会生效
如果将一个属于 EtherChannel 组的物理端口配置成一个 SPAN 源或目的端口,那么该端口将离开那个组。当端口从 SPAN 端口离开,它又重新加入到 Channel 组。
    3
SPAN Qos 分类和多播流量
对于进入或流入流量监控,送往 SPAN 目的端口的分组可能与 SPAN 源端口实际收到的会有不同,分组在进入 QoS 分类与监管之后转发。发送分组的 DSCP 值可能与接受分组不同。
可以监控多播流量,对于流入和流出,只将一个单一的未编辑的分组送往 SPAN 目的端口
配置了端口安全的端口不能作为 SPAN 目的端口


配置过程:
默认的配置
特性                  默认配置
SPAN                
未启动
源端口流量的监控   端口的发送和接收
封装类型(目标端口)   本地 VLAN( 未标记 )
进入转发(目标端口)   非法
Vlan
过滤          Trunk 端口作为源端口,所有 vlan 都会被监控


建立 SPAN 会话
1
进入全局配置模式    configure terminal
2
清除先前配置的内容
no monitor session [
会话号 |all|local|remote]
会话号:可以单独清除某个指定的会话,取值为 1-66
. all:
所有的会话
. local:
清除本地 SPAN
. remote:
远程的 SPAN
3
指定监控的源端口
     monitor session
会话号 source {interface 接口号 |vlan vlan } [both|rx|tx]
会话号:取值为 1-66
. vlan
号:取值为 1-4094
. rx:
接收
. tx:
发送
4
指定监控的目标端口
    monitor session
会话号 destination {inteface 接口号 } [encapsulation replicate] [ingress forwarding]
接口号:必须是物理接口,不能是 VLAN 或以太通道
. encapsulation replicate:
目标端口的封装类型将取代源端口的封装类型,如果不设置将按照默认值将数据转发到 native vlan (本地 VLAN ,未标记的)
5
验证结果
show monitor [session
会话号 ]
Session 1
---------
Type              : Local Session
Source Ports      :
    Both           : Fa0/23
Destination Ports : Fa0/2
    Encapsulation : Native
          Ingress: Disabled
案例:
Switch(config)# no monitor session 1
Switch(config)# monitor session 1 source interface gigabitethernet0/1
Switch(config)# monitor session 1 destination interface gigabitethernet0/2
encapsulation replicate
Switch(config)# end
---------------------------------------------------------------------------
Switch(config)# no monitor session 2
Switch(config)# monitor session 2 source vlan 1 - 3 rx
Switch(config)# monitor session 2 destination interface gigabitethernet0/2
Switch(config)# monitor session 2 source vlan 10
Switch(config)# end


案例:
CCIE-LAB(V135)
题目要求:
configure SPAN on 3550 SW1, source interface is fa0/8, destination port is fa0/9.no need config the port secure information.
配置:
SW1
configure terminal
no monitor session all
monitor session 1 source interface f0/8
monitor session 1 destination interface f0/9

案例:
CCIE-LAB(YY)
题目要求:
There is a network analyzer attached ports 0/19 at sw1.configure sw1 so the network anslyer receive the message in or out of the prot 0/20
配置:
SW1
configure terminal
no monitor session all
monitor session 1 source interface f0/20
monitor session 1 destination interface f0/19
  
VSPAN
的建立
SPAN
可以基于 VLAN 使用,一个源 VLAN 是一个为了网络流量分析的被监控的 VLAN.VSPAN 使用一个或多个 VLAN 作为 SPAN 的源。源 VLAN 中的所有端口成为源端口。对于 VSPAN ,只能监控进入的流量 (rx 流量 ) 2950 系列交换机不能执行。
1
进入全局配置模式    configure terminal
2
清除先前配置的内容
    no monitor session [
会话号 |all|local|remote]
   
会话号:可以单独清除某个指定的会话,取值为 1-66
    all:
所有的会话
    local:
清除本地 SPAN
    remote:
远程的 SPAN
3
指定监控的源端口
    monitor session
会话号 source vlan vlan rx
    
会话号:取值为 1-66
     vlan
号:取值为 1-4094
     rx:
接收
4
指定监控的目标端口
    monitor session
会话号 destination {inteface 接口号 } [encapsulation replicate]
接口号:必须是物理接口,不能是 VLAN 或以太通道
    encapsulation replicate:
目标端口的封装类型将取代源端口的封装类型,如果不设置将按照默认值将数据转发到 native vlan (本地 VLAN ,未标记的)
5
验证结果
    show monitor [session
会话号 ]

建立本地会话的目标端口的到达流量
配置过程:
1
进入全局配置模式    configure terminal
2
清除先前配置的内容
     no monitor session [
会话号 |all|local|remote]
3
指定监控的源端口
     monitor session
会话号 source interface 接口
4
指定监控的目标端口
    monitor session
会话号 destination {inteface 接口号 } [encapsulation replicate] ingress [dot1q vlan vlan |isl |untagged vlan vlan ]
   
接口号:必须是物理接口,不能是 VLAN 或以太通道
    encapsulation replicate:
目标端口的封装类型将取代源端口的封装类型,如果不设置将按照默认值将数据转发到 native vlan (本地 VLAN ,未标记的)
5
验证结果

建立本地会话的过滤 VLAN
配置过程:
1
进入全局模式    configure terminal
2
清除先前的会话
     no monitor session
会话号
1
  指定源会话
     monitor session
会话号 source interface 接口号
    
接口号:必须是 trunk 端口
2
  指定过滤的 vlan
     monitor session
会话号 filter vlan vlan [, | -]
3
  指定目标端口
     monitor session
会话号 destination interface 端口号
案例:
Switch(config)# no monitor session 2
Switch(config)# monitor session 2 source interface gigabitethernet0/2 rx
Switch(config)# monitor session 2 filter vlan 1 - 5 , 9
Switch(config)# monitor session 2 destination interface gigabitethernet0/1
Switch(config)# end
SPAN 源流量限制在 vlan 1-5 9

=====================================================================================
RSPAN
Remote Switched Port Anylzer Network
RSPAN
是设计用来支持跨越不同交换机的源端口、源 VLAN 和目的端口的 SPAN 实现。 RSPAN 允许跨越网络的多台交换机的远程监控。如图所示:在一些大型的测试中,往往接入层交换机(交换机 A B )与核心交换机(交换机 D )在物理距离上很远,所以此时就需要一种 RemoteSpan 的技术来进行监控。
 

RSPAN 工作原理
创建一个 RSPAN 会话的第一步是创建一个为所有参与交换机中特定会话指定的 RSPAN VLAN RSPAN 使用反射端口将位于远程交换机的源端口流量复制到本地交换机的目的端口上。除了 RSPAN 会话所需要的流量外, RSPAN 反射端口的工作与 RSPAN 目的端口类似。反射端口只转发由源端口接收或发送的分组。他们不接收或转发其他的网络流量。
从源端口或源 VLAN 来得 RSPAN 流量被交换到 RSANP VLAN ,然后被转发到也在 RSPAN VLAN 中的目的端口。在 RSPAN 会话中源(端口或 VLAN )在不同的源交换机上能不同。但是,如果因特网路由器,比如 cisco7600 系列路由器,被用作 RSPAN 会话的源,那么它们必须和 RSPAN 源有相同的 VLAN. 
 
RSPAN
反射端口
反射端口仅用于所监控的数据拷贝到 Remote VLan ,反射端口仅转发有关联的 RSPAN 源端口的数据,   在配置成反射端口后,它将失去任何连通性,直到 RSPAN 的源监控会话被关闭为止。
反射端口的属性如下
1
不能配置成 EtherChannel 组,不能为 Trunk ,也不能配置任何协议过滤
2
配置成反射端口后,他不能成为 SPAN 的源或者目的端口
3
一个端口被用作反射端口后,不能配置为一个 SPAN 的源 / 目的端口。同时一个反射端口只能在同一时间支持一个监控会话。
4
反射端口会将所有的监控数据会泛洪到所有能够承载 RSPAN Vlan Trunk 接口上
5
STP 在反射端口上会被禁用
6
当反射端口没有足够的流量来转发监控端口的流量时,它使用自己接口的最大速率进行转发
7
反射端口对于所有 vlan 是不可见的
8
反射端口是一个被设置为回环的端口

RSPAN 与其他特性的相互影响
1 STP
:反射端口在 RSPAN 会话活动时不能参与 STP STP 可以在中继端口上激活以承载 RSPAN VLAN
2 VTP
VTP 不能用在交换机之间对 RSPAN vlan 进行裁剪
3 VLAN
和中继:可以在任何时候修改反射端口的 vlan 成员或中继设置,直到 RSPAN 会话被禁用后才能生效
4 EtherChannel
:如果属于一个 EtherCannel 组的物理端口是反射端口,并且该组是一个源,   那么端口将从 EtherChanel 组合被监控端口列表中删除

配置过程
VTP 服务器交换机中配置 Remote VLAN ,该 VLAN 将专用于 RSPAN 。如果采用透明模式,必须在域中所有设备中都一致地配置 SPAN
在源交换机和目标交换机中配置 SPAN 会话,并且确保中间交换机能够跨越各个 VLAN 干道承载 RSPAN VLAN

建立 RSPAN VLAN
RSPAN VLAN
应在配置 PSPAN 源或目的会话之前创建并通过交换网络传播。如果在网络中启用了 VTP ,则可以在一台单一的 VTP 服务器交换机上创建 RSPAN vlAN ,并将它传播给 VTP 域中的其他 VTP 交换机。如果还启用了 VTP 修剪特性,则由 VLAN 中继剪除 RSPAN 流量并防止任何 VLAN-ID 低于 1005 的不想扩散的 RSPAN 流量穿过网络。在 RSPAN vlan 上禁止 MAC 地址的学习。
配置:
1) 
进入全局模式   configure terminal
2) 
指定 vlan
    vlan vlan

    vlan
号:取值为 2-1001 1006-4094 2-1001 的可以通过 vtp 传播,扩展的 vlan 必须每台交换机建立
3) 
指定该 vlan RSPAN VLAN
    Remote-span
案例:
Switch(config)# vlan 901
Switch(config-vlan)# remote span
Switch(config-vlan)# end
Switch#show vlan remote-span
Remote SPAN VLANs
------------------------------------------------------------------------
10

建立 RSPAN 源会话
配置过程:
1
  进入全局模式   configure terminal
2
  清除先前配置的会话
    no monitor session {
会话号 | all | local | remote}
3
  建立源会话
    monitor session
会话号 source {interface 接口号 | vlan vlan } [, | -] [both | rx | tx]
4
  指定远程 VLAN 和反射端口
    monitor session
会话号 destination remote vlan 远程 VLAN reflector-port 端口
5
  验证结果
    show running-config
    show monitor [session
会话号 ]
案例:
Switch(config)# no monitor session 1
Switch(config)# monitor session 1 source interface gigabitethernet0/1 tx
Switch(config)# monitor session 1 source interface gigabitethernet0/2 rx
Switch(config)# monitor session 1 source interface port-channel 2
Switch(config)# monitor session 1 destination remote vlan 901
Switch(config)# end
--------------------------------------------------------------------------
案例:
Switch(config)#no monitor session all
Switch(config)#monitor session 1 source interface f0/2
Switch(config)#monitor session 1 destination remote vlan 10 reflector-port f0/5
Switch#show monitor session 1
Session 1
---------
Type                : Remote Source Session
Source Ports      :
    Both            : Fa0/2
Reflector Port    : Fa0/5
Dest RSPAN VLAN   : 10

建立 RSPAN 目标会话
1) 
进入全局模式   configure terminal
2) 
建立远程 vlan
     vlan vlan

3) 
制定为远程 vlan
     remote-span
4) 
清除先前配置的会话
     no monitor session {
会话号 | all | local | remote}
5) 
建立源会话
     monitor session
会话号 source remote vlan 远程 vlan
6) 
指定目标端口
     monitor session
会话号 destination interface 端口号
7) 
验证结果
     show running-config
     show monitor [session
会话号 ]
案例:
Switch(config)# monitor session 1 source remote vlan 901
Switch(config)# monitor session 1 destination interface gigabitethernet0/1
Switch(config)# end
--------------------------------------------------------------------------
案例:
Switch(config)#no monitor session all
Switch(config)#monitor session 1 source remote vlan 10
Switch(config)#monitor session 1 destination interface f0/10
Switch#show monitor session 1
Session 1
---------
Type              : Remote Destination Session
Source RSPAN VLAN : 10
Destination Ports : Fa0/10
    Encapsulation : Native
          Ingress: Disabled

建立 RSPAN 过滤
中继 VLAN 过滤允许分析中继源端口上一组经挑选的 VLAN 中的网络流量。中继 VLAN 过滤可以与属于任何所选 VLAN 的其他源端口结合。只能与中继源端口一起使用中继 vlan 过滤。如果中继 VLAN 过滤结合了其他源端口,而这些端口所属的 VLAN 没有包含在被选中的过滤 VLAN 列表中,那么 SPAN 只包括操作源中属于一个或多个被选中的 VLAN 的端口
配置过程:
1
进入全局模式    configure terminal
2
清除先前的会话
    no monitor session
会话号
3
  指定源会话
    monitor session
会话号 source interface 接口号
   
接口号:必须是 trunk 端口
4
  指定过滤的 vlan
    monitor session
会话号 filter vlan vlan [, | -]
5
  指定远程 vlan
    monitor session
会话号 destination remote vlan vlan
案例:
Switch(config)# no monitor session 2
Switch(config)# monitor session 2 source interface gigabitethernet0/2 rx
Switch(config)# monitor session 2 filter vlan 1 - 5 , 9
Switch(config)# monitor session 2 destination remote vlan 902
Switch(config)# end
-------------------------------------------------------------------------
案例:
CCIE-LAB(V148)
题目要求:
Make sure a Network Analyzer connected to Sw2-Fa0/16 can collect all bi-directional traffic on Sw1-Fa0/1.
配置: SW1 SW2 之间要做到监控,这里就需要应用 RSPAN
SW1
configure terminal
vlan 901
   remote-span
no minitor session all
monitor session 1 source interface f0/1
monitor session 1 destination remote vlan 901 reflected-port f0/22
interface f0/23
   switchport trunk allowed vlan add 901
interface f0/24
   switchport trunk allowed vlan add 901
SW2
configure terminal
no monitor session all
monitor session 1 source remote vlan 901
monitor session 1 destination interface f0/16
interface range f0/23 –24
  switchport trunk allowed vlan add 901

案例:
CCIE-LAB(V210)
题目要求:
Traffic monitoring
RSPAN
   Remote-vlan:500
   Source interface:sw2 f0/18
   Destination interface:sw4 f0/19
配置:
Sw1  (
因为 sw1 是服务器模式 )
configure terminal
vlan 500
   remote-span
Sw2
configure terminal
no monitor session all
monitor session 1 source interfac f0/18
monitor session 1 destination remote vlan 500 reflected-port f0/22
interface range f0/23 –24
   switchport trunk allowed vlan add 500
SW4
configure terminal
no monitor session all
monitor session 1 source remote vlan 500
monitor session 1 destination interface f0/19
interface range f0/23 –24
   switchport trunk allowed vlan add 500