【网络安全】网络基础第一阶段——第四节:网络协议基础---- VRRP与网络架构设计
目录
一、VRRP
1.1 VRRP使用场景及简介
1.2 VRRP基本原理
1.2.1 VRRP基本结构
1.2.2 设备类型
1.2.3 VRRP工作原理
1.3 VRRP的基本配置
1.3.1 基于三层交换机的VRRP组配置
1.3.2 SMTP+VRRP经典组网
1.4 端口聚合
1.4.1 端口聚合技术
1.4.2 聚合模式
1.4.3 Eth-trunk
二、访问控制表(ACL)
2.1 ACL应用场景及工作原理
2.2 ACL分类
2.2.1 基础ACL(basic ACL)
2.2.2 高级ACL(Extended ACL)
2.2.3 其他ACL
2.3 ACL的过滤原理
2.3.1 ACL的原理
2.4 ACL命令
2.5 标准ACL实验
2.5.1 ACL配置实验
一、VRRP
VRRP(Virtual Router Redundancy Protocol,虚拟路由器冗余协议)是一种提供路由器冗余的协议,以确保网络中的主机在默认网关发生故障时能够无缝切换到备用路由器,从而保证网络的连续性和可靠性。VRRP 允许一组路由器共同创建一个虚拟路由器,这个虚拟路由器对外表现为一个单一的IP地址。
1.1 VRRP使用场景及简介
终端设备访问不同网段设备的时候,必须经过网关。如果只有1个网关,那么网络就存在 单点故障,所以为了避免单点故障导致网络的通信中断, 所以,我们建议在一个网段中,可以同时添加多个网关,从而增加网关的冗余性和网络的可靠性; 但是,多网关的部署会带来其他的问题:
一是网关IP地址冲突,二是终端用户需要频繁的切换网关IP地址 。
针对上述两个问题,我们提出:在同网段的多个网关之间运行VRRP,形成1个虚拟网关,终端用户都配置和使用虚拟网关就可以了
想象一下,你正在家里上网,你的电脑需要通过一个路由器来连接到互联网。这个路由器就像是你家的大门,所有的网络流量都得通过它。但是,如果这个大门突然坏了,你就不能上网了,对吧?
VRRP就是用来解决这个问题的。它就像是在你的家里准备了另一个备用的大门,而且这个备用大门和原来的大门看起来是一模一样的。当原来的大门(主路由器)出现问题时,备用大门(备份路由器)就会立刻打开,让你的网络流量继续通过,这样你就不会发现自己突然上不了网了。
如上图的例子中,如果“与外界连通”的接口或路由器出现故障,那么内网的设备就无法访问外网了,也就是我们常说的“网关单点故障导致网络中断” ,而我们今天要讲的VRRP,就是要克服这种故障,进行备份。
例如现在,公司的网络出现了变化,他买了两台路由器作为“网络的出口”,然后将这两个都能作为网关的接口加入“同一个备份小组”,现在对于我们来说,现在就有一组“两个网关的接口”。
由此延伸,在VRRP中有“虚拟IP地址”这个概念, 代表着“一组两个网关接口”,例如上图,我们用10.100.10.1这个虚拟IP去代表两个网关接口,然后在PC上配置网关的时候写这个虚拟IP就行了
1.2 VRRP基本原理
1.2.1 VRRP基本结构
VRRP的基本思想:
- 就是将多个三个设备的接口加入到一个VRRP备份组中,用虚拟IP地址代表一组网关。
- 仅有master接口承担网关的转发功能;
- 当master接口出现故障时,会在backup接口中重新选取一个作为master接口
- 只要VRRP备份组中仍有一个接口正常工作,网络对外通信就不会中断
- VRRP优先级最高的成功master接口(优先级相同时,IP地址大的成为master)
注:VRRP主备路由器切换的情况
- 如果Master发生故障,则主备切换:Backup在Master_Down_Interval时间内未收到Master发送的状态通告报文,则立即成为Master
- 如果原Master故障恢复,则主备回切:发现收到RouterB的VRRP报文中的优先级比自己低,RouterA立即抢占成为Master
1.2.2 设备类型
①主(master)路由器:
通过比较VRRP优先级,优先级大的是master路由器; 周期性的发送VRRP报文,维护master路由器和备份路由器的身份; 周期时间默认是1s; 备份网关,通过比较 VRRP 优先级,优先级小的是备份路由器
②备份(backup)路由器:
通过不断的接收master路由器发送的 VRRP 报文来判断master路由器的状态; 如果在一定的时间内,收不到 VRRP 报文,则认为master路由器出现故障,自己升级为master路由器; 这个“一定的时间”,默认是“master路由器发送VRRP的周期”的3倍,所以默认是 3s
③虚拟网关:
通过VRRP虚拟出来的网关IP地址,这个网关IP地址,是配置在终端设备上的; 终端设备访问其他网段时,直接将数据发送给虚拟网关IP地址, 此时只有master路由器会回应针对虚拟网关IP地址的ARP请求,所以最终终端设备发送的数据 发送到了master路由器设备上
④VRID:
相同在同一个组中 只有在同一个组中 才会 共享 虚拟ip 虚拟路由器的标识。有相同VRID的一组路由器构成一个虚拟路由器VRRP报文格式VRRP只使用到advertisement这一种报文,VRRP使用ip报文作为传输协议报文,协议号为112,使用固定的组播地址224.0.0.18进行发送
⑤VRRP状态机:
VRRP协议中定义了三种状态机:初始状态(Initialize)、活动状态(Master)、备份状态(Backup)。其中,只有处于活动状态的设备才可以转发那些发那些发送到虚拟IP地址的报文
⑥Initialize:
设备启动时进入此状态,当收到接口Startup的消息,将转入Backup或Master状态(IP地址拥有者的接口优先级为255,直接转为Master)。在此状态时,不会对VRRP报文做任何处理
1.2.3 VRRP工作原理
- 虚拟路由器中的路由器根据优先级选举出Master。Master路由器通过发送免费ARP报文,将自己的虚拟MAC地址通知给与它连接的设备或者主机,从而承担报文转发任务
- Master路由器周期性发送VRRP报文,以公布其配置信息(优先级等)和工作状况
- 如果Master路由器出现故障,虚拟路由器中的Backup路由器将根据优先级重新选举新的Master
- 虚拟路由器状态切换时,Master路由器由一台设备切换为另外一台设备,新的Master路由器只是简单地发送一个携带虚拟路由器的MAC地址和虚拟IP地址信息的免费ARP报文,这样就可以更新与它连接的主机或设备中的ARP相关信息。网络中的主机感知不到Master路由器已经切换为另外一台设备
- Backup路由器的优先级高于Master路由器时,由Backup路由器的工作方式(抢占方式和非抢占方式)决定是否重新选举Master
1.3 VRRP的基本配置
1.3.1 基于三层交换机的VRRP组配置
三层交换机通过配置vlanif接口,然后配置VRRP
接入层交换机SW3
# 创建vlan
[SW3]vlan batch 10
# 连接PC的接口为access
[SW3]interface Ethernet0/0/1
[SW3-Ethernet0/0/1]port link-type access
[SW3-Ethernet0/0/1]port default vlan 10
# 上行链路为trunk
[SW3]interface GigabitEthernet0/0/1
[SW3-GigabitEthernet0/0/1]port link-type trunk
[SW3-GigabitEthernet0/0/1]port trunk allow-pass vlan 10
[SW3]interface GigabitEthernet0/0/2
[SW3-GigabitEthernet0/0/2]port link-type trunk
[SW3-GigabitEthernet0/0/2]port trunk allow-pass vlan 10
三层交换机SW1&SW2配置相同
# 创建vlan
vlan 10
# 交换机相连链路为trunk
interface GigabitEthernet0/0/1
port link-type trunk
port trunk allow-pass vlan 10
VRRP配置
SW1作为主网关
[SW1]interface Vlanif10
[SW1-Vlanif10]ip address 192.168.10.253 255.255.255.0
[SW1-Vlanif10]vrrp vrid 1 virtual-ip 192.168.10.254
[SW1-Vlanif10]vrrp vrid 1 priority 120 # 优先级120,默认100
[SW1-Vlanif10]vrrp vrid 1 preempt-mode timer delay 20 # 抢占时延
SW2作为备用网关
[SW2]interface Vlanif10
[SW2-Vlanif10]ip address 192.168.10.252 255.255.255.0
[SW2-Vlanif10]vrrp vrid 1 virtual-ip 192.168.10.254
VRRP检查
[SW1] dis vrrp brief
VRID State Interface Type Virtual IP
----------------------------------------------------------------
1 Master Vlanif10 Normal 192.168.10.254
----------------------------------------------------------------
Total:1 Master:1 Backup:0 Non-active:0
[SW2]dis vrrp brief
VRID State Interface Type Virtual IP
----------------------------------------------------------------
1 Backup Vlanif10 Normal 192.168.10.254
----------------------------------------------------------------
Total:1 Master:0 Backup:1 Non-active:0
- SW1 目前是 Master 状态,正在处理 Vlanif10 接口上的 VRRP 流量,虚拟 IP 地址为 192.168.10.254。
- SW2 目前是 Backup 状态,如果 SW1 出现故障,SW2 将接管 Master 角色,继续提供服务。
1.3.2 SMTP+VRRP经典组网
STP(Spanning Tree Protocol,生成树协议)是一种网络协议,用于在局域网(LAN)中消除环路,同时确保网络的冗余性和可靠性。STP的主要目的是在多个互联的网络交换机之间创建一个无环路的“树形”网络拓扑。
为了解决STP的一些问题,出现了一些增强的STP协议,如RSTP(Rapid Spanning Tree Protocol,快速生成树协议)和MSTP(Multiple Spanning Tree Protocol,多生成树协议)
- RSTP:RSTP提供了更快的收敛时间和更少的资源浪费,通过改进状态机和端口角色来实现。
- MSTP:MSTP允许在同一物理网络中创建多个生成树实例,每个实例可以有不同的根桥,从而优化网络流量和负载均衡。
二层配置:划分vlan,接口类型,STP生成树
SW1 :连接交换机的为access,上行链路为trunk
# vlan划分
[SW1]vlan batch 10 20
# access接口
[SW1] interface Ethernet0/0/1
[SW1-Ethernet0/0/1] port link-type access
[SW1-Ethernet0/0/1] port default vlan 10
[SW1] interface Ethernet0/0/2
[SW1-Ethernet0/0/2] port link-type access
[SW1-Ethernet0/0/2] port default vlan 20
# trunk链路
[SW1]interface GigabitEthernet0/0/1
[SW1-GigabitEthernet0/0/1] port link-type trunk
[SW1-GigabitEthernet0/0/1] port trunk allow-pass vlan 10 20
[SW1] interface GigabitEthernet0/0/2
[SW1-GigabitEthernet0/0/2] port link-type trunk
[SW1-GigabitEthernet0/0/2] port trunk allow-pass vlan 10 20
# MSTP的实例配置
[SW1]stp region-configuration
[SW1-mst-region]region-name Huawei
[SW1-mst-region]instance 1 vlan 10 20
[SW1-mst-region]active region-configuration
SW2:连接交换机的为access,上行链路为trunk
# VLAN划分
[SW2]vlan batch 30 40
# access接口
[SW2]interface Ethernet0/0/1
[SW2-Ethernet0/0/1]port link-type access
[SW2-Ethernet0/0/1]port default vlan 30
[SW2]interface Ethernet0/0/2
[SW2-Ethernet0/0/2]port link-type access
[SW2-Ethernet0/0/2]port default vlan 40
# Trunk链路
[SW2]interface GigabitEthernet0/0/1
[SW2-GigabitEthernet0/0/1]port link-type trunk
[SW2-GigabitEthernet0/0/1]port trunk allow-pass vlan 30 40
[SW2]interface GigabitEthernet0/0/2
[SW2-GigabitEthernet0/0/2]port link-type trunk
[SW2-GigabitEthernet0/0/2]port trunk allow-pass vlan 30 40
# MSTP的实例配置
[SW2]stp region-configuration
[SW2-mst-region]region-name Huawei
[SW2-mst-region]instance 2 vlan 30 40
[SW2-mst-region]active region-configuration
L3-S1:配置trunk链路、配置MSTP生成树
# VLAN划分
[L3-S1]vlan batch 10 20 30 40
# Trunk链路
[L3-S1]interface GigabitEthernet0/0/1
[L3-S1-GigabitEthernet0/0/1]port link-type trunk
[L3-S1-GigabitEthernet0/0/1]port trunk allow-pass vlan 10 20
[L3-S1]interface GigabitEthernet0/0/2
[L3-S1-GigabitEthernet0/0/2]port link-type trunk
[L3-S1-GigabitEthernet0/0/2]port trunk allow-pass vlan 30 40
[L3-S1]interface GigabitEthernet0/0/24
[L3-S1-GigabitEthernet0/0/24]port link-type trunk
[L3-S1-GigabitEthernet0/0/24]port trunk allow-pass vlan 10 20 30 40
# MSTP的实例配置
[L3-S1]stp region-configuration
[L3-S1-mst-region]region-name Huawei
[L3-S1-mst-region]instance 1 vlan 10 20
[L3-S1-mst-region]instance 2 vlan 30 40
[L3-S1-mst-region]active region-configuration
# 主备根桥
[L3-S1]stp instance 1 root primary
[L3-S1]stp instance 2 root secondary
L3-S2:配置trunk链路、配置MSTP生成树
# vlan划分
[L3-S2]vlan batch 10 20 30 40
# trunk链路
[L3-S2]interface GigabitEthernet0/0/1
[L3-S2-GigabitEthernet0/0/1]port link-type trunk
[L3-S2-GigabitEthernet0/0/1]port trunk allow-pass vlan 10 20
[L3-S2]interface GigabitEthernet0/0/2
[L3-S2-GigabitEthernet0/0/2]port link-type trunk
[L3-S2-GigabitEthernet0/0/2]port trunk allow-pass vlan 30 40
[L3-S2]interface GigabitEthernet0/0/24
[L3-S2-GigabitEthernet0/0/24]port link-type trunk
[L3-S2-GigabitEthernet0/0/24]port trunk allow-pass vlan 10 20 30 40
# MSTP的实例配置
[L3-S2]stp region-configuration
[L3-S2-mst-region]region-name Huawei
[L3-S2-mst-region]instance 1 vlan 10 20
[L3-S2-mst-region]instance 2 vlan 30 40
[L3-S2-mst-region]active region-configuration
# 主备根桥
[L3-S2]stp instance 2 root primary
[L3-S2]stp instance 1 root secondary
三层配置:IP地址 、路由、VRRP
L3-S1
# L3-S1 作为vlan10 和 VLAN20的主网关
[L3-S1]interface Vlanif10
[L3-S1-Vlanif10]ip address 192.168.10.253 255.255.255.0
[L3-S1-Vlanif10]vrrp vrid 1 virtual-ip 192.168.10.254
[L3-S1-Vlanif10]vrrp vrid 1 priority 120
[L3-S1-Vlanif10]vrrp vrid 1 preempt-mode timer delay 20
[L3-S1]interface Vlanif20
[L3-S1-Vlanif20]ip address 192.168.20.253 255.255.255.0
[L3-S1-Vlanif20]vrrp vrid 1 virtual-ip 192.168.20.254
[L3-S1-Vlanif20]vrrp vrid 1 priority 120
[L3-S1-Vlanif20]vrrp vrid 1 preempt-mode timer delay 20
#
# L3-SW1 作为vlan30和VLAN40的备网关
[L3-S1]interface Vlanif30
[L3-S1-Vlanif30]ip address 192.168.30.253 255.255.255.0
[L3-S1-Vlanif30]vrrp vrid 2 virtual-ip 192.168.30.254
[L3-S1]interface Vlanif40
[L3-S1-Vlanif40]ip address 192.168.40.253 255.255.255.0
[L3-S1-Vlanif40]vrrp vrid 2 virtual-ip 192.168.40.254
L3-S2
# L3-SW2 作为vlan10 和 VLAN20的备网关【同时也是vlan10和20的备根桥】
#
[L3-S2]interface Vlanif10
[L3-S2-Vlanif10]ip address 192.168.10.252 255.255.255.0
[L3-S2-Vlanif10]vrrp vrid 1 virtual-ip 192.168.10.254
[L3-S2]interface Vlanif20
[L3-S2-Vlanif20]ip address 192.168.20.252 255.255.255.0
vrrp vrid 1 virtual-ip 192.168.20.254
# 作为vlan30 和40的主网关【同时也是vlan30和40的主根桥】
[L3-S2]interface Vlanif30
[L3-S2-Vlanif30]ip address 192.168.30.252 255.255.255.0
[L3-S2-Vlanif30]vrrp vrid 2 virtual-ip 192.168.30.254
[L3-S2-Vlanif30]vrrp vrid 2 priority 120
[L3-S2-Vlanif30]vrrp vrid 2 preempt-mode timer delay 20
[L3-S2]interface Vlanif40
[L3-S2-Vlanif40]ip address 192.168.40.252 255.255.255.0
[L3-S2-Vlanif40]vrrp vrid 2 virtual-ip 192.168.40.254
[L3-S2-Vlanif40]vrrp vrid 2 priority 120
[L3-S2-Vlanif40]vrrp vrid 2 preempt-mode timer delay 20
检查:
display vrrp brief 查看VRRP简要信息
display stp brief 查看STP简要信息
# L3-SW1是vlan10 和 vlan20的主网关,是vlan30和vlan40的备网关
[L3-SW1]display vrrp brief
VRID State Interface Type Virtual IP
----------------------------------------------------------------
1 Master Vlanif10 Normal 192.168.10.254
1 Master Vlanif20 Normal 192.168.20.254
2 Backup Vlanif30 Normal 192.168.30.254
2 Backup Vlanif40 Normal 192.168.40.254
# L3-SW2是vlan30 和 vlan40的主网关,是vlan10和vlan20的备网关
[L3-SW2]display vrrp brief
VRID State Interface Type Virtual IP
----------------------------------------------------------------
1 Backup Vlanif10 Normal 192.168.10.254
1 Backup Vlanif20 Normal 192.168.20.254
2 Master Vlanif30 Normal 192.168.30.254
2 Master Vlanif40 Normal 192.168.40.254
----------------------------------------------------------------
Total:4 Master:2 Backup:2 Non-active:0
# L3-SW1是vlan10 和 vlan20的主根桥,是vlan30和vlan40的备根桥
[L3-SW1]display stp brief
MSTID Port Role STP State Protection
1 GigabitEthernet0/0/1 DESI FORWARDING NONE
1 GigabitEthernet0/0/24 DESI FORWARDING NONE
2 GigabitEthernet0/0/2 ALTE DISCARDING NONE
2 GigabitEthernet0/0/24 ROOT FORWARDING NONE
# L3-SW2vlan10 和 vlan20的备根桥,是vlan30和vlan40的主根桥
[L3-SW2]display stp brief
MSTID Port Role STP State Protection
1 GigabitEthernet0/0/1 DESI FORWARDING NONE
1 GigabitEthernet0/0/24 ROOT FORWARDING NONE
2 GigabitEthernet0/0/2 MAST FORWARDING NONE
2 GigabitEthernet0/0/24 DESI FORWARDING NONE
1.4 端口聚合
1.4.1 端口聚合技术
端口聚合,通常称为链路聚合或以太网绑定,是一种将多个物理端口捆绑在一起作为单个逻辑通道使用的技术。这样可以增加吞吐量并提供冗余,以提高网络的可靠性和性能。
端口聚合的主要目的:
- 增加吞吐量:通过将多个端口捆绑在一起,可以增加链路的总带宽。
- 提供冗余:如果其中一个端口失败,流量可以自动切换到其他端口,以防止单点故障。
- 负载均衡:流量可以在聚合的端口之间进行分配,以优化网络资源的使用。
1.4.2 聚合模式
端口聚合的两种模式:
- 静态聚合:由网络管理员手动配置,指定哪些端口应该被捆绑在一起。
- 动态聚合:使用协议如LACP(链路聚合控制协议)动态地建立端口聚合组(LAG)。LACP可以自动地将多个物理端口捆绑在一起,并在端口状态变化时更新聚合组。
静态LACP汇聚由用户手工配置,不允许系统自动添加或删除汇聚组中的端口。汇聚组中必须至少包含一个端口,当汇聚组只有一个端口时,只能通过删除汇聚组的方式将该端口从汇聚组中删除。
动态LACP汇聚是一种系统自动创建/删除的汇聚,不允许用户增加或删除动态LACP汇聚中的成员端口。只有速率和双工属性相同、连接到同一个设备、有相同基本配置的端口才能被动态汇聚在一起。即使只有一个端口也可以创建动态聚,此时为单端口汇聚。
1.4.3 Eth-trunk
eth-trunk(链路聚合),可以把多个独立的物理接口绑定在一起作为一个大带宽的逻辑接口使用,多个物理接口负载分担,有效提高链路的可靠性。
如图,三个物理接口进行捆绑,形成逻辑的eth-trunk口,同时转发数据流量,提高带宽。
二、访问控制表(ACL)
访问控制列表(ACL)是一种重要的网络安全工具,用于在网络设备(如路由器和交换机)上创建规则,以控制数据包的流动。ACL可以基于数据包的各种属性(如源地址、目的地址、端口号等)来允许或拒绝数据包的通过。
- 访问控制表ACL(Access Control List)是由一条或多条规则组成的集合。所谓规则,是指描述报文匹配条件的判断语句,这些条件可以是报文的源地址、目的地址、端口号等。
- ACL本质上是一种报文过滤器,规则是过滤器的滤芯。设备基于这些规则进行报文匹配,可以过滤出特定的报文,并根据应用ACL的业务模块处理策略来允许阻止该报文通过。
想象一下,你在家里举办一个派对,而这个派对是邀请制的。你不希望随便什么人都能来参加,所以你需要在门口设置一个“门卫”来检查客人的邀请函。这个“门卫”就像是网络中的ACL。
2.1 ACL应用场景及工作原理
ACL广泛应用于多种网络环境中,包括但不限于:
- 网络安全:防止未授权访问和保护敏感数据。
- 网络性能优化:通过限制不必要的流量来提高关键业务的性能。
- 流量过滤:在VPN、防火墙等安全设备中用于匹配和控制流量。
- 策略管理:确保网络按照既定策略运行,如限制特定时间段的访问。
ACL的工作原理
ACL由一系列规则组成,通过将报文与ACL规则进行匹配,设备可以过滤出特定的报文。当数据包从接口经过时,由于接口启用了ACL,此时路由器会对报文进行检查,然后做出相应的处理
为什么需要ACL
根据规则过滤的ACL,能够做到阻塞攻击报文、为不同类报文流提供差分服务、对Telnet登陆/FTP文件下载进行控制等的功能,从而提高网络环境的安全性和网络传输的可靠性
ACL是如何工作的
ACL工作主要是根据规则进行,ACL规则里包括他的编号(顺序),动作(允许或者拒绝)规则佩佩的地址段(源/源-目的)生效时间段。
2.2 ACL分类
配置ACL时,ACL的类型应该与相应的编号范围保持一致
- 表号:创建ACL的时候,通过这个表号来确定是基础的还是高级的
- 编号:编写策略的编号,第二个编号
2.2.1 基础ACL(basic ACL)
- 表号范围:2000-2999
- 特点:基础ACL只能基于数据包的源IP地址来设定规则。这意味着它只能检查数据包是从哪里来的,但不能检查数据包要去哪里或者数据包里面包含什么信息。
- 使用场景:当你只需要根据来源地址来控制访问时,比如你想阻止某个特定的网络地址范围内的所有设备访问你的网络。
2.2.2 高级ACL(Extended ACL)
- 表号范围:3000-3999
- 特点:高级ACL的功能更加强大,它可以根据数据包的源IP地址、目的IP地址、协议类型(如TCP、UDP、ICMP等)、源端口号和目的端口号来设定规则。这使得高级ACL能够更精细地控制网络流量。
- 使用场景:当你需要更复杂的访问控制时,比如你想阻止来自特定IP的特定应用程序访问你的服务器,或者你想限制只有特定端口的流量可以通过。
2.2.3 其他ACL
1. 二层ACL
- 表号范围:4000-4999
- 特点:二层ACL工作在OSI模型的第二层(数据链路层),它可以根据以太网帧的信息(如MAC地址、帧类型等)来设定规则。
- 使用场景:这在你需要根据设备的物理地址或者帧类型来控制网络访问时非常有用,比如在防止ARP攻击或者控制某种类型的帧进出网络时。
2. 用户自定义ACL
- 表号范围:5000-5999
- 特点:用户自定义ACL允许你根据特定的字符串或者正则表达式来设定规则,这提供了极高的灵活性。
- 使用场景:当你需要根据数据包中的具体内容(比如特定的协议字段或者数据包负载中的文字)来控制访问时,用户自定义ACL就非常有用。
2.3 ACL的过滤原理
2.3.1 ACL的原理
ACL(Access Control List)是一种基于规则的包过滤技术,它通过检查经过网络设备(如路由器、交换机或防火墙)的数据包,并根据预设的规则列表决定是否允许或拒绝这些数据包的通过。
数据包检查:
- 当一个数据包到达网络设备的接口时,如果该接口上应用了ACL,设备就会检查这个数据包。
规则匹配过程:
- 顺序检查:数据包会按照ACL中定义的规则顺序进行检查,从上到下,从第一条规则开始。
- 规则匹配:设备会检查数据包的头部信息(如源IP、目的IP、端口号、协议类型等)是否与ACL中的某条规则相匹配。
动作执行:
- 允许(permit):如果数据包与某条规则匹配,并且该规则指定的动作是允许(permit),那么数据包将被允许通过。
- 拒绝(deny):如果数据包与某条规则匹配,并且该规则指定的动作是拒绝(deny),那么数据包将被拒绝通过。
- 默认行为:如果数据包没有与任何规则匹配,它将根据ACL的默认行为被允许或拒绝。通常,默认行为是拒绝所有,但也可以配置为允许所有。
匹配终止:
- 一旦数据包与某条规则匹配并执行了相应的动作,匹配过程就会终止,不再检查后续的规则。
应用方向:
- ACL可以应用于入站(inbound)或出站(outbound)流量。入站流量是指进入网络设备接口的流量,而出站流量是指离开网络设备接口的流量。
配置位置:
- ACL必须配置在数据包的必经之路上,通常是在路由器或交换机的接口上。
- 一个接口的同一个方向上只能应用一个ACL。
规则优先级:
- ACL规则的编号越小,优先级越高,越容易被匹配。
- 规则编号的步长(如5、10、15等)用于在规则之间留出空间,方便后续添加新规则。
日志记录:
- 某些ACL规则可以配置日志记录功能,当数据包匹配这些规则时,相关信息会被记录,便于网络管理员进行审计和监控。
注意:
- 一个接口有2个方向,in和out,ACL表必须应用到接口的某个方向,才能生效
- 一个接口的一个方向执行应用一张表
- 如果使用标准ACL控制过滤流量,必须写在靠近目标的端口
- 在所有的ACL表中,最后永远有一条默认隐藏的“允许所有”条目
- ACL在匹配规则是,是严格自上而下去匹配每一条。如果匹配成功某一条,则完成动作;如果没有匹配成功,则继续匹配下一条;如果匹配完所有条件,依然没有匹配成功,则直接丢弃拒绝通过
2.4 ACL命令
标准ACL命令
rule [rule-id] {permit|deny} [source {source-address source-wildcard | any} | other]
rule:这是一条规则
rule-id:规则编号,选填
permit|deny:二选一,允许或者拒绝
source:表示源IP地址信息
source-address:表示具体地址
source-wildcard:和 搭配使用,用来确定一个IP地址的集合。可以是一个IP,此时可简写为0
any:表示源IP可以是任意IP
other:进阶设置,fragment设置分片过滤,logging设置日志记录,time-range定时生效
2.5 标准ACL实验
1.拒绝源IP为192.168.10.1的数据包
acl 2000
rule deny source 192.168.10.1 0.0.0.0
2.拒绝源IP在192.168.10.0/24整个网段的所有数据包
acl 2000
rule deny source 192.168.10.0 0.0.0.255
3.拒绝源IP为192.168.10.0/24所有奇数主机发送的数据包
acl 2000
rule deny source 192.168.10.1 0.0.0.254
2.5.1 ACL配置实验
建立如下拓扑图:
配置路由器的端口ip地址和子网掩码,然后用Client1和2去ping任意服务器,通则正确
建立普通ACL,建立规则,并作用在路由器的g0/0/1端口
1.建立acl 2调用acl
acl 2000
#基本acl 列表
rule 5 deny source 192.168.1.1 0
#默认编号5 拒绝 来自192.168.1.1 的流量
int g0/0/1
traffic-filter outbound acl 2000
#数据流向
在接口下调用acl 分为两个方向
inbound方向--------当接口收到数据包时执行ACL
outbound方向-------当设备从特定接口向外发送数据时执行ACL
-----------------------
没有被acl匹配数据默认采用permit动作
-----------------------
基本acl需要调用在离目的设备最近的接口上
此时client1再访问server1,就会失败
建立高级 acl,不让192.168.1.1去访问192.168.2.1的tcp80端口,但可以访问21端口
高级 acl
acl number 3000
rule 5 deny tcp source 192.168.1.1 0 destination 192.168.2.1 0 destination-port eq www(80)
[R1-GigabitEthernet0/0/0]traffic-filter inbound acl 3000
此时再次访问192.168.2.1的http服务,失败。但ftp服务正常。