ACT、NAT、NATPT和EASY-IP
目录
一、ACL
1.ACL
2.ACL的两种应用匹配机制
3.ACL的基本类型
4.ACL命令操作
5.ACL实验:
4.ACL的应用原则:
5.匹配原则:
二、NAT
1.NAT的原理及作用:
2.NAT分类
3.NAT配置
三、EASY-ip实验
四、NATPT
五、通配符
一、ACL
1.ACL
ACL:是访问控制列表。
作用:过滤流量,然后匹配规则是否允许通过(通过或者拒绝)。例如,在同一家公司内,boss电脑可以访问任何部门,而每个部门的人只能访问自己的部门,就要通过acl进行网络设置。
2.ACL的两种应用匹配机制
①应用在端口的ACL,用于过滤数据包。
②应用在路由协议,匹配对应的路由协议。
ACL匹配机制:规则自上而下依次匹配,一旦匹配就不再向下,例如第一条允许所有的1.1.1.0 24段通过,那么第二条拒绝1.1.1.2 32访问的规则就不会再生效。
3.ACL的基本类型
①基本acl:2000-2999,只能根据数据包中的源ip,对数据包进行处理。
②高级acl:3000-3999,可以根据数据包中的五元组(源IP地址,目的ip地址,源mac地址,目的mac地址,协议端口号)对数据包进行处理。
③二层acl:4000-4999,mac vlan-id
4.ACL命令操作
①ACL 2000 ## 创建基础ACL
②rule premit (deny)source 1.1.1.1 ## 添加规则,允许或者拒绝 源地址为1.1.1.1的地址
③int g0/0/1 ## 进入要配置的端口
④traffic-filter oubound(inbound) ACL 2000 ##在入口或者出口调用acl2000的规则。
5.ACL实验:
1.实验目的:
在同一局域网中,pc1不能访问server,而pc2可以访问server。
2.实验拓扑:

3.实验步骤:
①先配置pc1pc2的IP地址以及子网掩码和网关。如下图

②配置路由器接口并且检测pc1pc2是否可以访问server,如下图。
<huawei> undo terminal monitor #关闭用户视图提示
<huawei> system-view #进入系统视图
[huawei] undo infor-center enable #关闭系统视图提示
[huawei] int g0/0/0 #进入接口g/0/0/0
[huawei-g0/0/0] ip address 192.168.1.254 24 #为接口配置ip地址
[huawei-g0/0/0] int g0/0/1 #进入接口g0/0/1
[huawei-g0/0/1] ip address 192.168.3.254 24 #为接口配置ip地址

能ping通则说明pc1与pc2可以与server通信。
③然后在路由器上设置ACL2000,并在g0/0/1口设置规则不允许192.168.1.1访问192.168.3.1服务器,配置完成后PC1不能访问server,pc2可以正常访问服务器。如下图
[huawei]ACL 2000 ##创建基础级ACL 2000
[huawei]rule deny source 192.168.1.1 0 ##添加规则,拒绝源ip为192.168.1.1
[huawei]int g0/0/1 ##进入 g0/0/1接口
[huawei-g0/0/1] traffic-filter outbound acl 2000 ##为出端口配置ACL 2000规则



④拓展
高级ACL:acl3000
rule deny tcp source 192.168.1.1 0 destination 192.168.2.1 0 destination-port eq www(80)
(不让192.168.1.1 去访问192.168.2.1的tcp 80端口)
int g0/0/1
undo traffic-filter outbound
traffic-filter outbound acl 3000
4.ACL的应用原则:
基本ACL:尽量用在靠近目的点
高级ACL:尽量用在靠近源(自己)的地方
5.匹配原则:
1.一个接口的同一个方向,只能调用一个acl
2.一个ACL里面可以有多个rule规则,按照规则id从小到大排序,从上往下依次执行
3.数据包一旦被某rule匹配,就不再继续向下匹配
4.用来做数据包访问控制时,默认隐含放过所有设备
二、NAT
1.NAT的原理及作用:
作用:通过网络地址转换,实现内网地址和公网地址的相互访问
原理:从内网出去时将内网源地址转换为公网ip地址,从公网回来时将目的公网地址改为目的私网地址。
2.NAT分类
①静态nat:私网地址和公网地址一对一映射,局限性就在于一个私网需要一个公网地址,需要的公网地址较多。
②动态nat:将公网ip划出一个公网ip地址池,当内网地址访问外网时将随机分配一个ip,访问完成后在收回公网ip。
3.NAT配置
3.1静态nat配置:
①进入企业出口路由器static nat enable 开启静态nat
②nat static global 1.1.1.1 inside 2.2.2.2将静态nat私网地址1.1.1.1对应公网地址2.2.2.2
3.2动态nat配置:
①nat address-group 1 200.1.1.10 200.1.1.15 建立动态nat地址池
②acl number 2000 创建acl2000
③rule 5 permit source 192.168.1.0 0.0.0.255 设定规则来自192.168.1.0网段的用户允许通过
④int g0/0/01 进入端口g0/0/1
⑤nat outbound 2000 address-group 1 on-pat 将规则添加在出口
三、EASY-ip实验
①实验目的
PC1PC2通过企业路由器后可以访问外网,运营商路由器不可操作,只能在企业的出口路由器做nat,使得PC1PC2通过出口路由器时转化为出口地址且端口号不一样来识别是谁发送的数据。
②实验拓扑

③实验步骤:
1.配置PC1PC2地址子网掩码和网关,如下图。

2.配置企业路由器和移动运营商路由器接口地址
AR1:
<Huawei>undo terminal monitor ##关闭用户视图提示
<Huawei>system-view ##进入系统视图
[Huawei]sysname AR1 ##修改路由器名称
[AR1]interface g0/0/0 ##进入g0/0/0接口
[AR1-GigabitEthernet0/0/0]ip address 192.168.1.254 24 ##接口配置ip地址
[AR1-GigabitEthernet0/0/0]interface g0/0/1 ## 进入g0/0/1接口
[AR1-GigabitEthernet0/0/1]ip address 200.1.1.1 24 ##接口配置ip地址
AR2:
<Huawei>undo terminal monitor ##关闭用户视图提示
<Huawei>system-view ##进入系统视图
[Huawei]sysname AR2 ##修改路由器名称
[AR1]interface g0/0/0 ##进入g0/0/0接口
[AR1-GigabitEthernet0/0/0]ip address 200.1.1.254 24 ##接口配置ip地址


3.然后在企业路由器AR1上添加ACL规则并在出口上应用NAT,以此达到PC1PC2到达出口路由器地址nat成出口地址的目的访问外网。
[Huawei]ACL 2000 ##创建初级ACL 2000
[Huawei-acl-basic-2000]rule permit source 192.168.1.0 0.0.0.255 ##添加规则允许源地址为192.168.1.0的用户通过0.0.0.255为通配符掩码,可以暂时理解为反掩码用255.255.255.255减去子网掩码即可
[Huawei-acl-basic-2000]quit ##返回系统视图
[Huawei]int g0/0/1 ##进入g0/0/1接口
[Huawei-GigabitEthernet0/0/1]nat outbound 2000 ##在此接口配置出口nat并调用acl 200规则
4.然后进入PC1PC2ping200.1.1.254来查看是否可以通过nat来访问外网。

5.通过wireshark抓包来查看pc1访问200.1.1.254的地址和端口号是否成出口地址200.1.1.1.
①在pc1上进行ping200.1.1.1254 -t
②然后再进入出口路由器使用命令等待查看端口是多少,命令为display nat session all ,可以查看 出源ip是多选,经过nat后的源IP是多少,以及此次连接的端口。端口号是此次PC1用于nat公网地址的标志,外网数据回包时出口路由器也是通过这个端口号判断数据要发给谁。
③右键出口路由器选择抓包,选择出口,本拓扑是g0/0/1。

④进入wireshark后点击一个包查看ICMP协议中的Identifier(LE)后面跟着的就是此次ip转换的内网端口号,由于长ping是一来一回则完成一次连接没有长时间建立连接所以随便点一个包查看是端口号可能不一样。此为实验环境测试导致,若是长时间访问一个网页不关闭则端口号会被长期占用,抓包时端口号就不会改变。
四、NATPT
端口号映射
NAT Server----内网服务器对外提供服务,针对目的ip和目的端口映射
内网服务器的相应端口映射成路由器公网ip地址的相应端口

程序代码:
配置好ip地址企业出口路由器需要配置默认路由在企业出口路由器上 的g0/0/1 口配置
int g0/0/1
ip address 200.1.1.1 255.255.255.0
undo nat static global 200.1.1.100 inside 192.168.1.1 netmask 255.255.255.255
nat server protocol tcp global current-interface www inside 192.168.1.100 www
nat static enable
五、通配符
1.子网掩码 1 主机0 配置ip时使用 连续的1表示网络位
反子网掩码 0 主机1 路由协议 连续的0表示网络位
通配符可以10穿插,0可变,1不可变
2.通配符例题
答案AD
解析
172.16.1.1 0.0.0.0意思就是172.16.1.1一位都不可变,172.16.0.0 0.255.0.0就是第二位可变。苏所以选AD
3.EASY-IP使用一个公网地址,可以让所有人都上网,连端口号一起一同转发,便于回包。
相关文章:
ACT、NAT、NATPT和EASY-IP
目录 一、ACL 1.ACL 2.ACL的两种应用匹配机制 3.ACL的基本类型 4.ACL命令操作 5.ACL实验: 4.ACL的应用原则: 5.匹配原则: 二、NAT 1.NAT的原理及作用: 2.NAT分类 3.NAT配置 三、EASY-ip实验 四、NATPT 五、通配符 …...
HTML实现每天单词积累
注册页面 <!DOCTYPE html> <html> <head><meta charset"UTF-8"><title>注册</title><style>body {font-family: Arial, sans-serif;background-color: #f5f5f5;}form {max-width: 500px;margin: 50px auto;padding: 40px…...
【ECMAScript笔记二】运算符分类,流程控制(顺序结构、分支结构、循环结构)
文章目录 4 运算符4.1 算术运算符4.2 递增和递减运算符4.3 比较运算符4.4 逻辑运算符4.5 赋值运算符4.6 运算优先级 5 流程控制5.1 顺序结构5.2 分支结构5.2.1 if 语句5.2.2 switch 语句 5.3 循环结构5.3.1 for循环5.3.2 while循环5.3.3 do while循环5.3.4 continue和break 5.4…...
ShenYu网关注册中心之Zookeeper注册原理
文章目录 1、客户端注册流程1.1、读取配置1.1.1、用于注册的 ZookeeperClientRegisterRepository1.1.2、用于扫描构建 元数据 和 URI 的 SpringMvcClientEventListener 1.2、扫描注解,注册元数据和URI1.2.1、构建URI并写入Disruptor1.2.2、构建元数据并写入Disrupto…...
高级C#技术(二)
前言 本章为高级C#技术的第二节也是最后一节。前一节在下面这个链接 高级C#技术https://blog.csdn.net/qq_71897293/article/details/134930989?spm1001.2014.3001.5501 匿名类型 匿名类型如其名,匿名的没有指定变量的具体类型。 举个例子: 1 创建…...
【性能测试】基础知识篇-压力模型
常见压力模式 并发模式(即虚拟用户模式)和RPS模式(即Requests Per Second,每秒请求数,吞吐量模式)。 本文介绍这两种压力模式的区别,以便根据自身业务场景选择更合适的压力模式。 并发模式 …...
springboot-redis设置定时触发任务详解
最近研究了一下“redis定时触发”,网上查了查资料,这里记录一下。 从Redis 2.8.0开始,Redis加入了发布/订阅模式以及键空间消息提醒(keyspace notification)功能。键空间消息提醒提供了允许客户端通过订阅指定信道获取…...
Video anomaly detection with spatio-temporal dissociation 论文阅读
Video anomaly detection with spatio-temporal dissociation 摘要1.介绍2.相关工作3. Methods3.1. Overview3.2. Spatial autoencoder3.3. Motion autoencoder3.4. Variance attention module3.5. Clustering3.6. The training objective function 4. Experiments5. Conclusio…...
svn 安装
安装系统 ubuntu 22 安装命令: sudo apt-get install subversion 创建第一个工程: 创建版本库、项目 1、先创建svn根目录文件夹 sudo mkdir /home/svn 2、创建项目的目录文件夹 sudo mkdir /home/svn/demo_0 svnadmin create /home/svn/demo_0 配置&a…...
slurm 23.11.0集群 debian 11.5 安装
slurm 23.11.0集群 debian 11.5 安装 用途 Slurm(Simple Linux Utility for Resource Management, http://slurm.schedmd.com/ )是开源的、具有容错性和高度可扩展的Linux集群超级计算系统资源管理和作业调度系统。超级计算系统可利用Slurm对资源和作业进行管理&a…...
ffmpeg可以做什么
用途 FFmpeg是一个功能强大的多媒体处理工具,可以处理音频和视频文件。它是一个开源项目,可在各种操作系统上运行,包括Linux、Windows和Mac OS X等。以下是FFmpeg可以做的一些主要任务: 转换媒体格式:可将一个媒体格式…...
一种缩小数据之间差距的算法
先上代码: /** * 缩小数据之间的差距,但是大小关系不变的方法* param {Array} features */function minMaxData(data) {for (let i 0; i < data.length; i) {const f data[i];const x f[1];const yf[2];//此处5根据实际情况设置const y2 Math.pow(…...
【Axure RP9】动态面板使用------案例:包括轮播图和多方式登入及左侧菜单栏案例
目录 一 动态面板简介 1.1 动态面板是什么 二 轮播图 2.1 轮播图是什么 2.2 轮播图应用场景 2.3 制作实播图 三 多方式登入 3.1多方式登入是什么 3.3 多方式登入实现 四 左侧菜单栏 4.1左侧菜单栏是什么 4.2 左侧菜单栏实现 一 动态面板简介 1.1 动态面板是什么…...
在接口实现类中,加不加@Override的区别
最近的软件构造实验经常需要设计接口,我们知道Override注解是告诉编译器,下面的方法是重写父类的方法,那么单纯实现接口的方法需不需要加Override呢? 定义一个类实现接口,使用idea时,声明implements之后会…...
优质全套SpringMVC教程
三、SpringMVC 在SSM整合中,MyBatis担任的角色是持久层框架,它能帮我们访问数据库,操作数据库 Spring能利用它的两大核心IOC、AOP整合框架 1、SpringMVC简介 1.1、什么是MVC MVC是一种软件架构的思想(不是设计模式-思想就是我们…...
微信小程序---使用npm包安装Vant组件库
在小程序项目中,安装Vant 组件库主要分为如下3步: 注意:如果你的文件中不存在pakage.json,请初始化一下包管理器 npm init -y 1.通过 npm 安装(建议指定版本为1.3.3) 通过npm npm i vant/weapp1.3.3 -S --production 通过y…...
GPT-4V被超越?SEED-Bench多模态大模型测评基准更新
📖 技术报告 SEED-Bench-1:https://arxiv.org/abs/2307.16125 SEED-Bench-2:https://arxiv.org/abs/2311.17092 🤗 测评数据 SEED-Bench-1:https://huggingface.co/datasets/AILab-CVC/SEED-Bench SEED-Bench-2&…...
数据库_mongoDB
1 介绍 MongoDB 是一种 NoSQL 数据库,它将每个数据存储为一个文档,这里的文档类似于 JSON/BSON 对象,具体数据结构由键值(key/value)对组成。字段值可以包含其他文档,数组及文档数组。其数据结构非常松散&…...
Layui实现自定义的table列悬停事件并气泡提示信息
1、概要 使用layui组件实现table的指定列悬停时提示信息,因为layui组件中没有鼠标悬停事件支持,所以需要结合js原生事件来实现这个功能,并结合layui的tips和列的templte属性气泡提示实现效果。 2、效果图 3、代码案例 <!DOCTYPE html&g…...
Tomcat从认识安装到详细使用
文章目录 一.什么是Tomact?二.Tomcat的安装1.下载安装包2.一键下载3.打开Tomcat进行测试4.解决Tomcat中文服务器乱码 三.Tomcat基本使用1.启动与关闭Tomcat2.Tomcat部署项目与浏览器访问项目 四.Tomcat操作中的常见问题1.启动Tomcat后,启动窗口一闪而过?…...
后进先出(LIFO)详解
LIFO 是 Last In, First Out 的缩写,中文译为后进先出。这是一种数据结构的工作原则,类似于一摞盘子或一叠书本: 最后放进去的元素最先出来 -想象往筒状容器里放盘子: (1)你放进的最后一个盘子(…...
Vue3 + Element Plus + TypeScript中el-transfer穿梭框组件使用详解及示例
使用详解 Element Plus 的 el-transfer 组件是一个强大的穿梭框组件,常用于在两个集合之间进行数据转移,如权限分配、数据选择等场景。下面我将详细介绍其用法并提供一个完整示例。 核心特性与用法 基本属性 v-model:绑定右侧列表的值&…...
Linux相关概念和易错知识点(42)(TCP的连接管理、可靠性、面临复杂网络的处理)
目录 1.TCP的连接管理机制(1)三次握手①握手过程②对握手过程的理解 (2)四次挥手(3)握手和挥手的触发(4)状态切换①挥手过程中状态的切换②握手过程中状态的切换 2.TCP的可靠性&…...
解锁数据库简洁之道:FastAPI与SQLModel实战指南
在构建现代Web应用程序时,与数据库的交互无疑是核心环节。虽然传统的数据库操作方式(如直接编写SQL语句与psycopg2交互)赋予了我们精细的控制权,但在面对日益复杂的业务逻辑和快速迭代的需求时,这种方式的开发效率和可…...
苍穹外卖--缓存菜品
1.问题说明 用户端小程序展示的菜品数据都是通过查询数据库获得,如果用户端访问量比较大,数据库访问压力随之增大 2.实现思路 通过Redis来缓存菜品数据,减少数据库查询操作。 缓存逻辑分析: ①每个分类下的菜品保持一份缓存数据…...
学习STC51单片机31(芯片为STC89C52RCRC)OLED显示屏1
每日一言 生活的美好,总是藏在那些你咬牙坚持的日子里。 硬件:OLED 以后要用到OLED的时候找到这个文件 OLED的设备地址 SSD1306"SSD" 是品牌缩写,"1306" 是产品编号。 驱动 OLED 屏幕的 IIC 总线数据传输格式 示意图 …...
Cloudflare 从 Nginx 到 Pingora:性能、效率与安全的全面升级
在互联网的快速发展中,高性能、高效率和高安全性的网络服务成为了各大互联网基础设施提供商的核心追求。Cloudflare 作为全球领先的互联网安全和基础设施公司,近期做出了一个重大技术决策:弃用长期使用的 Nginx,转而采用其内部开发…...
Axios请求超时重发机制
Axios 超时重新请求实现方案 在 Axios 中实现超时重新请求可以通过以下几种方式: 1. 使用拦截器实现自动重试 import axios from axios;// 创建axios实例 const instance axios.create();// 设置超时时间 instance.defaults.timeout 5000;// 最大重试次数 cons…...
.Net Framework 4/C# 关键字(非常用,持续更新...)
一、is 关键字 is 关键字用于检查对象是否于给定类型兼容,如果兼容将返回 true,如果不兼容则返回 false,在进行类型转换前,可以先使用 is 关键字判断对象是否与指定类型兼容,如果兼容才进行转换,这样的转换是安全的。 例如有:首先创建一个字符串对象,然后将字符串对象隐…...
python报错No module named ‘tensorflow.keras‘
是由于不同版本的tensorflow下的keras所在的路径不同,结合所安装的tensorflow的目录结构修改from语句即可。 原语句: from tensorflow.keras.layers import Conv1D, MaxPooling1D, LSTM, Dense 修改后: from tensorflow.python.keras.lay…...
