网络技术二十一:ACL包过滤

ACL包过滤

ACL

定义

访问控制列表

用于数据流的匹配和筛选

常见功能

访问控制:ACL+Packet-filter

路由控制:ACL+Route-policy

流量控制:ACL+QOS

引入

ACL (Access Control List,访问控制列表)是用来实现数据包识别功能的

ACL可以应用于诸多方面:

包过滤防火墙功能

NAT (Network Address Translation,网络地址转换)

QoS (Quality of Service,服务质量) 的数据分类

路由策略和过滤

按需拨号

基于ACL的包过滤

ACL包过滤的局限性

定义

对进出的数据包逐包检查,丢弃或允许通过

包过滤必须配置在接口的某个方向上才能生效

一个接口的一个方向只能配置一个包过滤策略

包过滤的方向

入方向:只对从外部进入的数据包做过滤

出方向:只对从内部发出的数据包做过滤

包过滤的工作流程

1.数据包到达接口检查是否应用了ACL,是则进入匹配,否则放行

2.按照ACL编号匹配第一条规则,匹配则进一步检查该条规则动作,否则与下一条规则进行匹配

3.继续进行匹配,如匹配则检查规则动作,否则与下一条进行匹配

...

4.所有规则都不匹配,检查默认动作

注意事项

如果默认动作是允许,至少需要一条拒绝规则

如果默认动作是拒绝,至少需要一条允许规则

H3C的ACL用于包过滤默认允许,用于其他默认拒绝

把小范围的规则分配一个靠前的顺序

在不影响实际效果前提下,把包过滤尽量配置在离源地址最近的接口的入方向

入站包过滤流程

ACL分类

基本ACL

只对数据包的源地址进行匹配

编号2000-2999

高级ACL

对数据包的五元组进行匹配(源IP,目的IP,源端口,目的端口,协议)

编号3000-3999

常用命令

h3c\]acI basic'acl-number' 创建基本ACL,进入ACL视图 \[h3cJacl advanced 'acl-number' 创建高级ACL,进入ACL视图 \[h3c-acI-basic-2000\]rule 'rule id' 'permit/deny' source 'ip address' 'wild-mask' 创建基本ACL规则 如不写ruleid,则系统自动从0开始以5的倍数增加序号 \[h3c-acl-advanced-3000\]rule 'rule id''permit/deny' 'protocol' source 'ip address''wild-mask' source-port 'port' destination 'ip address' 'wild-mask' destination-port 'eg/t/gt/neq/range' 'port' 创建高级ACL规则 \[h3c-GigabitEthernet 0/0\]packet-filter 'acl number' 'inbound/outbound' 配置包过滤 \[h3c\]packet-filter default deny 更改默认动作为拒绝

相关推荐
Antonio91511 分钟前
【音视频】HLS简介与服务器搭建
运维·服务器·音视频
kfepiza1 小时前
Debian的`/etc/network/interfaces`的`allow-hotplug`和`auto`对比讲解 笔记250704
linux·服务器·网络·笔记·debian
无妄-20241 小时前
软件架构升级中的“隐形地雷”:版本选型与依赖链风险
java·服务器·网络·经验分享
R.X. NLOS1 小时前
VS Code远程开发新方案:使用SFTP扩展解决Remote-SSH连接不稳定问题
运维·服务器·ssh·debug·vs code
群联云防护小杜2 小时前
构建分布式高防架构实现业务零中断
前端·网络·分布式·tcp/ip·安全·游戏·架构
轩情吖5 小时前
Qt的第一个程序(2)
服务器·数据库·qt·qt creator·qlineedit·hello world·编辑框
岸边的风5 小时前
无需公网IP的文件交互:FileCodeBox容器化部署技术解析
网络·网络协议·tcp/ip
世事如云有卷舒6 小时前
Ubunt20.04搭建GitLab服务器,并借助cpolar实现公网访问
linux·服务器·gitlab
Zonda要好好学习6 小时前
Python入门Day4
java·网络·python
Little-Hu6 小时前
QML TextEdit组件
java·服务器·数据库