网络问题排障专题-AF网络问题排障

目录

一、数据交换基本原理

1、ARP协议工作原理

数据包如图:

2、二层交换工作原理

简述核心概念:

二层交换原理-VLAN标签

3、三层交换工作原理

二、AF各种部署模式数据转发流程

1、路由模式数据转发流程

三、分层/分组逐一案例讲解

1、问题现象分组说明

2、双向地址转换不生效案例讲解

AF收到请求后未转换数据包,或收到回包后未回包给客户端--AF自身问题判断依据:

外网口是拨号口如何抓包?

3、终端应用客户端访问异常案例讲解

思考:如果是一个应用联网异常,相比于访问公网网站等问题,难点在哪?

4、应用控制策略不生效案例讲解

AF收到请求后未拦截或放通数据--AF自身问题:

5、应用控制策略不生效案例讲解————基于域名

原理

方式

条件

新架构可在命令行中查看域名的对应关系:

封堵恶意域名

僵尸网络防护原理

DNS Snooping

问题

问题1:防火墙有双向地址转换,或者环境中有双向地址转换的情况下,如何判断真实IP是谁,快速溯源到日志。

问题2:如果客户通过双向地址映射内网服务器至公网,但不允许公网源ip:5.5.5.1来访问此服务器,请问NAT、ACL分别需要如何配置 ? 条件:公网ip:1.1.1.2、服务器ip:172.16.1.1、AF内网口ip:192.168.1.1、业务端口8083


一、数据交换基本原理

1、ARP协议工作原理

  • 以PC A向PC B发送数据为例:当发送数据时,PC A会在自己的ARP缓存表中寻找是否有目标IP地址。如果找到了,也就知道了目标MAC地址,直接把目标MAC地址写入帧里面发送就可以了。
  • 如果在ARP缓存表中没有找到相对应的IP地址,PCA就会在网络上发送一个广播,目标MAC地址是“FF FF FF FF.FF FF”,这表示向同一网段内的所有主机发出这样的询问:“192.200.121.253的MAC地址是什么?”网络上其他主机并不响应ARP询问,只有PCB接收到这个帧时,才向PC A做出这样的回应。
  • “192.200.121.253的MAC地址是28:51:32:04:ff:45”这样,主机A就知道了主机B的MAC地址,它就可以向主机B发送信息了。同同时它还更新了自己的ARP缓存表,下次再向主机B发送信息时,直接从ARP缓存表里查找就可以了,ARP缓存表采用了老化机制,在一段时间内如果表中的某一行没有使用,就会被删除,这样可以大大减少ARP缓存表的长度,加快查询速度。

数据包如图:

  • ARP请求包:

  • ARP应答包:

2、二层交换工作原理

  • 二层交换原理是指在计算机网络中,通过使用二层交换设备(如交换机)来实现数据包的转发和交换的原理。
  • 在二层交换原理中,数据包是根据其目标MAC地址进行转发的当一个数据包到达交换机时,交换机会查看数据包中的目标MAC地址,并将其与交换机的转发表进行比对。转发表中记录了与交换机相连的各个接口与对应的MAC地址。如果目标MAC地址在转发表中有对应的记录,交换机就会将数据包转发到相应的接口上;如果没有对应记录,交换机会将数据包广播到所有其他接口上,以便找到目标设备。
  • 二层交换原理的核心思想是建立和维护一个“转发表”,通过学习和更新来实现数据包的快速转发。当交换机接收到一个数据包时,它会检查源MAC地址,并将其与转发表进行比对。如果源MAC地址在转发表中没有对应记录,交换机会将该地址添加到转发表中,并将数据包转发到其他接口上。这样,交换机逐渐学习到网络中各个设备的位置,并能够根据目标MAC地址快速转发数据包。
  • 二层交换原理的优点是转发速度快、效率高,因为它只关注数据包的MAC地址,不需要进行复杂的网络层或传输层处理。这使得二层交换设备成为构建局域网中的核心设备,提供高速、可靠的数据传输。

简述核心概念:

(1)、数据到了设备,先会记录源MAC与入接口关系,下次转发就会知道这个MAC设备在这个接口下面。

(2)、如果查不到目的MAC往哪转发,就泛洪所有接口(除入接口外),如果收到了这个目前MAC的回包,就会按照第一步记录下来,之后的数据知道MAC与接口的对应关系了。

二层交换原理-VLAN标签

在二层交换中,VLAN (Virtual local Area Network,虚拟局域网)是一种逻辑上划分网络的技术。它可以将一个物理局域网划分为多个逻辑上独立的虚拟局域网,每个VLAN内的设备可以进行通信,而不受其他VLAN的影响。

  • Access口(访问口):Access口是用于连接终端设备(如计算机、IP电话、打印机等)的端口。它只能属于一个VLAN(虚拟局域网),并且只能传输属于该VLAN的数据包。Access口通常用于连接终端设备到交换机,并将其划分到相应的VLAN中。当数据包从Access口进入交换机时,交换机会将其标记上对应的VLAN ID,然后将其转发到该VLAN的其他端口。
  • Trunk口(干道口):Trunk口是用于连接交换机之间的端口,用于传输多个VLAN的数据包。它可以同时传输多个VLAN的数据,通过使用标记(Tagging)来区分不同的VLAN。Trunk口通常用于连接交换机之间,以实现VLAN的扩展和互联。当数据包从Trunk口进入交换机时,交换机会根据标记的VLAN ID将其转发到相应的VLAN。

上述图中,假如A、B、C都在同一个网段,如何让处于不同VLAN之间的主机互访?

  • 方法1:利用Trunk链路的收发标签特性,交换机之前的Trunk口,左边连接A和B的交换机中继本征vlan设置为10,右边连接C的交换机中继本征vlan设置为20,这样由于A和B上来会打上VLAN10的标签,到了中继链路由于本征VLAN是VLAN 10会把vlan 10的Tag剥离发送,到了对端由于数据流没打标签,这边本征VLAN是20,就会打上VLAN 20的Tag发走,最终到达主机C,主机C的回包也是一样。
  • 方法2:利用Access链路的收发标签特性,交换机之间设置Access接口,左边连接A和B的交换机的Access设置为10,右边连接C的交换机Access设置为20,这样根据Access收发标签的特性,A交换机左边接口收到了A的流量打上Tag 10的标记,通过Vlan 10的接口发走会剥离掉vlan 10的标签,此时数据流不带标签,到了对端由于没标签,会打了vlan 20的标签,然后最终到达主机C,主机C的回包也是一样。

3、三层交换工作原理

  • 三层交换原理是指在计算机网络中,通过使用三层交换设备(如三层交换机或路由器)来实现数据包的转发和交换的原理。
  • 在三层交换原理中,数据包是根据其目标IP地址进行转发的。当一个数据包到达三层交换设备时,设备会查看数据包中的目标IP地址并将其与路由表进行比对。路由表中记录了与设备相连的各个网络和对应的下一跳地址。如果目标IP地址在路由表中有对应的记录设备就会将数据包转发到相应的下一跳地址上,如果没有对应记录设备会将数据包丢弃或转发到默认路由。

如图所示,A访问B属于二层交换,A访问C则属于三层交换A访问C具体过程如下:(假设路由器已有相应的ARP表的情况)

(1)、A把自己的IP地址和C的IP地址比较,发现不在同一子网内:由发送给A自己的网关进行处理

(2)、此时数据包源IP为121.235,目的IP为1.1,源MAC为b1-2f目的MAC为34-45

(3)、路由器收到报文后判断出是三层报文,检查报文的目的IP地址,发现是自己的直连网段,则根据路由表中的对应接口(eth1)发送出去,此数据包源IP为121.235,目的IP为1.1,源MAC为00-02,目的MAC为00-01

(4)、C收到数据包后同理回复应答数据包给A

二、AF各种部署模式数据转发流程

1、路由模式数据转发流程

三、分层/分组逐一案例讲解

1、问题现象分组说明

2、双向地址转换不生效案例讲解

思考1:此拓扑中,为什么不能直接使用目的地址映射来实现访问 ?

原因:如只做目的地址映射,那么数据流分别是: 那么是源PC发出的包与收到的包五元组信息不对等,那么就会直接丢弃此包。

如拓扑数据流分析可见:一条目的地址转换+一条源地址转换=双向地址转换

思考2:若AF做了一个双向地址转换,此时在这条双向的前面还有相关的源地址转换(五元组能匹配上),那么这个双向地址转换还能生效吗?以及转换后的源ip是这个双向转换的源ip还是源地址转换的源ip呢?

可以生效,因为不管新架构还是老架构DNAT要优先于SNAT,双向NAT就是等于一条目的地址转换+一条源地址转换=双向地址转换,所以就会直接匹配双向地址转换。

AF收到请求后未转换数据包,或收到回包后未回包给客户端--AF自身问题判断依据:

(1)、从梳理的问题信息中,确认出入接口以及数据流五元组信息,则抓请求数据流是否到AF为以下命令:tcpdump -i eth1(入接口)host 源IP and host 目的IP and port 目的端口 -nn -c 100

(2)、抓出接口,确认AF是否转发请求,并转换信息正确tcpdump -i eth2(出接口)host 转换后源IP and host 转换后目的IP and port 转换后目的端口 -nn -c 100 坑点:新架构85版本以下,源地址转换的情况下,设备会默认转换源端口,导致服务器因会话原因而不响应相关数据

(3)、确认数据到了AF但未转发,则优先确认nat配置是否正常。 坑点:自定义服务中,限制了源端口导致策略无法匹配

(4)、确认nat策略是否勾选的自动放通数据,如勾选手动放通,优先开启定向直通测试。

(5)、确认设备去往服务器的路由配置正确且生效,可以防火墙自己te1net测试服务器看是否能通。

坑点:新架构默认策略路由优先于静态路由,会导致内网通过公网ip访问服务器时,数据包被发到了外网口了

新架构 show session 命令介绍: show session src-ip xx.xx.xx.xx dst-ip xx.xx.xx.xx

外网口是拨号口如何抓包?

有相应的数据流,我们带我们正常ETH1口带上PPPOES。And host就是后面加正常的host就是多一层协议,PPPOES正常就可以抓到。

tcpdump -i eth1(入接口) pppoes and  host 源IP and host 目的IP and port 目的端口 -nn -c 100

3、终端应用客户端访问异常案例讲解

思考:如果是一个应用联网异常,相比于访问公网网站等问题,难点在哪?

最大的问题是:应用与公网交互的五元组信息无法确认,或者五元组信息频繁变化无法确认。

使用NM34应用程序可以抓到应用的数据包。

4、应用控制策略不生效案例讲解

AF收到请求后未拦截或放通数据--AF自身问题:

判断依据:

(1)、从梳理的问题信息中,确认出入接口以及数据流五元组信息,则抓请求数据流是否到AF为以下命令:

tcpdump -i eth1(入\出接口)host 源IP and host 目的IP and port 目的端口 -nn -c 100

注意:客户提供的五元组信息,发送到AF时不一定就是原来的五元组,可能在中间经过了NAT 可以让发起方ping一个固定长度的包测试(目的方ping不通也没关系,只要数据包能发到AF即可),抓包时不写host条件,而只抓icmp包,通过包长即可区分数据五元组---windows指定长度是 -l、linux指定长度是 -s。

(2)、确认真实五元组,并且数据确认到AF后,使用AF自带的策略模拟匹配工具测试策略配置是否正确、或因其他ACL策略冲突导致失效。坑点:自定义服务中,限制了源端口导致策略无法匹配、存在基于应用的ACL导致被放通了tcp握手,造成能telnet通的情况。

(3)、查看是否存在对应五元组的黑白名单,可以通过开启定向直通的方式来确认是否存在黑/白名单拦截/放通。坑点:二层模式下放行的数据不会产生直通日志、黑白名单是基于ip来拦截的,所以配置了相关域名的话,可能会被匹配到数据而拦截/放通。

(4)、查看设备是否开启了长连接,开启长连接容易导致设备会话跑满而无法或由于配置了相关nat策略,导致数据被nat后默认放行了。

5、应用控制策略不生效案例讲解————基于域名

原理

原理:基于域名的应用控制策略,实际上依旧是依据ip信息来匹配AF通过记录域名对应ip的信息,当终端解析到ip后,放通ip,此时AF会将之前记录到的域名与ip的信息来对比匹配,从而实现拦截或放通。

方式

(1)、主动查询:配置主动查询后,AF会定期去主动解析此域名的ip

(2)、被动监听:相关此域名的dns流量经过AF时,AF会记录下域名解析结果。

条件

(1)、主动查询:AF的dns与内网dns服务器一致,保证解析结果一致、对应域名解析的结果不能过多或不断变化。

(2)、被动监听:PC的dns解析流量双向经过AF。

新架构可在命令行中查看域名的对应关系:

命令行:show netobj-domain XXX域名

封堵恶意域名

(1)、客户给了恶意域名让封堵,如果不在库里,优先使用自定义僵尸网络。

僵尸网络:基于DNS的流量进行探测并拦截。

(2)、客户给的域名特别多,但是这些域名又有重复(有相同特征),可以基于自定义IPS规则去拦截。

不用URL的原因是僵尸网络检测设备都会检测DNS域名的流量,一般URL防护内容安全这些没办法直接把URL也就是DNS解析的流量给拒绝掉,可能还会被外网通报,唯一能居家DNS解析流量就是基于域名拒绝DNS解析的流量只有僵尸网络。

URL方式

自定义IPS可以针对指定协议拦截

访问恶意域名,一般PC先去解析走DNS协议53端口,这个时候解析的流量就是外网有通报的情况下,他能检测到我们某个PC局域网去解析这个域名,只要解析就通报,拦截域名得想办法把他的DNS解析流量也拦截掉。

应用控制基于域名拦截(不建议):应用控制基于域名去拦截是无法拦截DNS解析的流量,他要放通DNS解析流量记录到DNS解析流量对应的IP以后,应用控制基于域名才能生效。我们开了应用控制策略基于域名主动查询的一个逻辑,可能防火墙会主动去访问这个恶意域名,也会被外网通报。

判断恶意域名的三个网站(两个网站都报那就判断不是误报)微步、VT(virustotal.com)情报社区(x.threatbook.com)、深信服威胁情报中心。

僵尸网络防护原理

僵尸网络防护工作原理:基于DNS流量进行判断,防火墙会判断你解析的域名是谁,是否匹配规则库,域名在规则库就会进行拦截让你解析不到。

DNS Snooping

DNS snooping的工作原理:DNS snooping是通过监视网络上的DNS流量来检测潜在的安全威胁或未经授权的访问尝试。具体来说,DNS snooping会拦截经过网络的DNS请求和响应数据包,并分析其中的内容。这些数据包中包含了域名和与之对应的IP地址,以及相关的查询信息。

当有一个DNS请求需要解析时,DNS snooping会检查该请求的源IP地址、目标IP地址、查询的域名,以及查询的类型等信息。通过分析这些信息,DNS snooping可以识别是否存在异常的查询行为,比如大量频繁的查询、域名伪造、DNS劫持等,从而警示网络管理员可能的安全威胁。

DNS snooping可以帮助网络管理员监测网络上的DNS流量,及时发现潜在的安全问题,并做出相应的应对措施,以提高网络的安全性和防御能力。

问题

问题1:防火墙有双向地址转换,或者环境中有双向地址转换的情况下,如何判断真实IP是谁,快速溯源到日志。

8.0.85版本的应用控制会记录日志,里边有NAT前的源地址和NAT后的地址。

问题2:如果客户通过双向地址映射内网服务器至公网,但不允许公网源ip:5.5.5.1来访问此服务器,请问NAT、ACL分别需要如何配置 ? 条件:公网ip:1.1.1.2、服务器ip:172.16.1.1、AF内网口ip:192.168.1.1、业务端口8083

黑名单:在目的地址转换之后,源地址转换之前匹配,配置防火墙前的公网ip就是居家防火墙映射前的地址,完全断掉服务器的访问就是配置服务器的私网IP地址。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/36372.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

免费分享一套SpringBoot+Vue在线水果(销售)商城管理系统【论文+源码+SQL脚本】,帅呆了~~

大家好,我是java1234_小锋老师,看到一个不错的SpringBootVue在线水果(销售)商城管理系统,分享下哈。 项目视频演示 【免费】SpringBootVue在线水果(销售)商城管理系统 Java毕业设计_哔哩哔哩_bilibili【免费】SpringBootVue在线水果(销售)商…

Android高级面试_8_热修补插件化等

Android 高级面试:插件化和热修复相关 1、dex 和 class 文件结构 class 是 JVM 可以执行的文件类型,由 javac 编译生成;dex 是 DVM 执行的文件类型,由 dx 编译生成。 class 文件结构的特点: 是一种 8 位二进制字节…

探索Facebook的未来世界:数字社交的演进之路

在数字化和全球化的浪潮中,社交网络如Facebook已经成为了人们日常生活不可或缺的一部分。然而,随着技术的迅猛发展和用户需求的不断变化,Facebook正在经历着社交平台的演进之路。本文将探索Facebook的未来世界,分析数字社交的发展…

技术选型新趋势:中小型企业如何选用高效CRM“小型应用”进行客户管理

众所周知,CRM应用通过优化客户信息管理、提升销售效率、提高客户服务质量、实现市场营销自动化以及支持数据分析与决策等方面,为企业创造更大的价值,提升企业的竞争力和市场份额。 对初创型、中小型企业来说,使用合适的CRM应用至…

【LLVM】学习使用PGO优化

笔者在查看PGO优化时看到了本站的这篇文章,其中代码和命令行部分贴上了序号,且命令行带上了$符号,不便于读者调试。 遂将代码重新整理到gitee,链接在此。 汇编代码分析 目前笔者使用的llvm版本为llvm-19,主要改动发生…

RK3588编译环境配置

安装Ubuntu18.04 安装Ubuntu请参考其他教程 安装vmware-tools 如果vmware版本过低,vmware-tools安装可能会出现各种问题。 建议直接用apt-get install安装vmware-tools sudo apt-get update sudo apt-get install open-vm-tools open-vm-tools-desktop vmware-…

从CVPR 2024看域适应、域泛化最新研究进展

域适应和域泛化一直以来都是各大顶会的热门研究方向。 域适应指:当我们在源域上训练的模型需要在目标域应用时,如果两域数据分布差异太大,模型性能就有可能降低。这时可以利用目标域的无标签数据,通过设计特定方法减小域间差异&a…

Flutter笔记(一)- 安装和配置Flutter

一、下载Flutter 访问网址:https://docs.flutter.dev/get-started/install?hlzh-cn 根据电脑所使用的操作系统的平台进行选择。笔者电脑的操作系统为Windows,因此选择如图1-1的Windows图片: 图1-1 Flutter网站(一) …

国行版苹果Vision Pro即将发售 高昂定价吓退普通消费者?

2024年2月2日,苹果第一代空间计算设备Vision Pro在美国上市。6月28日,国行版苹果Vision Pro也将正式发售,别为256GB版29999元、512GB版31499元、1TB版32999元。不过从此前Vision Pro预售情况来看,Vision Pro的“杀手锏”在“价格”…

【应届应知应会】Linux常用指令

SueWakeup 个人主页:SueWakeup 系列专栏:学习技术栈 个性签名:保留赤子之心也许是种幸运吧 本文封面由 凯楠📸友情提供 目录 文件与目录管理 目录操作命令: ls [选项] [目录或文件] mkdir 文件操作命令&#xf…

多媒体本地化的五个步骤

多媒体本地化为试图在多个全球目的地建立市场的企业提供了许多好处。 由于多媒体并不局限于一个内容标签,因此您需要注意一些元素。 这个过程通常从翻译开始,但因为我们处理的是视频和音频,所以从一开始就要处理一个附加层。让我们从这里开…

SqlServer 2008远程过程调用失败,错误代码[0x800706be]

1、解决方式: 将SQL 2008 R2升级到SP1或SP2 下载地址:SQL Server 2008 R2 Service Pack 2下载地址

非最大值抑制(NMS)函数

非最大值抑制(NMS)函数 flyfish 非最大值抑制(Non-Maximum Suppression, NMS)是计算机视觉中常用的一种后处理技术,主要用于目标检测任务。其作用是从一组可能存在大量重叠的候选边界框中,筛选出最具代表…

初学51单片机之长短键应用定时炸弹及扩展应用

51单片机RAM区域划分 51单片机的RAM分为两个部分,一块是片内RAM,一块是片外RAM。 data: 片内RAM从 0x00 ~0x7F 寻址范围(0-127) 容量共128B idata: 片外RAM从 0x00~0xFF 寻址范围(0-255) 容量共256B pdata&am…

定位问题6.27 petal数据接口问题

petal接口响应结果 响应结果为空的数据,而我们需要的是正确的响应结果。 排查问题 确认接口是否正确 以下是爬虫的配置文件内容,我查看了PETAL_URL的接口,并询问接口开发人员,得知接口地址并未改变 确认接口请求体是否正确 我使…

记一次对ouija渗透测试c语言逆向学习

概要 初始知识 web应用枚举 二进制逆向 文件枚举 堆栈溢出 学到知识 hash长度攻击 任意文件读取 二进制逆向分析 信息收集 端口扫描 nmap --min-rate 1000 -p- 10.129.30.104 发现22,80,3000端口 网站探测 目录枚举 feroxbuster -u http://10.1…

“数字政协”平台如何提高政协工作效率?正宇软件助力建设!

随着信息技术的飞速发展,数字化已成为推动各行各业转型升级的重要力量。在政协工作中,数字政协平台的建设与运用,正成为提高政协工作效率、促进民主协商的重要手段。本文将从数字政协平台的功能特点、优势分析以及实践应用等方面,…

何用Vue3和Plotly.js打造交互式3D图

本文由ScriptEcho平台提供技术支持 项目地址:传送门 利用 Plotly.js 创建交互式动画图表 应用场景 本代码适用于需要创建交互式动画图表的数据可视化项目。例如,可以用来展示时间序列数据或比较不同函数的行为。 基本功能 该代码使用 Plotly.js 库…

架构师篇-5、架构语言-ArchiMate

内容摘要: TOGAF内容元模型TOGAF架构语言ArchiMate3ArchiMate实践案例分享 TOGAF内容框架【核心内容元模型】 作为一个通用且开放式的标准,TOGAF需要采用一种非常灵活的方式来对其内容元模型进行定义,从而使得不同的企业可以根据自身需要对…

头歌——机器学习——决策树案例

第1关:基于决策树模型的应用案例 任务描述 本关任务:使用决策树算法完成成人收入预测。 相关知识 为了完成本关任务,你需要掌握:1.数据特征处理,2.使用决策树算法完成成人收入预测。 数据处理及特征工程 本次任务…