关于FK01在使用TAP获取镜像流量时阻断不生效问题的解决记录

问题描述

FK01在使用TAP获取镜像流量后发出的reset报文不被交换机转发

解决过程

通过现场抓包分析reset报文是在哪儿被丢弃的。

简易部署拓扑

1.抓FK01阻断口流量

用来确定FK01能够正常发出阻断包以及报文内容。具体操作为网线一端接笔记本一端接FK01阻断口,打开wireshark进行抓包,然后用预先在FK01中添加黑名单IP的设备访问客户外网资产,查看阻断口有无阻断报文发出。

FK01阻断口报文

可以看出FK01设备正常工作阻断口已发出阻断报文。

2.抓FK01上联交换机口流量

用来确认FK01阻断报文是否到达交换机。具体操作需要管理员在交换机进行配置,将FK01阻断口上联交换机口的流量镜像出来分析。

阻断口接交换机13口
可以看到阻断报文已发送至交换机。下一步需要去抓交换机下联防火墙口的流量。

3.抓交换机下联防火墙口流量

用来确认交换机是否转发FK01的阻断报文。具体操作跟上一步类似。这里的流量可能会比较大,需要对流量进行过滤,我们只查看reset报文,并且IP是我们预先添加在FK01黑名单中的IP,具体过滤命令如下

1
tcp.flags.reset==1&&ip.addr==103.251.98.177

过滤前

过滤后

可以看到交换机并没有将阻断报文转发出去,刚开始还以为是交换机的某种机制导致的不支持,后来经过FK01技术支持杨睿老师分析后,建议我们去抓给FK01的镜像流量(由于客户的流量是通过TAP给到FK01的,而在给老师画的设备部署位置的拓扑图中漏画了,画的是交换机给的镜像流量到FK01,导致耽误了不少时间😓😓😓)。

4.抓FK01镜像口流量

用来判断流量中是否打有双重VLAN TAG。在进行具体操作的时候有两个坑点,1是wireshark抓不到双vlan tag的包,需要进行设置(网上有参考资料,但我本机貌似没设置成功)2是05版本在admin视图下使用f tcpdump host ip进行抓包有问题(我没抓成功)。
最后我选择的是进入FK01的root终端进行抓包(需要申请passcode),具体操作如下:

  1. 通过console进入终端
  2. 登陆后输入admin进入admin视图
  3. 在admin视图下输入shell命令后输入申请的passcode进入root终端
  4. U盘接入FK01后用mount命令挂载
  5. 使用tcpdump进行抓包tcpdump -i eth1.2 host 103.251.98.177 -w jingx.pcap命令进行抓包,其中-i 后面跟的是镜像流量的网口,host后面跟的是你的黑名单IP,因为过滤了IP抓的时候记得触发下流量。
  6. 将jingx.pcap复制到U盘后用wireshark分析

jingx.pcap
可以看到同一个TCP流包含两个VLAN TAG,多出来了VLAN 4004是TAP标记上去的,并且交换机中并没有这个VLAN ID因此前面的我们FK01阻断包不被交换机转发的原因找到了,FK01技术支持杨睿老师这边也了我两个解决方案:1是TAP去掉4004 VLAN;2是新增交换机在阻断口与交换机之间去掉4004 VLAN TAG。
由于客户不能去掉TAP打的VLAN TAG因此我选择了第二个解决方案,但和客户一起实际测试了第二个方案并未成功。最终的解决办法是将放弃从TAP拿流量,直接从交换机拿流量,问题解决,测试阻断生效。

交个朋友
  • 版权声明: 本博客所有文章除特别声明外,著作权归作者所有。转载请注明出处!

吹吹牛吗?

微信