网络安全教程,数据传输原理(下)—— 网络设备部分传输原理

  • 作者:
  • 时间:2022-01-12 09:52:47
简介 网络安全教程,数据传输原理(下)—— 网络设备部分传输原理

0、前言

本主题主要讲述计算机网络世界中数据传送的原理,一共分为(上)(下)篇文章;
(上)主要描述主机部分传输原理;
(下)主要描述网络设备部分传输原理。

image.png

网络设备传输原理内容主要涉及以下知识点:

  1. 2/3层设备组成原理及其软件框架

  2. MAC表/路由表作用及来源

  3. 策略路由与路由策略

  4. FIB表

  5. 2/3层设备数据传输原理

  6. VLAN

  7. 端口聚合、LLDP、BFD、NQA、SYSLOG、端口镜像、SNMP、Flow分析

  8. 网络组网

1、L2/L3网络设备组成原理

网络设备根据其功能,在模块设计上主要有四个,2L交换模块主要为二层交换机上的核心功能,3L路由模块主要为三层交换机或者路由器上的核心功能,流分类模块主要为现在的一些SDN交换机上的核心功能,而转发引擎则是任何设备上应该具有的功能。
image.png

2、L2/L3网络设备软件框架

管理平面:是提供给网络管理人员使用TELNET、WEB、SSH、SNMP、RMON等方式来管理设备,并支持、理解和执行管理人员对于网络设备各种网络协议的设置命令。管理平面必须预先设置好控制平面中各种协议的相关参数,并支持在必要时刻对控制平面的运行进行干预。
控制平面:提供了数据处理转发前所必须的各种网络信息和转发查询表项 。
转发层面:具体按照控制平台的指令对数据进行转发。
服务平面:对外提供相应服务接口或功能。

image.png

3、MAC地址学习表

MAC地址学习表是二层数据包转发的依据,其来源主要分为两类:静态添加、动态学习
image.png

4、路由表

路由表是三层数据包转发的依据。
IP报文中的目的IP地址往往是主机地址,而路由表中的目的地址往往为网络地址,怎么让二者匹配呢?
这里面有个底层的操作:首先将IP报文中的目的地址和路由表项中的子网掩码进行“逻辑与”操作,得到一个网络地址,然后拿此网络地址与路由项中的网络地址做比较,如果一致就认为匹配,否则认为不匹配。
如果路由项匹配,则路由器查看所匹配的路由项的下一跳地址是否在直连的链路上。如果在直连的链路上,则根据此下一跳转发;如果不在直连的链路上,则需要在路由表中再次查找此下一跳地址所匹配的路由项(路由迭代)。
确定了下一跳地址后,路由器将此报文送往对应的接口,接口进行相应的地址解析,解析出对应的链路层地址后,对IP报文进行数据封装并转发。
image.png

4.1 路由表来源

image.png

4.2 动态路由协议

image.png

4.3 OSPF

OSPF:Open Shortest Path First 开放式最短路径优先是一种内部网关协议(IGP),用于在单一自治系统(AS)内决策路由,最多容纳上万条路由条目信息。
image.png

1.、数据包类型

Hello包用于邻居、邻接 发现、建立、保活 hello time 默认10s或30s
DBD包数据库描述包
LSR包链路状态请求
LSU包链路状态更新
LSack包链路状态确认

2.、状态机类型

状态含义
Down一旦本地发出hello包进入下一个状态
Init初始化收到的hello包若存在本地的RID进入下一个状态
2way双向通讯邻居关系建立的标志
Exstart预启动使用类似hello的DBD进行主从关系的选举,RID大为主优选进入下一状态
Exchange准交换使用真正的DBD进行数据库目录的共享,需要使用ACK确认
Loading加载使用LSR/LSU/LSAck来获取未知的LSA信息;
Full转发邻接关系建立的标志

3.、各个类型的LSA

类别名传播范围通告者携带的信息
1类LSA-router本区域内本区域内的每台路由器该区域每台设备的直连拓扑
2类LSA-Network本区域内该网段的DR该网段的拓扑
3类LSA-summary整个OSPF域ABRO IA 域间路由
4类LSA-asbr除ASBR所在区域外的ABRASBR的位置
5类LSA-ase整个OSPF域ASBRO E 域外路由

4.、特殊区域

同时不存在ASBR
末梢区域该区域拒绝4/5的LSA进入;由该区域连接骨干区域的ABR设备,向区域内发送一条3类的缺省路由
NSSA 非完全末梢区域在末梢区域的基础上进一步拒绝3类的LSA;仅保留一条3类的缺省路由; 先将该区域配置为末梢区域,然后仅在ABR上定义完全末梢即可


同时存在ASBR
NSSA 非完全末梢区域—拒绝非本区域内部产生4/5LSA,本区域ASBR产生的5类将通过7类LSA传输,到达ABR处进入骨干区域时,由7类转换回5类
完全NSSA– 完全的非完全末梢区域拒绝非本区域内部产生4/5LSA,本区域ASBR产生的5类将通过7类LSA传输,到达ABR处进入骨干区域时,由7类转换回5类

5.、接口网络类型

OSPF接口网络类型
p2phello time10s 自动建邻 不选DR/BDR
Broadcasthello time 10s 自动建邻 选DR/BDR
nbmahello time 30s 手工建立邻居 选DR/BDR

6.、选路规则
内部优于外部,一类优于二类,五类优于七类

4.4 BGP

BGP(Border Gateway Protocol 边界网关协议)是一种外部网关协议(EGP),用于在不同的自治系统(AS)之间交换路由信息;
最多容纳上百万条路由条目(目前互联网路由条目为50多万条);
BGP AS号由IANA互联网数字分配机构管理分配;
使用最多2字节长度的AS号码,即1-65535。其中1-64511为公有AS,64512-65534为私有AS;2009.1后,增加至4字节长度,即:65536 -4294967295。

image.png

BGP选路原则:

  1. 最高有weight优先,默认为0(思科特有,选大的)

  2. 本地优先级高的优先(只可以在IBGP邻居之间传递)

  3. 起源本路由器上的路由(network、aggregate-address)

  4. as-path最短的优先

  5. 最小的起源代码 (IGP 优先 EGP 优先 incomplete)

  6. 最低的med

  7. ebgp>ibgp

  8. 通过最近BGP邻居的路由

  9. 如果配置了maixmum-path[IBGP],就负载均衡。

  10. 最老的EBGP邻居学到的路由,是路由最老.

  11. 更低的router-id

  12. 始发路由器ID相同,那么选择 cluster-list短的,

  13. 优选来自于最低的邻居地址的路径,是BGP的neigbor配置中地址

5、策略路由

策略路由的功能是控制报文转发,其优先级高于路由表,数据转发先匹配策略路由,当匹配不上再去匹配路由表!

image.png

6、路由策略

IP报文中的目的IP地址往往是主机地址,而路由表中的目的地址往往为网络地址,怎么让二者匹配呢?这里面有个底层的操作:首先将IP报文中的目的地址和路由表项中的子网掩码进行“逻辑与”操作,得到一个网络地址,然后拿此网络地址与路由项中的网络地址做比较,如果一致就认为匹配,否则认为不匹配。
如果路由项匹配,则路由器查看所匹配的路由项的下一跳地址是否在直连的链路上。如果在直连的链路上,则根据此下一跳转发;如果不在直连的链路上,则需要在路由表中再次查找此下一跳地址所匹配的路由项(路由迭代)。
确定了下一跳地址后,路由器将此报文送往对应的接口,接口进行相应的地址解析,解析出对应的链路层地址后,对IP报文进行数据封装并转发。

image.png

7、策略路由与路由策略区别

image.png

8、FIB表

当路由表中存在多个路由项可以匹配目的IP地址时,路由查找进程会选择其中掩码最长的路由项用于转发。那么路由表中路由项数量越多,所需查找及匹配的次数也就越多,其转发效率也就越低。
为了做到控制平面和转发平面的分离,系统构建了另一张FIB表,也称为转发表,专注于数据报文的转发,其中FIB的表项来源于路由表项。
在计算路由信息的时候,不同路由协议所计算出来的路径可能会不同。在这种情况下,路由器会选择优先级较高的路由协议发现的路由作为最优路由,并置为Active状态;而其他路由作为备份路由,置为Inactive状态。此时Active状态的路由表项会由系统导入FIB表中,作为系统转发的依据。另外,在某些系统中,FIB表项也可能来源于ARP解析,即系统将通过ARP解析而得到的本地网段内的主机路由也添加到FIB表中。
FIB表与路由表是同步更新的,系统的控制平面发现新的路由信息,根据路由信息更新自己的路由表,生成新的Active状态的路由表项,然后更新FIB表;如果原路由表中处于Active状态的路由表项失效,系统也会删除相关FIB表项。

9、二层网络设备传输原理

image.png

10、三层网络设备传输原理

image.png

11、VLAN

VLAN(Virtual LAN),翻译成中文是“虚拟局域网”。其主要作用为隔离广播,不同VLAN的广播不会相互影响。
image.png

11.1 实现原理

image.png

11.2 VLAN间路由

image.png

11.3 三层交换机

image.png

12、端口聚合

image.png

13、LLDP

LLDP(Link Layer Discovery Protocol,链路层发现协议)是802.1ab中定义的链路层协议,它将本地设备的信息组织成TLV(Type/Length/Value,类型/长度/值)封装在LLDPDU(Link Layer Discovery Protocol Data Unit,链路层发现协议数据单元)中发送给直连的邻居,同时也把从邻居接收的LLDPDU 以标准MIB(Management Information Base,管理信息库)的形式保存起来。通过LLDP,设备可以保存和管理自己以及直连邻居设备的信息,供网络管理系统查询和判断链路的通信状况。LLDP不会配置也不会控制网络元素或流量,它只是报告第二层的配置。
image.png

14、BFD与NQA

BFD双向转发检测,在两台网络设备上建立会话,用来检测网络设备间的双向转发路径,为上层应用服务。BFD本身并没有邻居发现机制,而是靠被服务的上层应用通知其邻居信息以建立会话。会话建立后会周期性地快速发送BFD报文,如果在检测时间内没有收到BFD报文则认为该双向转发路径发生了故障,通知被服务的上层应用进行相应的处理。BFD可与静态路由、OSPF路由、BGP路由、VRRP协议联动。

image.png

NQA(Network Quality Analyzer)网络质量分析 是一种实时的网络性能探测和统计技术,可以对响应时间、网络抖动、丢包率等网络信息进行统计。NQA还提供了与Track和应用模块联动的功能,实时监控网络状态的变化。 NQA通过发送测试报文,对网络性能或服务质量进行分析,为用户提供网络性能参数,如时延抖动、HTTP的总时延、通过DHCP获取IP地址的时延、TCP连接时延、FTP连接时延和文件传输速率等。。NQA可与静态路由、OSPF路由、BGP路由、VRRP协议联动。NQA是一种单向检测机制。

image.png

15、SYSLOG

syslog是一种日志记录的标准协议。在UNIX系统,路由器、交换机等网络设备中,系统日志(System Log)记录系统中任何时间发生的大小事件。管理者可以通过查看系统记录,随时掌握系统状况。UNIX的系统日志是通过syslogd这个进程记录系统有关事件记录,也可以记录应用程序运作事件。通过适当的配置,我们还可以实现运行syslog协议的机器间通信,通过分析这些网络行为日志,藉以追踪掌握与设备和网络有关的状况。

一般可将日志类型分为:1、访问类日志,2、告警类日志,3、登陆类日志,4、操作变更类日志,5、其他审计类日志。

15.1 访问类日志

image.png

15.2 告警类日志

image.png

15.3 登陆类日志

主要是各类设备的登陆日志信息,包括通过web及ssh登陆的信息。主要元素有,源地址,登陆方式,登陆用户名,登陆状态等

image.png

15.4 操作变更类日志

主要为配置修改信息。如下,针对防火墙的策略的修改进行了记录。

image.png

15.5 其他审计和业务类日志

主要记录其他的审计日志,如:设备状态,接口状态等信息。

image.png

16、端口镜像

该技术能将网络中的流量复制到指定的设备端口上,是实现流量层面安全分析的基础。

image.png

17、SNMP

image.png

18、Flow分析技术

Flow分析技术是以数据流(将协议五元组相同的数据包归为一条流)为基本研究对象,由于不同的应用类型体现在会话连接或数据流上的状态各有不同,可以通过获取一系列流的行为特征,建立流量特征模型,通过分析会话连接流的包长、连接速率、传输字节量、包与包之间的间隔等信息来与流量模型对比,从而实现鉴别应用类型和攻击行为的目的。
Flow分析技术主要分为三部分:流特征选择、流特征提取、分类器。
Flow分析技术的前提是flow流报文的获取,一般可以通过:netflow、netstream、sflow等协议从网络设备中直接获取,也可以通过镜像数据包从特定工具(如nprobe)转化成flow流报文(UDP报文)。
image.png

19、QinQ

QinQ(802.1Q-in-802.1Q),也叫做VLAN Stacking或Double VLAN,由IEEE 802.1ad标准定义,是一项扩展VLAN空间的技术,通过在802.1Q标签报文的基础上再增加一层802.1Q的Tag来达到扩展VLAN空间的目的。一般应用在骨干网中,通过将用户私网VLAN Tag封装在公网VLAN Tag中,使报文带着两层VLAN Tag穿越运营商的骨干网络(公网),扩充VLAN数量,实现对用户的精细化管理。
IEEE 802.1Q中定义的VLAN ID只有12个比特,仅能表示4096个VLAN域,随着网络规模的扩大,4096个VLAN域已无法满足网络扩容的需求,为此,IEEE 802.1ad中在原有的802.1Q报文的基础上增加一层802.1Q Tag(也叫做VLAN Tag或标签),使VLAN数量增加到4094×4094,这种双层Tag的报文就叫做QinQ报文。
随着以太网的进一步发展以及运营商精细化运作的要求,QinQ的双层Tag又有了新的应用场景。它的内外层Tag可以代表不同的信息,如内层Tag代表用户,外层Tag代表业务。另外,QinQ报文带着两层Tag穿越运营商网络,内层Tag透明传送,也是一种简单、实用的VPN技术。
所以,QinQ产生的两大背景是:一是解决日益紧缺的VLAN ID资源问题;二是满足业务精细化管理的需求。
image.png

https://info.support.huawei.com/info-finder/encyclopedia/zh/QinQ.html

20、IPsec VPN

IPSec是为实现VPN功能而最普遍使用的协议。IPSec不是一个单独的协议,它给出了应用于IP层上网络数据安全的一整套体系结构。该体系结构包括认证头协议(Authentication Header,简称为AH)、封装安全负载协议(Encapsulating Security Payload,简称为ESP)、密钥管理协议(Internet Key Exchange,简称为IKE)和用于网络认证及加密的一些算法等。IPSec规定了如何在对等体之间选择安全协议、确定安全算法和密钥交换,向上提供了访问控制、数据源认证、数据加密等网络安全服务。
IPsec VPN 隧道的建立主要可以分为两个阶段:

  1. 第一阶段,协商创建一个通信信道(ISAKMP SA),并对该信道进行认证,为双方进一步的IKE通信提供机密性、数据完整性以及数据源认证服务;

  2. 第二阶段,使用已建立的ISAKMP SA建立IPsec SA。分两个阶段来完成这些服务有助于提高密钥交换的速度。

image.png

image.png

https://cshihong.github.io/2019/04/03/IPSec-VPN之IKE协议详解/

21、网络组网

image.png

22、总结与参考

image.png