ACL和NAT
目录
一.ACL
1.概念
2.原理
3.应用
4.种类
5.通配符
1.命令
2.区别
3.例题
4.应用原则
6.实验
1.实验目的
2.实验拓扑
3.实验步骤
7.实验拓展
1.实验目的
2.实验步骤
3.测试
二.NAT
1.基本理论
2.作用
3.分类
静态nat
动态nat
NATPT NAT Sever
Easy-IP
4.工作原理
1.内部网络
2.路由器上的NAT配置
3.数据包发送
4.建立映射表
5.响应数据包接收
6.映射表维护
5.实验
静态NAT
1.实验目的
2.实验拓扑
3.实验步骤
动态NAT
1.实验目的
2.实验步骤
建立地址池
设置基础ACL,并配置规则
进入接口,配置NAT
测试
编辑端口映射
1.实验目的
2.实验拓扑
3.实验步骤
Easy IP
1.实验目的
一.ACL
1.概念
ACL:(Access Control List )访问控制列表
ACL是由一系列permit或deny语句组成的,有序规则的列表
ACL是一个匹配工具,能够对报文进行匹配和区分
2.原理
- 过滤流量,然后匹配规则判断通过或拒绝
- NAT匹配感兴趣的流量
3.应用
- 匹配IP流量
- 在Traffic-filter中被调用
- 在NAT(Network Address Translation)中被调用
- 在路由策略中被调用
- 在防火墙的策略部署中被调用
- 在QoS中被调用
4.种类
- 基本ACL----编号2000-2999---依据依据数据包当中的源IP地址匹配数据(数据时从 哪个IP地址 过来的)
- 高级ACL----编号3000-3999---依据数据包当中源、目的IP,源、目的端口、协议号匹配数据
- 二层ACL----编号4000-4999---MAC、VLAN-id、802.1q
5.通配符
1.命令
通配符掩码 rule deny source 192.168.1.0
2.区别
子网掩码、反掩码和通配符掩码
| 子网掩码 | 1111 | 0主机 | 配置ip地址时候用连续的1来表示网络位 |
| 反掩码 | 0000 | 1主机 | 路由协议(ospf协议)连续0来表示网络位 |
| 通配符掩码 | 可以0 | 1穿插主机 | 0不可变1可变 |
3.例题
172.16.1.1 0.0.0.0 与 172.16.0.0 0.255.0.0 在路由器PTA上使用这两个ACL匹配路由条目,则下列哪些条目将会被匹配上?(多选)
A.172.16.1.1 / 32
B.172.16.1.0 / 24
C.192.17.0.0 / 24
D.172.18.0.0 / 16
解:172.16.1.1 0.0.0.0的通配符为0.0.0.0,代表172.16.1.1 所有该路由地址不可变,故选A;172.16.0.0 0.255.0.0的通配符为0.255.0.0,代表172.16.0.0的路由地址中的16可变,其他地址不可变,故选D。
10.1.11.0 0.0.254.255 会和以下哪些条目匹配上?
A. 10.1.1.4
B. 10.1.2.4
C. 10.1.5.4
D. 10.1.9.0
解:10.1.11.0 0.0.254.255的通配符为0.0.254.255,代表10.1.11.0的前两位固定10.1,无法排除错误答案;254.255其中254位的11代表其为基数可变位,255位代表随意可变位,故选答案ACD
4.应用原则
- 基础ACL:尽量离目标点近
- 高级ACL:尽量离出发点近
6.实验
1.实验目的
过滤掉一个数据流量,使得客户机不能访问系统端
2.实验拓扑
3.实验步骤
进入系统,修改名称
sys
sys R1

进入g0/0/0接口(int g0/0/0),配置IP地址作为网关(ip add 192.168.1.254 24)
进入g0/0/1接口(int g0/0/1),配置IP地址作为网关(ip add 192.168.2.254 24)
进入g0/0/2接口(int g0/0/2),配置IP地址作为网关(ip add 192.168.3.254 24)

在路由器R1中设置基础ACL 2000(acl 2000),为基础ACL2000设置过滤条件为192.168.1.1 0 (要对192.168.1.1 0 的地址进行拒绝处理)(rule deny source 192.168.1.1 0)<当前rule的编号被默认定为5>
在接口下调用ACL分为两个方向(inbound/outbound),使用(traffic-filter outbound acl 2000)控制数据向接口外发送数据时执行ACL

测试


客户机Client1不可以正常访问Server1
客户机Client2可以正常访问Server1
客户机Client1可以正常访问客户机Client2
7.实验拓展
1.实验目的
使Client1不能访问服务器1的http(www)服务
2.实验步骤
承接上述实验继续进行操作,在路由器R1中设置高级ACL3000(acl 3000),为高级ACL3000设置规则为192.168.1.1 0 的出口地址可以访问192.168.2.1 0的出口地址 www (rule deny tcp source 192.168.1.1 0 destination 192.168.2.1 0 destination-port eq www)
在路由器R1中进入g0/0/0接口(int g0/0/0),设置流量过滤,使192.168.1.1 0 不能去访问192.168.2.1 的tcp 80 端口(www.web 服务) (traffic-filter inbound acl 3000)

3.测试
测试客户机Client1能否访问系统端Server1

二.NAT
1.基本理论
NAT(Network Address Translation)网络地址转换是一种将私有IP地址转换为公有IP地址的技术,以实现多个设备共享一个公网IP地址,并能够访问互联网。NAT通常用于企业、家庭等内部网络与外部网络之间的通信。
从私网--->外网将源私网地址改为源公网地址
从外网--->内网将目的公网改为目的私网地址
2.作用
通过对网络地址转换,实现内网地址与公网地址的相互访问
3.分类
静态nat
一个私网地址对应一个公网地址
动态nat
会规定一个公网地址池,容量有限
NATPT NAT Sever
内网服务器对外提供服务,针对目的IP和目的端口映射
Easy-IP
使用一个公网地址可以让所有人都可以上公网
一个公网地址最多可以让65536个人上网;企业或家庭所使用的网络为私有网络,使用的是私有地址;运营商维护的网络为公共网络,使用的是公有地址。私有地址不能在公网中路由;NAT一般部署在连接内网和外网的网关设备上。
4.工作原理
1.内部网络
在内部网络中,设备使用的是私有IP地址,这些地址不会被路由到公共互联网上。
2.路由器上的NAT配置
路由器上需要启用NAT功能,并配置至少一个公网IP地址作为出口地址。
3.数据包发送
当内部网络中的设备向外部网络发送数据包时,路由器会将数据包的源IP地址和端口号替换为自己的公网IP地址和一个新的端口号。
4.建立映射表
路由器会创建一个映射表,记录下每个内部IP地址及其对应的公网IP地址和端口号。
5.响应数据包接收
当外部网络返回的数据包到达路由器时,路由器会根据映射表找到对应的内部IP地址,并将数据包转发给该设备
6.映射表维护
如果长时间没有数据包经过某个映射关系,路由器可能会删除这个映射,以释放资源。
5.实验
静态NAT
静态NAT实现了私有地址和公有地址的一对一映射;一个公网IP只会分配给唯一且固定的内网主机
1.实验目的
使企业内私网客户端可以访问公网地址
2.实验拓扑

3.实验步骤
修改名称
进入R1
sys
sys QY
进入R2
sys
sys ISP


在企业出口路由器中进入g0/0/0接口(int g0/0/0),配置IP地址作为网关(ip add 192.168.1.254 24)
在企业出口路由器中进入g0/0/1接口(int g0/0/1),配置IP地址作为网关(ip add 200.0.0.1 24)
在g0/0/1接口,配置NAT(nat static enable)
在运营商设备中进入g0/0/0接口(int g0/0/0),配置IP地址作为网关(ip add 200.0.0.2 24)

在企业出口路由器中的g0/0/1,配置NAT转换,将通过的私网地址192.168.1.1 转为 200.0.0.100(nat static global 200.0.0.100 inside 192.168.1.1),将通过的私网地址 192.168.1.2 转为 200.0.0.200(nat static global 200.0.0.200 inside 192.168.1.2)

测试
测试PC1、PC两个私网地址是否可以ping通运营商设备的公网地址

动态NAT
- 动态NAT基于地址池来实现私有地址和公有地址的转换
- 网络地址端口转换NAPT允许多个内部地址映射到同一个公有地址的不同端口
1.实验目的
使企业内私网客户端可以访问公网地址
2.实验步骤
将静态NAT实验中配置好地址转换的命令取消
(undo nat static global 200.0.0.100 inside 192.168.1.1)
(undo nat static global 200.0.0.200 inside 192.168.1.2)
(undo nat static enable)

建立地址池
为企业出口路由器建立地址池组1(私网可转公网范围为200.0.0.10 ~ 200.0.0.50)(nat address-group 1 200.0.0.10 200.0.0.50)
![]()
设置基础ACL,并配置规则
对企业出口路由器设置基础ACL(acl 2000),配置规则私网地址192.168.1.0段192.168.1.0 “0”可变 “192.168.1” 不可变(rule permit source 192.168.1.0 0.0.0.255)

进入接口,配置NAT
在企业出口路由器中进入g0/0/1接口(int g0/0/1),配置NAT放行流量应用基础ACL地址组1(nat outbound 2000 address-group 1)

测试
测试PC1、PC两个私网地址是否可以ping通运营商设备的公网地址
端口映射
NATPT——NAT Sever 内网服务器对外提供服务,针对目的IP和目的端口映射
内网服务器的相应端口映射成路由器公网ip地址的相应端口
1.实验目的
家庭客户机需要访问内网服务器
2.实验拓扑

3.实验步骤
在运营商设备中进入g0/0/1接口(int g0/0/1),配置IP地址作为网关(ip add 202.0.0.254 24)

进入接口配置NAT映射
在企业出口路由器中进入g0/0/1接口(int g0/0/1),删除动态NAT放行流量应用基础ACL地址组1(undo nat outbound 2000 address-group 1)配置NATPT映射(家庭客户机如果想访问服务器相当于访问企业出口路由器)(nat server protocol tcp global current-interface www inside 192.168.1.100 www)配置默认路由(ip route-static 0.0.0.0 0 200.0.0.2)

测试

Easy IP
- Easy IP允许将多个内部地址映射到网关出接口地址上的不同端口
- 使用一个公网地址可以让所有人都可以上公网
- 一个公网地址最多可以让65536个人
1.实验目的
允许内网客户机和家庭服务机互通
2.实验步骤
在企业出口路由器上删除NATPT映射(undo nat server protocol tcp global current-interface
www inside 192.168.1.100 www)配置Easy IP(nat outbound 2000)

测试
测试PC1是否与客户端Client互通

相关文章:
ACL和NAT
目录 一.ACL 1.概念 2.原理 3.应用 4.种类 5.通配符 1.命令 2.区别 3.例题 4.应用原则 6.实验 1.实验目的 2.实验拓扑 3.实验步骤 7.实验拓展 1.实验目的 2.实验步骤 3.测试 二.NAT 1.基本理论 2.作用 3.分类 静态nat 动态nat NATPT NAT Sever Easy-IP…...
MX6ULL学习笔记(十二)Linux 自带的 LED 灯
前言 前面我们都是自己编写 LED 灯驱动,其实像 LED 灯这样非常基础的设备驱动,Linux 内 核已经集成了。Linux 内核的 LED 灯驱动采用 platform 框架,因此我们只需要按照要求在设备 树文件中添加相应的 LED 节点即可,本章我们就来学…...
Qt容器QToolBox工具箱
# QToolBox QToolBox是Qt框架中的一个窗口容器类,常用的几个函数有: setCurrentIndex(int index):设置当前显示的页面索引。可以通过调用该函数,将指定索引的页面设置为当前显示的页面。 addItem(QWidget * widget, const QString & text):向QToolBox中添加一个页面…...
华为实训课笔记
华为实训 12/1312/14 12/13 ping 基于ICMP协议,用来进行可达性测试 ping 目的IP地址/设备域名(主机名) 如果能收到 reply 回复,则表示双方可以正常通信 <Huawei> 用户视图,只能做查询和一些简单的资源调用&…...
基于java 的经济开发区管理系统设计与实现(源码+调试)
项目描述 临近学期结束,还是毕业设计,你还在做java程序网络编程,期末作业,老师的作业要求觉得大了吗?不知道毕业设计该怎么办?网页功能的数量是否太多?没有合适的类型或系统?等等。今天给大家介绍一篇基于java 的经济开发区管…...
外包干了3个月,技术退步明显。。。
先说一下自己的情况,本科生生,19年通过校招进入广州某软件公司,干了接近4年的功能测试,今年年初,感觉自己不能够在这样下去了,长时间呆在一个舒适的环境会让一个人堕落!而我已经在一个企业干了四年的功能测…...
详细教程 - 从零开发 Vue 鸿蒙harmonyOS应用 第一节
关于使用Vue开发鸿蒙应用的教程,我这篇之前的博客还不够完整和详细。那么这次我会尝试写一个更加完整和逐步的指南,从环境准备,到目录结构,再到关键代码讲解,以及调试和发布等,希望可以让大家详实地掌握这个过程。 一、准备工作 下载安装 DevEco Studio 下载地址:…...
R语言对医学中的自然语言(NLP)进行机器学习处理(1)
什么是自然语言(NLP),就是网络中的一些书面文本。对于医疗方面,例如医疗记录、病人反馈、医生业绩评估和社交媒体评论,可以成为帮助临床决策和提高质量的丰富数据来源。如互联网上有基于文本的数据(例如,对医疗保健提供者的社交媒体评论),这些数据我们可…...
什么是CI/CD?如何在PHP项目中实施CI/CD?
CI/CD(持续集成/持续交付或持续部署)是一种软件开发和交付方法,它旨在通过自动化和持续集成来提高开发速度和交付质量。以下是CI/CD的基本概念和如何在PHP项目中实施它的一般步骤: 持续集成(Continuous Integration -…...
玩转Docker(四):容器指令、生命周期、资源限制、容器化支持、常用命令
文章目录 一、容器指令1.运行2.启动/停止/重启3.暂停/恢复4.删除 二、生命周期三、资源限制1.内存限额2.CPU限额3.磁盘读写带宽限额 四、cgroup和namespace五、常用命令 一、容器指令 1.运行 按用途容器大致可分为两类:服务类容器和工具类的容器。 服务类容器&am…...
回归预测 | MATLAB实现CHOA-BiLSTM黑猩猩优化算法优化双向长短期记忆网络回归预测 (多指标,多图)
回归预测 | MATLAB实现CHOA-BiLSTM黑猩猩优化算法优化双向长短期记忆网络回归预测 (多指标,多图) 目录 回归预测 | MATLAB实现CHOA-BiLSTM黑猩猩优化算法优化双向长短期记忆网络回归预测 (多指标,多图)效果…...
Qt/C++视频监控安卓版/多通道显示视频画面/录像存储/视频播放安卓版/ffmpeg安卓
一、前言 随着监控行业的发展,越来越多的用户场景是需要在手机上查看监控,而之前主要的监控系统都是在PC端,毕竟PC端屏幕大,能够看到的画面多,解码性能也强劲。早期的手机估计性能弱鸡,而现在的手机性能不…...
【docker】容器使用(Nginx 示例)
查看 Docker 客户端命令选项 docker上面这三张图都是 常用命令: run 从映像创建并运行新容器exec 在运行的容器中执行命令ps 列出容器build 从Dockerfile构建映像pull 从注册表下载图像push 将图像上载到注册表…...
【QT】时间日期与定时器
目录 1.时间日期相关的类 2.日期时间数据与字符串之间的转换 2.1 时间、日期编辑器属性设置 2.2 日期时间数据的获取与转换为字符串 2.3 字符串转换为日期时间 3.QCaIendarWidget日历组件 3.1基本属性 3.2 公共函数 3.3 信号 4.实例程序演示时间日期与定时器的使用 …...
蓝桥杯专题-真题版含答案-【古代赌局】【古堡算式】【微生物增殖】【密码发生器】
Unity3D特效百例案例项目实战源码Android-Unity实战问题汇总游戏脚本-辅助自动化Android控件全解手册再战Android系列Scratch编程案例软考全系列Unity3D学习专栏蓝桥系列ChatGPT和AIGC 👉关于作者 专注于Android/Unity和各种游戏开发技巧,以及各种资源分…...
和鲸科技携手深圳数据交易所,“数据+数据开发者生态”赋能人工智能产业发展
信息化时代,数据驱动决策的重要性日益凸显。通过利用数据可以深入了解市场需求、客户行为、竞争态势等关键信息,从而制定更为有效的战略和决策。围绕推动数据要素产业发展,近日,深圳数据交易所(以下简称“深数所”&…...
在MFC(Microsoft Foundation Classes)中 CreateThread函数
CreateThread是Windows API中用于创建新线程的函数。以下是对函数参数的详细解释: lpThreadAttributes(可选):指向SECURITY_ATTRIBUTES结构的指针,用于指定线程的安全性。可以设置为NULL,表示使用默认安全…...
Ubuntu 常用命令之 ls 命令用法介绍
Ubuntu ls 命令用法介绍 ls是Linux系统下的一个基本命令,用于列出目录中的文件和子目录。它有许多选项可以用来改变列出的内容和格式。 以下是一些基本的ls命令选项 -l:以长格式列出文件,包括文件类型、权限、链接数、所有者、组、大小、最…...
【解决】Windows 11检测提示电脑不支持 TPM 2.0(注意从DTPM改为PTT)
win11升级,tpm不兼容 写在最前面1. 打开电脑健康状况检查2. 开启tpm3. 微星主板AMD平台开启TPM2.0解决电脑健康状况检查显示可以安装win11,但是系统更新里显示无法更新 写在最前面 我想在台式电脑上用win11的专注模式,但win10不支持 1. 打…...
ChatGPT 也宕机了?如何预防 DDOS 攻击的发生
最近,开发人工智能聊天机器人的公司 OpenAI 遭受了一次规模较大的分布式拒绝服务(DDoS)攻击,导致其旗下的 ChatGPT 服务在短短 12 小时内遭遇了 4 次断网,众多用户遭受了连接失败的问题。 这次攻击事件引起了广泛的关…...
HTML 语义化
目录 HTML 语义化HTML5 新特性HTML 语义化的好处语义化标签的使用场景最佳实践 HTML 语义化 HTML5 新特性 标准答案: 语义化标签: <header>:页头<nav>:导航<main>:主要内容<article>&#x…...
在HarmonyOS ArkTS ArkUI-X 5.0及以上版本中,手势开发全攻略:
在 HarmonyOS 应用开发中,手势交互是连接用户与设备的核心纽带。ArkTS 框架提供了丰富的手势处理能力,既支持点击、长按、拖拽等基础单一手势的精细控制,也能通过多种绑定策略解决父子组件的手势竞争问题。本文将结合官方开发文档,…...
8k长序列建模,蛋白质语言模型Prot42仅利用目标蛋白序列即可生成高亲和力结合剂
蛋白质结合剂(如抗体、抑制肽)在疾病诊断、成像分析及靶向药物递送等关键场景中发挥着不可替代的作用。传统上,高特异性蛋白质结合剂的开发高度依赖噬菌体展示、定向进化等实验技术,但这类方法普遍面临资源消耗巨大、研发周期冗长…...
循环冗余码校验CRC码 算法步骤+详细实例计算
通信过程:(白话解释) 我们将原始待发送的消息称为 M M M,依据发送接收消息双方约定的生成多项式 G ( x ) G(x) G(x)(意思就是 G ( x ) G(x) G(x) 是已知的)࿰…...
oracle与MySQL数据库之间数据同步的技术要点
Oracle与MySQL数据库之间的数据同步是一个涉及多个技术要点的复杂任务。由于Oracle和MySQL的架构差异,它们的数据同步要求既要保持数据的准确性和一致性,又要处理好性能问题。以下是一些主要的技术要点: 数据结构差异 数据类型差异ÿ…...
C++ 基础特性深度解析
目录 引言 一、命名空间(namespace) C 中的命名空间 与 C 语言的对比 二、缺省参数 C 中的缺省参数 与 C 语言的对比 三、引用(reference) C 中的引用 与 C 语言的对比 四、inline(内联函数…...
ServerTrust 并非唯一
NSURLAuthenticationMethodServerTrust 只是 authenticationMethod 的冰山一角 要理解 NSURLAuthenticationMethodServerTrust, 首先要明白它只是 authenticationMethod 的选项之一, 并非唯一 1 先厘清概念 点说明authenticationMethodURLAuthenticationChallenge.protectionS…...
JVM暂停(Stop-The-World,STW)的原因分类及对应排查方案
JVM暂停(Stop-The-World,STW)的完整原因分类及对应排查方案,结合JVM运行机制和常见故障场景整理而成: 一、GC相关暂停 1. 安全点(Safepoint)阻塞 现象:JVM暂停但无GC日志,日志显示No GCs detected。原因:JVM等待所有线程进入安全点(如…...
Android第十三次面试总结(四大 组件基础)
Activity生命周期和四大启动模式详解 一、Activity 生命周期 Activity 的生命周期由一系列回调方法组成,用于管理其创建、可见性、焦点和销毁过程。以下是核心方法及其调用时机: onCreate() 调用时机:Activity 首次创建时调用。…...
python爬虫——气象数据爬取
一、导入库与全局配置 python 运行 import json import datetime import time import requests from sqlalchemy import create_engine import csv import pandas as pd作用: 引入数据解析、网络请求、时间处理、数据库操作等所需库。requests:发送 …...
