ACL和NAT
ACL
ACL概述及背景
白名单:默认拒绝所有,放一个 可以通信一个 自己内 部的业务
黑名单:默认开放所有,加入一个,不能通信一个 京东 淘宝 有人 恶意攻击你
ACL 应用:
- 应用在接口的ACL-----过滤数据包(原目ip地址,原目 mac, 端口 五元组)
- 应用在路由协议-------匹配相应的路由条目
- NAT、IPSEC VPN、QOS-----匹配感兴趣的数据流 (匹配上我设置的 数据流的)
ACL 工作原理:
当数据包从接口经过时,由于接口启用了acl, 此时路由 器会对报文进行检查,然后做出相应的处理。
ACL 种类:
- 编号2000-2999---基本ACL----依据依据数据包当中的 源IP地址匹配数据(数据时从 哪个IP地址 过来的)
- 编号3000-3999---高级ACL----依据数据包当中源、目 的IP,源、目的端口、协议号匹配数据
- 编号4000-4999---二层ACL,MAC、VLAN-id、 802.1q
实操:
拓扑:
操作步骤:
(1)为客户机和服务器配置IP地址。
Client1:192.168.1.1/24

Client2:192.168.1.2/24

Server1:192.168.2.1/24

Server2:192.168.3.1/24

(2)为路由器分别设置接口IP地址和子网掩码。
为R1配置三个接口的IP地址和子网掩码,分别为:192.168.1.254/24、192.168.2.254/24和192.168.3.254/24。
(3)尝试用Client1 去ping通 Server1。
(4)为R1配置基本ACL
(5)测试,此时Client1 不能ping 通Server1
高级ACL
undo traffic-filter inbound ***删掉ACL
为Server1 配置端口号

Clicent1 获取地址,成功

[R1-GigabitEthernet0/0/1]acl number 3000 ***创建高级acl 3000
[R1-acl-adv-3000]rule 5 deny tcp source 192.168.1.1 0 destination 192.168.2.1 0 destination-port eq www(80) ***允许Client到Server的web 流量
[R1]int g0/0/0 ***进入接口g0/0/0
[R1-GigabitEthernet0/0/0]traffic-filter inbound acl 3000 ***在接口上配置,调用高级ACL 3000
再次尝试获取地址,失败,但仍能ping 通
ACL的应用原则:
- 基本ACL:尽量用在靠近目的点
- 高级ACL:尽量用在靠近源的地方(可以保护带宽和其他资源)
匹配规则:
- 一个接口的同一个方向,只能调用一个acl
- 一个acl里面可以有多个rule 规则,按照规则ID从小到大排序,从上往下依次执行
- 数据包一旦被某rule匹配,就不再继续向下匹配
- 用来做数据包访问控制时,默认隐含放过所有(华为设备)
NAT
概述:
NAT(网络地址翻译)
一个数据包目的ip或者源ip为私网地址, 运营商的设备 无法转发数据。
NAT工作机制:
一个数据包从企业内网去往公网时,路由器将数据包当 中的源ip(私有地址),翻译成公网地址
静态nat:
工程手动将一个私有地址和一个公网地址进行关联,一 一对应,缺点和静态路由一样
实操:
拓扑:

操作步骤:
(1)为PC1、PC2配置IP地址和子网掩码
PC1:192.168.1.1/24
PC2:192.168.1.2/24
(2)在R1上配置
[R1]int g0/0/1 ***进入接口g0/0/1
[R1-GigabitEthernet0/0/1]ip add 200.1.1.1 24 配置IP地址和子网掩码
[R1-GigabitEthernet0/0/1]nat static enable ***在接口下使能NAT 功能
[R1-GigabitEthernet0/0/1]nat static global 200.1.1.100 inside 192.168.1.1 ***配置静态NAT映射,将内网IP地址192.168.1.1映射到200.1.1.100
[R1-GigabitEthernet0/0/1]q 退出接口g0/0/1
[R1]dis nat static ***显示NAT信息
Static Nat Information:
Interface : GigabitEthernet0/0/1
Global IP/Port : 200.1.1.100/---- ***公网地址
Inside IP/Port : 192.168.1.1/---- ***私网地址
Protocol : ----
VPN instance-name : ----
Acl number : ----
Netmask : 255.255.255.255
Description : ----
Total : 1
端口映射
NAT Server----内网服务器对外提供服务,针对目的ip和 目的端口映射
内网服务器的相应端口映射成路由器公网ip地址的相应 端口
实操:
拓扑:
操作步骤:
(1)为终端配置IP地址与子网掩码
PC1:192.168.1.1/24
PC2:192.168.1.2/24
Server1:192.198.1.100/24
Client1:201.1.1.1/24

(2)为路由器各接口配置IP地址与子网掩码

在R1上配置
[R1]int g0/0/1 ***进入接口g0/0/1
[R1-GigabitEthernet0/0/1]ip add 200.1.1.1 24 配置IP地址和子网掩码
[R1-GigabitEthernet0/0/1]nat static enable ***在接口下使能NAT 功能
[R1-GigabitEthernet0/0/1]nat static global 200.1.1.100 inside 192.168.1.1 ***配置静态NAT映射,将内网IP地址192.168.1.1映射到200.1.1.100
[R1-GigabitEthernet0/0/1]q 退出接口g0/0/1
[R1]dis nat static ***显示NAT信息
Static Nat Information:
Interface : GigabitEthernet0/0/1
Global IP/Port : 200.1.1.100/---- ***公网地址
Inside IP/Port : 192.168.1.1/---- ***私网地址
Protocol : ----
VPN instance-name : ----
Acl number : ----
Netmask : 255.255.255.255
Description : ----
Total : 1

(5)用Client1 ping出口,成功
开启Server1 http 服务,开启80端口,通过端口映射技术将192.168.1.100的80端口和200.1.1.100的端口做关联,Server1 访问200.1.1.100的80 等于访问192.168.1.100的80端口
PC1、PC2ping 通出口,并检查session环境(dis nat session)
实验结束
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)