城域网常见交换机端口和远程镜像分析.docx
- 文档编号:23896456
- 上传时间:2023-05-22
- 格式:DOCX
- 页数:20
- 大小:619.55KB
城域网常见交换机端口和远程镜像分析.docx
《城域网常见交换机端口和远程镜像分析.docx》由会员分享,可在线阅读,更多相关《城域网常见交换机端口和远程镜像分析.docx(20页珍藏版)》请在冰豆网上搜索。
城域网常见交换机端口和远程镜像分析
城域网常见交换机端口及远程镜像
郭锐雄
一、案例描述
镜像即将一个端口的流量复制到另一个端口,以便抓包处理,镜像分三种:
1、本地端口镜像:
即将一个端口流量镜像到同一交换机的另一端口。
2、二层端口镜像(rspan):
将镜像流量转到某一个vlan内,虽然流量是单播,但一般设备对未知单播都会做广播处理,故任何一个加入该vlan的端口均可抓到该镜像流量。
3、三层流量接口(erspan):
将流量镜像到远程的三层接口,需要有到该端口的路由。
4、流镜像:
流镜像是指在设备上配置一定的规则,将符合规则的特定业务流复制到观察端口进行分析和监控。
二、常见交换机镜像配置
一、华为S9312端口镜像:
1、本地镜像(本例是配置M:
N的镜像,即将M个镜像端口的报文复制到N个不同的观察端口,这里讲接口改成一个就是普通的端口镜像):
a)配置观察端口:
[Switch]observe-port1interface-rangegigabitethernet1/0/4gigabitethernet1/0/5(如果是单个接口就interface,不带range)
b)配置镜像端口:
[Switch-GigabitEthernet1/0/1]port-mirroringtoobserve-port1inbound//将接口GE1/0/1的入方向绑定到索引为1的观察端口上
c)查看观察端口和镜像端口
e)本地流镜像
在Switch上配置接口GE1/0/2为本地观察端口:
[Switch]observe-port1interfacegigabitethernet1/0/2
在Switch上创建流分类c1,并配置流分类规则匹配以下两类报文:
源地址为10.1.1.0/24,目的TCP端口号为80的端口号;
[Switch]aclnumber3000
[Switch-acl-adv-3000]rulepermittcpsource10.1.1.00.0.0.255destination-porteq80
[Switch-acl-adv-3000]quit
[Switch]trafficclassifierc1operatoror
[Switch-classifier-c1]if-matchacl3000
在Switch上创建流行为b1,并配置流行为是流镜像,将指定报文流镜像到本地观察端口GE1/0/2。
[Switch]trafficbehaviorb1
[Switch-behavior-b1]mirroringtoobserve-port1
[Switch-behavior-b1]quit
在Switch上创建流策略p1,将流分类和对应的流行为进行绑定,并将流策略应用到接口GE1/0/1的入方向上
[Switch]trafficpolicyp1
[Switch-trafficpolicy-p1]classifierc1behaviorb1
[Switch-trafficpolicy-p1]quit
[Switch]interfacegigabitethernet1/0/1
[Switch-GigabitEthernet1/0/1]traffic-policyp1inbound
f)查看流分类配置信息
2、二层端口镜像
a)在SwitchA上配置观察端口
在SwitchA上配置接口GE1/0/2为二层远程观察端口,绑定的VLAN为VLAN10,观察端口会将镜像报文向VLAN10进行转发,不需要在观察端口下进行接口加入VLAN的操作。
[SwitchA]observe-port1interfacegigabitethernet1/0/2vlan10
b)在SwitchA上配置镜像端口
在SwitchA上配置接口GE1/0/1为镜像端口,将其入方向绑定到二层远程观察端口,即将镜像端口接收到的报文复制一份到二层远程观察端口。
[SwitchA]interfacegigabitethernet1/0/1
[SwitchA-GigabitEthernet1/0/1]port-mirroringtoobserve-port1inbound
c)在SwitchB上创建VLAN10,将接口GE1/0/1和GE1/0/2加入VLAN10,图中的server便能收到镜像报文。
d)验证配置结果的命令和本地镜像一样,这里不做赘述。
3、有时候配置二层远程端口镜像需要关闭MAC学习功能.
由于镜像报文的目的MAC与原始报文目的MAC相同,不是监控设备的MAC,也就是说,镜像报文不能通过MAC表进行转发,而是依赖未知单播的处理流程——广播方式进行转发。
假设用于走镜像流量的VLAN为vlan10,只要VLAN10对应的MAC表中不包含镜像报文目的MAC对应的表项,镜像报文就可以通过广播方式转发到Server。
特别注意做二层镜像的时候最好不要同时抓同一端口的出
入两个方向的包,以上图中抓HostA和HostB的通信包为例,如果在SwitchA的GE1/0/1口同时抓出、入两个方向的包,因为GE1/0/1的入方向就有以MacA为源MAC地址,以MacB为目的MAC地址的数据流,而GE1/0/1的出方向就会有以MacB源MAC地址、以MacB为目的MAC地址的数据流,因为交换机端口会主动学习数据包的源MAC地址,所以当出、入两个方向被镜像的报文流到达SwitchB的GE1/0/2口时,SwitchB的GE1/0/2口就会在vlan10内同时学习到MacA和MacB地址,见图中SwitchB的mac表,又因为从SwitchA镜像过来的数据流的目的MAC也正好是MacA和MacB,所以镜像过来的报文SwitchB便不再认为是未知单播报文,而是认为是普通单播报文从SwitchB的GE1/0/2口在vlan10内发送出去,导致本地Server抓不到包。
如果一定要同时抓两个方向的包,则要关闭用于镜像的vlan内的mac地址学习功能。
另外,如果vlan10内通过某种其他方式学习到了目的MAC(比如镜像端口加入了vlan10,还有一些更复杂的情况可以参看华为S9312文档里二层远程端口镜像需要关闭MAC学习功能的案例),则此时也需要关闭该vlan内的MAC学习功能,但不推荐这么做,一般配置二层远程端口镜像时不建议用同一个VLAN转发普通业务流量和镜像流量。
e)二层端口的流镜像
配置和本地流镜像基本一致,类推一下就可以了,这里不再赘述。
4、配置三层远程端口镜像
在Switch上进行如下配置,实现Server远程监控研发部访问IInternet的流量:
1、配置接口GE1/0/2为三层远程观察端口,指定封装镜像报文的目的地址是监控设备的地址,源地址为Switch上的接口地址。
2、配置接口GE1/0/1为镜像端口,将研发部访问Internet的流量复制一份到三层远程观察端口。
a)配置观察端口
在Switch上配置接口GE1/0/2为三层远程观察端口,指定封装镜像报文的目的地址是10.2.1.1,源地址是10.1.1.1(源地址可以任意指定本地地址,本例中使用loopback0)
[Switch]observe-port1interfacegigabitethernet1/0/2destination-ip10.2.1.1source-ip10.1.1.1vlan10
配置完成后,观察端口会在镜像报文外层添加GRE隧道头,再将其作为IP报文的数据部分,封装在IP报文内进行转发。
注意,如果到目的地址路由的出接口是trunk口的话,一定要带后面的vlan,否则不能成功远程镜像,vlan为到目的地址路由所走的vlan。
b)配置镜像端口
在Switch上配置接口GE1/0/1为镜像端口,将其入方向绑定到三层远程观察端口,即将镜像端口接收到的报文复制一份到三层远程观察端口。
[Switch]interfacegigabitethernet1/0/1
[Switch-GigabitEthernet1/0/1]port-mirroringtoobserve-port1inbound
c)验证配置结果的命令和本地镜像一样,这里不做赘述。
f)三层镜像的抓包结果是带GRE头的封装的ERSPAN报文(如下图的第一个包,这里目的IP就是截图电脑的IP),如果wireshark不能直接解析的话,则需要强制解析成ERSPAN帧,如图所示:
解析完之后就能看到普通的带GRE头的源数据报文:
e)三层接口流镜像
三层接口流镜像的配置和本地接口也类似,类推即可。
二、华为12808端口镜像:
华为12808的本地镜像和二层镜像配置和S9312的配置是一样的,但三层镜像的配置比较特殊,需要两边设备真正的建立GRE通道(S9312只需要镜像端口所在设备配置GRE即可)。
三层远端镜像配置(如果12808的隧道是VXLAN,那么需要将设备的隧道模式改为GRE,改完后设备需重启,所以可能实际用处不大):
IP,端口等配置如图所示,两边路由互通,现需要讲HOSTA的上联流量镜像到server,
1、在SwitchA和SwitchB之间配置GRE隧道
将隧道模式改为GRE
[~SwitchA]iptunnelmodegre
[*SwitchA]commit
[~SwitchB]iptunnelmodegre
[*SwitchB]commit
配置完后需要重启。
配置GRE通道
[~SwitchA]interfaceTunnel1
[*SwitchA-Tunnel1]tunnel-protocolgre
[*SwitchA-Tunnel1]ipaddress10.1.4.124
[*SwitchA-Tunnel1]source10.1.2.2
[*SwitchA-Tunnel1]destination10.1.3.2
[*SwitchA-Tunnel1]quit
[*SwitchA]commit[~SwitchB]interfaceTunnel1
[*SwitchB-Tunnel1]tunnel-protocolgre
[*SwitchB-Tunnel1]ipaddress10.1.4.224
[*SwitchB-Tunnel1]source10.1.3.2
[*SwitchB-Tunnel1]destination10.1.2.2
[*SwitchB-Tunnel1]quit
[*SwitchB]commit
2、配置SwitchA的远程观察端口和镜像端口。
在SwitchA上配置接口Tunnel1为远程观察端口,配置接10GE1/0/1为镜像端口。
[~SwitchA]observe-port1interfaceTunnel1
[*SwitchA]interface10ge1/0/1
[*SwitchA-10GE1/0/1]port-mirroringobserve-port1inbound
[*SwitchA-10GE1/0/1]quit
[*SwitchA]commit
3、配置SwitchB的本地观察端口和镜像端口。
在SwitchB上配置接口10GE1/0/1为本地观察端口,配置接口10GE1/0/2为镜像端口
[~SwitchB]observe-port1interface10ge1/0/1
[*SwitchB]interface10ge1/0/2
[*SwitchB-10GE1/0/2]port-mirroringobserve-port1inbound
[*SwitchB-10GE1/0/2]quit
[*SwitchB]commit
三、华为S2352交换机端口镜像:
1、配置本地镜像
华为S2352设备配置本地镜像和华为S9312的配置是一样的,这里不做赘述。
2、配置二层远程镜像
a).在SourceSwitch设备上配置需要远程镜像的接口和远程镜像VLAN(镜像端口不允许加入到远程镜像VLAN)
执行命令vlanvlan-id,创建RSPANVLAN并进入VLAN视图。
执行命令mac-addresslearningdisable,关闭MAC地址学习功能。
执行命令quit返回系统视图。
执行命令observe-portindexinterfaceinterface-typeinterface-numberreflect-typevlanvlan-id,配置观察接口(也就是将镜像包发往远程目的交换机的端口,也就是连中间交换机的端口)为反射类型接口并指定远程镜像VLAN。
执行命令interfaceinterface-typeinterface-number,进入远程镜像源接口的接口视图。
执行命令port-mirroringtoobserve-portindex{both|inbound|outbound},配置接口镜像。
当需要同时监控多个接口的入方向或出方向的报文时,可以重复执行步骤6和步骤7。
b).在IntermediateSwitch设备上透传远程镜像VLAN
c).在DestinationSwitch设备上配置远程镜像的观察接口
先创建镜像VLAN,并保证镜像VLAN的透传。
执行命令interfaceinterface-typeinterface-number,进入观察接口的接口视图。
执行命令porthybriduntaggedvlanvlan-id,将观察接口配置为Hybrid类型并允许远端镜像VLAN的报文通过。
执行命令quit返回系统视图,这样在观察端口便可抓取源端口的镜像报文。
3、比较老版本的S2352设备配置有点区别,如下所示(下面步骤中与新版本配置相同部分已忽略):
a)、在SourceS-switch设备上需将镜像vlan配置为RSPANVLAN。
操作步骤
执行命令vlanvlan-id,创建远程镜像VLAN并进入VLAN视图。
执行命令rspanvlanenable,配置VLAN为RSPANVLAN。
执行命令quit返回系统视图。
执行命令observing-porto-indexinterfaceinterface-typeinterface-numberrelay-type,配置观察接口为中继类型接口。
b)、在IntermediateS-switch设备上也需将镜像vlan配置为RSPANVLAN。
执行命令system-view,进入系统视图。
执行命令vlanvlan-id,创建远程镜像VLAN并进入VLAN视图。
执行命令rspanvlanenable,配置VLAN为RSPANVLAN。
执行命令quit返回系统视图。
然后再透传该VLAN。
c)、在DestinationS-switch设备上配置远程镜像的观察接口
执行命令system-view,进入系统视图。
执行命令vlanvlan-id,创建远程镜像VLAN并进入VLAN视图。
执行命令rspanvlanenable,配置VLAN为RSPANVLAN。
执行命令quit返回系统视图。
执行命令observing-porto-indexinterfaceinterface-typeinterface-numberremote-type,配置观察接口为远程镜像类型,其余配置和上面新版本的配置是一样的。
4、华为S2352设备的流镜像配置和S9312一样,不再赘述,且该设备不支持三层远程镜像。
四、中兴8912
1、本地端口镜像配置:
端口gei_3/3连接了一台监控计算机,需监控gei_1/2收的流量
a).将gei_1/2配置为镜像端口
ZXR10(config)#interfacegei_1/2
ZXR10(config-if)#monitorsession1sourcedirectionrx
b).将gei_3/3配置为观察端口
ZXR10(config)#interfacegei_3/3
ZXR10(config-if)#monitorsession1destination
c).要监控gei_1/1、gei_1/2和gei_2/2收到的数据,可以通过上述的接口模式按个配置,也可以在全局配置模式下批量配置,配置如下:
全局配置模式:
ZXR10(config)#monitorsession1sourcegei_1/1-2,
gei_2/2directionrxdestinationgei_3/3
2、本地端口流镜像
将端口gei_1/8上源IP地址为168.2.5.6的数据流镜像到gei_1/4上。
ZXR10(config)#aclstandardnumber10
ZXR10(config-std-acl)#rule1permit168.2.5.5
ZXR10(config-std-acl)#rule2permit168.2.5.6
ZXR10(config-std-acl)#exit
ZXR10(config)#traffic-mirrorin10rule-id2interface
ZXR10(config)#interfacegei_1/8
ZXR10(config-if)#ipaccess-group10in
ZXR10(config-if)#exit
ZXR10(config)#interfacegei_1/4
ZXR10(config-if)#monitorsession1destination
3、二层端口远程镜像
二层端口远程镜像配置比较简单,以上面本地端口镜像的配置为例,只有观察端口配置有些区别其余配置均没有区别.
以上图为例:
将gei_3/3配置为流镜像的观察端口,并配置观察所用的vlan为10:
ZXR10(config)#interfacegei_3/3
ZXR10(config-if)#monitorsession1destinationrspan-vlanid10
依次类推,如果要配置二层端口远程流镜像,除观察端口要如上配置vlan外,其余流镜像配置和本地流镜像一样。
4、三层端口远程镜像
如图所示,在Switch1与Switch2之间建立一个tunnel,Switch1的端口gei_1/1作为镜像的源端口,配置ERSPAN镜像。
配置完成后,经过Switch1端口gei_1/1的报文就会封装ERSPAN的头,镜像到指定的目的IP上,比如图中的20.20.20.20,也可以直接指到抓包的Server的IP,只要保证路由可达。
配置如下:
ZXR10(config)#interfacegei_1/1
ZXR10(config-gei_1/1)#monitorsession1sourcedirectionboth
ZXR10(config-gei_1/1)#exit
ZXR10(config)#interfacetunnel1
ZXR10(config-tunnel1)#tunnelmodegreip
ZXR10(config-tunnel1)#tunnelsourceipv410.10.10.10
ZXR10(config-tunnel1)#tunneldestinationipv420.20.20.20
ZXR10(config-tunnel1)#monitorsession1destinationerspanflagsenable
tpid0x8100ttl128
ZXR10(config-tunnel1)#exit
这里本地收到的将是封装了GRE报文头的ERSPAN数据包,解析方法见上面S9312里的三层镜像中WIireShark的操作。
但是中兴89系列的三层远程镜像有问题,只支持当到目的IP去的路由所指的上联端口(如图中Switch1的1/2口)和镜像端口(如图中Switch1的1/1口)在同一块板卡时,才能正确转发镜像流,如不在同一板卡,比如假设图中Switch1和Switch2是通过2/1口互联,中兴89交换机就不会把镜像封装GRE报文头,而是和处理本地镜像一样,Switch1直接把1/1口的镜像流镜像到2/1口,则Switch2收到的报文就不带GRE封装头,像图中没有经过路由器还没有什么问题,但如果Switch1和Switch2中间经过了路由器,则中间路由器便不能将报文转到Switch2上。
五、H3C12510端口镜像
1、本地端口镜像
a).组网需求
通过配置源端口方式的本地端口镜像,使Server可以监控所有进、出市场部和技术部的报文。
b).组网图
c).配置步骤
#创建本地镜像组1
[Device]mirroring-group1local
#配置本地镜像组1的源端口为GigabitEthernet4/0/1和GigabitEthernet4/0/2,目的端口为GigabitEthernet4/0/3。
[Device]mirroring-group1mirroring-portGigabitEthernet4/0/1GigabitEthernet4/0/2both
[Device]mirroring-group1monitor-portGigabitEthernet4/0/3
d).验证配置
[Device]displaymirroring-groupall
2、本地流镜像
a).组网需求
某公司内的各部门之间使用不同网段的IP地址,其中市场部和技术部分别使用192.168.1.0/24和192.168.2.0/24网段.
通过配置流镜像,使Server可以监控技术部访问互联网的80端口流量,以及技术部在工作时间发往市场部的IP流量。
b).组网图
c).配置步骤
#创建ACL3000,并定义如下规则:
匹配技术部访问80端口的报文,以及在工作时间由技术部发往市场部的IP报文。
[DeviceA]aclnumber3000
[DeviceA-acl-adv-3000]rulepermittcpsource192.168.2.00.0.0.255destination-porteq80
[DeviceA-acl-adv-3000]rulepermitipsource192.168
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 城域网 常见 交换机 端口 远程 分析