下载安卓APP箭头
箭头给我发消息

客服QQ:3315713922

端口镜像的工作原理

作者:课课家教育     来源: http://www.kokojia.com点击数:1368发布时间: 2019-02-26 15:31:28

标签: 端口镜像_华为HCNP_网络工程师

软考,您想通过吗?一次通过才是硬道理

  端口镜像(portMirroring)把交换机一个或多个端口(VLAN)的数据镜像到一个或多个端口的方法。简单的说,一般交换机的端口,你又要分析里面的流量,但是同时不影响原来数据的发送,也就是说原来的端口还是按照原来的方式工作,只是你复制到的端口就用来做监听或找出网络存在问题的原因。在一些交换机中,我们可以通过对交换机的配置来实现将某个端口上的数据包,拷贝一份到另外一个端口上,这个过程就是端口镜像,如下图:

端口镜像的工作原理_端口镜像_华为HCNP_网络工程师_课课家

  交换机端口镜像原理

  端口1为镜像端口,端口2为被镜像端口,因为通过端口1可以看到端口2的流量,所以我们也称端口1为监控端口,而端口2为被监控端口。

  绝大多数交换机的某个口被设置为镜像端口后,接到该端口的主机将无法发送数据包到网内其他机器,变成了单向接受模式。这类情况,并不利于监控,因为系统无发发送封包到客户机,而导致无法对客户机进行控制。

  端口镜像的目的

  由于部署IDS产品需要监听网络流量(网络分析仪同样也需要),但是在目前广泛采用的交换网络中监听所有流量有相当大的困难,因此需要通过配置交换机来把一个或多个端口(VLAN)的数据转发到某一个端口来实现对网络的监听。

  端口镜像的功能

  监视到进出网络的所有数据包,供安装了监控软件的管理服务器抓取数据,如网吧需提供此功能把数据发往公安部门审查。而企业出于信息安全、保护公司机密的需要,也迫切需要网络中有一个端口能提供这种实时监控功能。在企业中用端口镜像功能,可以很好的对企业内部的网络数据进行监控管理,在网络出现故障的时候,可以做到很好地故障定位。一般通过配置端口镜像,安装网路岗监控上网行为管理软件就可以实现对整个网络的监控了。

  (备注:交换机把某一个端口接收或发送的数据帧完全相同的复制给另一个端口;其中被复制的端口称为镜像源端口,复制的端口称为镜像目的端口。)

端口镜像

  端口镜像通常有以下几种别名:

  PortMirroring通常指允许把一个端口的流量复制到另外一个端口,同时这个端口不能再传输数据。

  MonitoringPort监控端口

  SpanningPort通常指允许把所有端口的流量复制到另外一个端口,同时这个端口不能再传输数据。SPANport常见于Cisco产换机中,SPAN通常指SwitchPortANalyzer。思科的交换机SPAN端口不支持传输数据。这些流量就可以被一个特殊的设备监控,它对发现和修理故障有很大的帮助。

  端口镜像工作原理:SPAN(SwitchedPortAnalyzer)的作用主要是为了给某种网络分析器提供网络数据流。

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

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

  SPAN任务不会影响交换机的正常工作。当一个SPAN任务被建立后,根据交换机所处的不同的状态或操作,任务会处于激活或非激活状态,同时系统会将其记入日志。通过“showmonitorsession”命令可显示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两次,反之亦然。

  镜像端口建立方法

  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

  portmonitorFastEthernet0/2

  portmonitorFastEthernet0/3

  portmonitorVLAN1

  2、Catalyst4000,5000and6000系列交换机端口监听配置(基于iOS)

  以下命令配置端口监听:setspan

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

  setspan1/1,1/3-51/2

  2950/3550/3750格式如下:

  #monitorsessionnumbersourceinterfacemod_number/port_numberboth

  #monitorsessionnumberdestinationinterfacemod_mnumber/port_number

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

  forexample:

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

  #monitorsession1sourceinterface1/1-10both

  #monitorsession1destinationinterface1/12

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

  #monitorsession2sourceinterface2/13-20both

  #monitorsession2destinationinterface2/24

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

  Catalyst29503550不支持portmonitor

  C2950#configureterminal

  C2950(config)#

  C2950(config)#monitorsession1sourceinterfacefastEthernet0/2

  !---Interfacefa0/2isconfiguredassourceport.

  C2950(config)#monitorsession1destinationinterfacefastEthernet0/3

  !---Interfacefa0/3isconfiguredasdestinationport.

  华为交换机端口镜像配置简单介绍

  『环境配置参数』

  1.PC1接在交换机E0/1端口,IP地址1.1.1.1/24

  2.PC2接在交换机E0/2端口,IP地址2.2.2.2/24

  3.E0/24为交换机上行端口

  4.Server接在交换机E0/8端口,该端口作为镜像端口

  『组网需求』

  1.通过交换机端口镜像的功能使用server对两台pc的业务报文进行监控。

  2.按照镜像的不同方式进行配置:

  1)基于端口的镜像

  2)基于流的镜像

  二、数据配置步骤『端口镜像的数据流程』

  基于端口的镜像是把被镜像端口的进出数据报文完全拷贝一份到镜像端口,这样来进行流量观测或者故障定位。

  【3026等交换机镜像】

  S2008/S2016/S2026/S2403H/S3026等交换机支持的都是基于端口的镜像,有两种方法:

  方法一

  1.配置镜像(观测)端口

  [SwitchA]monitor-porte0/8

  2.配置被镜像端口

  [SwitchA]portmirrorEthernet0/1toEthernet0/2

  方法二

  1.可以一次性定义镜像和被镜像端口

  [SwitchA]portmirrorEthernet0/1toEthernet0/2observing-portEthernet0/8

  【8016交换机端口镜像配置】

  1.假设8016交换机镜像端口为E1/0/15,被镜像端口为E1/0/0,设置端口1/0/15为端口镜像的观测端口。

  [SwitchA]portmonitorethernet1/0/15

  2.设置端口1/0/0为被镜像端口,对其输入输出数据都进行镜像。

  [SwitchA]portmirroringethernet1/0/0bothethernet1/0/15

  也可以通过两个不同的端口,对输入和输出的数据分别镜像

  1.设置E1/0/15和E2/0/0为镜像(观测)端口

  [SwitchA]portmonitorethernet1/0/15

  2.设置端口1/0/0为被镜像端口,分别使用E1/0/15和E2/0/0对输入和输出数据进行镜像。

  [SwitchA]portmirroringgigabitethernet1/0/0ingressethernet1/0/15

  [SwitchA]portmirroringgigabitethernet1/0/0egressethernet2/0/0

  『基于流镜像的数据流程』

  基于流镜像的交换机针对某些流进行镜像,每个连接都有两个方向的数据流,对于交换机来说这两个数据流是要分开镜像的。

  【3500/3026E/3026F/3050】

  〖基于三层流的镜像〗

  1.定义一条扩展访问控制列表

  [SwitchA]aclnum100

  2.定义一条规则报文源地址为1.1.1.1/32去往所有目的地址

  [SwitchA-acl-adv-101]rule0permitipsource1.1.1.10destinationany

  3.定义一条规则报文源地址为所有源地址目的地址为1.1.1.1/32

  [SwitchA-acl-adv-101]rule1permitipsourceanydestination1.1.1.10

  4.将符合上述ACL规则的报文镜像到E0/8端口

  [SwitchA]mirrored-toip-group100interfacee0/8

  〖基于二层流的镜像〗

  1.定义一个ACL

  [SwitchA]aclnum200

  2.定义一个规则从E0/1发送至其它所有端口的数据包

  [SwitchA]rule0permitingressinterfaceEthernet0/1egressinterfaceEthernet0/2

  3.定义一个规则从其它所有端口到E0/1端口的数据包

  [SwitchA]rule1permitingressinterfaceEthernet0/2egressinterfaceEthernet0/1

  4.将符合上述ACL的数据包镜像到E0/8

  [SwitchA]mirrored-tolink-group200interfacee0/8

  【5516/6506/6503/6506R】

  目前该三款产品支持对入端口流量进行镜像

  1.定义镜像端口

  [SwitchA]monitor-portEthernet3/0/2

  2.定义被镜像端口

  [SwitchA]mirroring-portEthernet3/0/1inbound

  【补充说明】

  1.镜像一般都可以实现高速率端口镜像低速率端口,例如1000M端口可以镜像100M端口,反之则无法实现

  2.8016支持跨单板端口镜像

  三、测试验证在观测端口上通过工具软件可以看到被镜像端口的相应的报文,可以进行流量观测或者故障定位

  有效正确的配置好交换机的端口镜像才可以正常的使用网路岗上网监控管理软件,一般配置镜像只要把总出口的数据镜像到对应的网路岗服务器所连交换机的那个口就可以了,即我们说的一对一的端口镜像,如果没有特殊的需要,大家不要做多对一的端口镜像,即把多个源端口的数据镜像到一个口上,因为一般情况下,只要把总出口的数据镜像到网路岗上就可以实现对整个网络的监控管理了。

  小编结语:简单的说,一般交换机的端口,你又要分析里面的流量,但是同时不影响原来数据的发送,也就是说原来的端口还是按照原来的方式工作,只是你复制到的端口就用来做监听或找出网络存在问题的原因。相同型号不同版本的设备,配置方法有时是有差异的,最终还是要以版本对应的操作手册为准。

赞(21)
踩(0)
分享到:
推荐查看
华为认证网络工程师 HCIE直播课视频教程