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后,启动窗口一闪而过?…...
浅谈 React Hooks
React Hooks 是 React 16.8 引入的一组 API,用于在函数组件中使用 state 和其他 React 特性(例如生命周期方法、context 等)。Hooks 通过简洁的函数接口,解决了状态与 UI 的高度解耦,通过函数式编程范式实现更灵活 Rea…...
iOS 26 携众系统重磅更新,但“苹果智能”仍与国行无缘
美国西海岸的夏天,再次被苹果点燃。一年一度的全球开发者大会 WWDC25 如期而至,这不仅是开发者的盛宴,更是全球数亿苹果用户翘首以盼的科技春晚。今年,苹果依旧为我们带来了全家桶式的系统更新,包括 iOS 26、iPadOS 26…...
《Qt C++ 与 OpenCV:解锁视频播放程序设计的奥秘》
引言:探索视频播放程序设计之旅 在当今数字化时代,多媒体应用已渗透到我们生活的方方面面,从日常的视频娱乐到专业的视频监控、视频会议系统,视频播放程序作为多媒体应用的核心组成部分,扮演着至关重要的角色。无论是在个人电脑、移动设备还是智能电视等平台上,用户都期望…...
【HarmonyOS 5.0】DevEco Testing:鸿蒙应用质量保障的终极武器
——全方位测试解决方案与代码实战 一、工具定位与核心能力 DevEco Testing是HarmonyOS官方推出的一体化测试平台,覆盖应用全生命周期测试需求,主要提供五大核心能力: 测试类型检测目标关键指标功能体验基…...
【解密LSTM、GRU如何解决传统RNN梯度消失问题】
解密LSTM与GRU:如何让RNN变得更聪明? 在深度学习的世界里,循环神经网络(RNN)以其卓越的序列数据处理能力广泛应用于自然语言处理、时间序列预测等领域。然而,传统RNN存在的一个严重问题——梯度消失&#…...
Opencv中的addweighted函数
一.addweighted函数作用 addweighted()是OpenCV库中用于图像处理的函数,主要功能是将两个输入图像(尺寸和类型相同)按照指定的权重进行加权叠加(图像融合),并添加一个标量值&#x…...
MVC 数据库
MVC 数据库 引言 在软件开发领域,Model-View-Controller(MVC)是一种流行的软件架构模式,它将应用程序分为三个核心组件:模型(Model)、视图(View)和控制器(Controller)。这种模式有助于提高代码的可维护性和可扩展性。本文将深入探讨MVC架构与数据库之间的关系,以…...
页面渲染流程与性能优化
页面渲染流程与性能优化详解(完整版) 一、现代浏览器渲染流程(详细说明) 1. 构建DOM树 浏览器接收到HTML文档后,会逐步解析并构建DOM(Document Object Model)树。具体过程如下: (…...
USB Over IP专用硬件的5个特点
USB over IP技术通过将USB协议数据封装在标准TCP/IP网络数据包中,从根本上改变了USB连接。这允许客户端通过局域网或广域网远程访问和控制物理连接到服务器的USB设备(如专用硬件设备),从而消除了直接物理连接的需要。USB over IP的…...
Yolov8 目标检测蒸馏学习记录
yolov8系列模型蒸馏基本流程,代码下载:这里本人提交了一个demo:djdll/Yolov8_Distillation: Yolov8轻量化_蒸馏代码实现 在轻量化模型设计中,**知识蒸馏(Knowledge Distillation)**被广泛应用,作为提升模型…...
