网络基础(十二):ACL与NAT

目录

一、ACL

1、ACL的概述

2、ACL的分类

3、ACL的应用

4、ACL的组成和基本原理

​编辑

5、ACL的配置

5.1配置基本ACL

5.2配置高级ACL

二、NAT

1、NAT的概述

2、NAT的分类

3、NAT的工作原理

4、静态NAT的配置

5、动态NAT的配置

6、NAPT(端口映射)的配置

7、Easy IP的配置


一、ACL

1、ACL的概述

ACL(Access Control List)访问控制列表是一种网络安全机制,用于过滤和控制网络中的数据流量。它可以根据源IP地址、目的IP地址、端口号、协议类型等信息,来允许或拒绝数据包的传输。

  • ACL是由一系列permit或deny语句组成的、有序规则的列表。
  • ACL是一个匹配工具,能够对报文进行匹配和区分。

2、ACL的分类

  • 基本ACL:编号2000~2999,仅使用报文的源IP地址、分片信息和生效时间段信息来定义规则
  • 高级ACL:编号3000~3999,可使用IPv4报文的源IP地址、目的IP地址、IP协议类型、ICMP类型、TCP源/目的端口号、UDP源/目的端口号、生效时间段等来定义规则
  • 二层ACL:编号4000~4999,使用报文的以太网帧头信息来定义规则,如根据源MAC地址、目的MAC地址、二层协议类型等
  • 用户自定义ACL:编号5000~5999,使用报文头、偏移位置、字符串掩码和用户自定义字符串来定义规则
  • 用户ACL:编号6000~6999,既可使用IPv4报文的源IP地址或源UCL(User Control List)组,也可使用目的IP地址或目的UCL组、IP协议类型、ICMP类型、TCP源端口/目的端口、UDP源端口/目的端口号等来定义规则

3、ACL的应用

①匹配IP流量

②在Traffic-filter中被调用

③在NAT(Network Address Translation)中被调用

④在路由策略中被调用

⑤在防火墙的策略部署中被调用

⑥在QoS中被调用

⑦其他……

4、ACL的组成和基本原理

ACL由若干条permit或deny语句组成,是一组规则的集合。

①每条语句就是该ACL的一条规则,每条语句中的permit或deny就是与这条规则相对应的处理动作:

  • permit(允许):数据包过滤,允许那些流量通过
  • deny (拒绝):数据包过滤,拒绝那些流量通过

②ACL应用在路由器的某个接口上,ACL有两个方向:

  • inbound入口方向--------当接口收到数据包时执行ACL
  • outbound出口方向-------当设备从特定接口向外发送数据时执行ACL

基本ACL的配置格式:

注:

①rule是规则关键字,数字1是规则编号,这个编号在配置的时根据需要添加,但是一条规则就是一个编号,编号不能重复。默认编号为5,从第一条规则开始,后面每增加一条规则,编号就会加5,即每增加一个编号,编号就会在上一条规则编号的基础上加5。

之所以留出编号的间隔,是为了能够适应各种应用场景,方便在规则之间,插入新的规则。ACL在进行匹配的时候,是根据编号的顺序,从小到大一条条往下进行的,一旦由匹配到的规则,则不会继续向下匹配,如果匹配到最后都没有,则命中默认规则,默认是deny所有

规则编号的默认步长可以修改,修改了步长以后,所有的规则根据新的步长重新自动排号,为新步长的整倍数,顺序不会改变

②利用ip地址+通配符来匹配流量(通配符:根据参考ip地址,通配符“1”对应位可变,“0”对应位不可变,0/1可以穿插)

如:

5、ACL的配置

5.1配置基本ACL

建立基本ACL表2000,server1拒绝来自Client1(192.168.11.10)的访问流量,允许来自Client2(192.168.11.11的访问流量

5.1.1新建拓扑图

5.1.2配置Client1和Client2同一网段的IP地址、网关和子网掩码,配置Server1和Server2不同网段的IP地址、网关和子网掩码

如:

5.1.3配置路由器的各个端口ip地址和子网掩码,然后用Client1和2去ping任意服务器,通则正确

5.1.4用Client1和Client2去ping任意Server,都能ping通,则说明上述步骤正确,都能互相通信

如:

5.1.5配置普通ACL,建立规则,并作用在路由器的g1端口

5.1.6此时,client1再访问server1就会失败,但client2访问server1仍然能成功。

5.2配置高级ACL

配置高级acl表3000,Client1(192.168.11.10)被拒绝访问Server1(192.168.12.12)的tcp/80,但被允许访问Server1(192.168.12.12)的ftp/21

5.2.1先删除基本ACL,再配置高级acl表3000,加入Client1(192.168.11.10)被拒绝访问Server1(192.168.12.12)的tcp80端口的命令

5.2.2验证

client1访问servser1的tcp/80失败,但client2访问servser1的tcp/80成功

client1访问servser1的ftp/21成功,client2访问servser1的ftp/21成功

二、NAT

1、NAT的概述

NAT(Network Address Translation)网络地址转换是一种将私有IP地址转换为公有IP地址的技术,以实现多个设备共享一个公网IP地址,并能够访问互联网。NAT通常用于企业、家庭等内部网络与外部网络之间的通信。

2、NAT的分类

静态NAT:

  • NAT表条目是通过手动配置的方式添加进去的
  • 私有IP地址和公有IP地址是一对一的关系,不节省公网IP地址

动态NAT:

  • NAT表中的条目是路由器发送数据包时自动形成的
  • 基于NAT地址池实现私有地址和公有地址之间的转换,比静态NAT更加节省公网IP

NAPT:

  • 网络地址端口转换NAPT允许多个内部地址映射到同一个公有地址的不同端口

Easy IP:

  • Easy IP允许将多个内部地址映射到网关出接口地址上的不同端口 

3、NAT的工作原理

NAT是网络地址转换技术:

  • 从私网——>外网,将源私网地址改成源公网地址
  • 从外网——>私网,将目的公网地址改目的私网地址

4、静态NAT的配置

4.1建立拓扑图

4.2配置PC1和PC2的ip地址、网关和子网掩码

4.3配置企业路由器两个端口的ip地址和子网掩码,并在出口g1开启nat服务并配置

4.4配置运营商端口的ip地址和子网掩码

4.5PC1的ip地址去ping运营商的ip地址

4.6抓包验证

5、动态NAT的配置

动态NAT基于地址池来实现私有地址和公有地址的转换

5.1建立地址池200.2.2.10~200.2.2.15,新建acl基础表2000,允许192.168.1.0网段IP通过

5.2启用acl表2000规则,按照地址池进行NAT地址转换,不携带端口号

5.3PC1访问运营商,再查看NAT(网络地址转换)会话表项 

6、NAPT(端口映射)的配置

6.1添加企业内网服务器和普通用户客户端,连接它们对应的接口,最后开启这些设备

6.2配置运营商接口g2的IP地址、子网掩码,配置普通用户和企业内网服务器的IP地址、网关和子网掩码

6.3企业出口g1配置默认路由

配置静态路由的通用格式:ip route-static 目的网段 子网掩码 下一跳地址

6.4通过访问当前接口指定IP地址的http服务对应内网:192.168.11.100

6.5测试普通用户端是否能访问企业公网tcp/80

注:路由器不会提供七层服务只能提供三层服务,用户访问公网IP200.2.2.1,实际访问的是内网服务器192.168.11.100

7、Easy IP的配置

使用一个公网地址使所有设备都能访问外网(每台设备通过端口号区分) 

7.1拓扑图如上

7.2建立acl表2000规则,并在企业出口端口g1上启用

7.3内网设备访问外网,再查看NAT(网络地址转换)会话表项 ,可查看到对应的端口号

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/228622.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

查询某个类是在哪个JAR的什么版本开始出现的方法

背景 我们在依赖第三方JAR时,同时也会间接的依赖第三方JAR引用的依赖,而当我们项目中某个依赖的版本与第三方JAR依赖的版本不一致时,可能会导致第三方JAR的在运行时无法找到某些方法或类,从而无法正常使用。 如我正在开发的一个…

流程引擎相关资料

最近调研流程引擎相关知识,BPMN规范和流程引擎相关知识无法避开,以及市面上比较多的流程引擎产品。 BPMN2.0 基本形状 流对象(Flow Objects),流对象是定义业务流程的主要图形元素。它进一步细分为三个类别&#xff0…

[SUCTF 2018]MultiSQL MYSQL 预处理写

首先这道题需要预处理写马 之前在ctfshow中学习过预处理 我们来看看 CTFSHOW -SQL 注入-CSDN博客 首先我们开始判断是否存在注入 2^(if(10,1,0))2^(if(ascii(mid(user(),1,1))>0,0,1))判断出存在sql注入 然后我们开始fuzz 发现 select ,union 都没了 但是…

Mistral MOE架构全面解析

从代码角度理解Mistral架构 Mistral架构全面解析前言Mistral 架构分析分词网络主干MixtralDecoderLayerAttentionMOEMLP 下游任务因果推理文本分类 Mistral架构全面解析 前言 Mixtral-8x7B 大型语言模型 (LLM) 是一种预训练的生成式稀疏专家混合模型。在大多数基准测试中&…

探索顺序表:数据结构中的秩序之美(c语言实现常见功能接口)

在我们的数据结构探索中,我们已经探讨时间复杂度、空间复杂度。大家可以移步到我的上篇文章: 打开数据结构大门:深入理解时间与空间复杂度 今天,我们将深入研究另一个重要的主题——顺序表 全部的源代码大家可以去我github主页…

web服务器之——www服务器的基本配置

目录 一、www简介 1、什么是www 2、www所用的协议 3、WEB服务器 4、主要数据 5、浏览器 二、 网址及HTTP简介 1、HTTP协议请求的工作流程 三、www服务器的类型(静态网站(HTML), 动态网站(jsp python,php,perl)) 1、 仅提供…

Windows设备管理

1、前言 熟悉Windows系统的都应该使用过设备管理器。设备管理器将操作系统中所有已安装的设备分类展现出来。同时提供了安装、卸载、启用和禁用的功能。 那么,我们应该如何通过C编程的方式实现这种功能呢?答案很简单,那就是使用SetupDi函数族…

Lumerical 选项------superimpose structure

Lumerical 选项------superimpose structure 简介正文 简介 这里给大家介绍一下 Modal analysis 计算中的 superimpose structure 选项的作用。 正文 当我们勾选上 superimpose structure 选项时, 当我们取消勾选时 通过对比我们得到,勾选 superimp…

Windows11环境下配置深度学习环境(Pytorch)

目录 1. 下载安装Miniconda2. 新建Python3.9虚拟环境3. 下载英伟达驱动4. 安装CUDA版Pytorch5. CPU版本pytorch安装 1. 下载安装Miniconda 下载安装包:镜像文件地址 将Miniconda相关路径添加至系统变量的路径中。 打开Anaconda Powershell Prompt,输入…

计算机组成原理-指令系统CISC和RISC

文章目录 总览CISC和RISC 总览 CISC和RISC 存储程序就是用一个电路再加上存储部件构成 可访存指令不同 RISC更自由,因为很多函数没有固定,是自己写的 由于CISC各个指令执行时间不一样,要实现指令流水线比较困难 由于CISC可访存指令没有限制…

游戏、算法竞赛与退役(流水账版)

写在前面 不出意外的话,这东西本该咕到翻年之后再发的,但好像催稿催的有点厉害,于是就找个机会把他写了(笑) 最初是只想写个算法竞赛退役记的,后面发觉写起来就有点收不住,算法竞赛牵扯到太多…

CSS margin-trim

margin-trim 主角登场主角的局限性兼容性 margin-trim &#x1f9ea;这是一个实验性的属性, 目前仅有 Safari 支持 看这个属性的名字就知道, 外边距修剪. 平常都会遇到一些排版上的问题, 比如垂直排列的元素之间增加下外边距 <div><li>123</li><li>…

JAVA序列化(创建可复用的 Java 对象)

JAVA 序列化(创建可复用的 Java 对象) 保存(持久化)对象及其状态到内存或者磁盘 Java 平台允许我们在内存中创建可复用的 Java 对象&#xff0c;但一般情况下&#xff0c;只有当 JVM 处于运行时&#xff0c;这些对象才可能存在&#xff0c;即&#xff0c;这些对象的生命周期不…

算法竞赛备赛进阶之树形DP训练

目录 1.树的最长路径 2.树的中心 3.数字转换 4.二叉苹果树 5.战略游戏 6.皇宫守卫 树形DP是一种动态规划方法&#xff0c;主要用于解决树形结构的问题。在树形DP中&#xff0c;通常会使用动态规划的思想来求解最优化问题。其核心在于通过不断地分解问题和优化子问题来解决…

2023年国家基地“楚慧杯”网络空间安全实践能力竞赛 Web方向 题解wp

前言&#xff1a;三小时的比赛&#xff0c;和强网同时结束还要当场交wp&#xff0c;汗流浃背&#xff0c;烧起来了啊啊啊啊~ eaaeval 目录扫出备份文件 源码如下 <?php class Flag{public $a;public $b;public function __construct(){$this->a admin;$this->b …

c++字符串和日期基础

一&#xff0c;字母三角形 #include<string> #include<iostream> using namespace std; int main() {int n 0;cin >> n;for (int i 1; i < n; i)//i代表行数{string spacestring(n - i, );//前半部分空格string ch string(2 * i - 1, A i - 1);cout…

工具在手,创作无忧:一键下载安装Auto CAD工具,让艺术创作更加轻松愉悦!

不要再浪费时间在网上寻找Auto CAD的安装包了&#xff01;因为你所需的一切都可以在这里找到&#xff01;作为全球领先的设计和绘图软件&#xff0c;Auto CAD为艺术家、设计师和工程师们提供了无限的创作潜力。不论是建筑设计、工业设计还是室内装饰&#xff0c;Auto CAD都能助…

《Linux C编程实战》笔记:文件属性操作函数

获取文件属性 stat函数 在shell下直接使用ls就可以获得文件属性&#xff0c;但是在程序里应该怎么获得呢&#xff1f; #include<sys/types.h> #include <sys/stat.h> #include <unistd.h> int stat(const char *file_name,struct stat *buf); int fstat(i…

【eNSP实验项目】eNSP实验配置项目教程,ensp安装步骤

eNSP安装教程 附安装包 eNSP介绍安装教程1.安装 VirtualBox2.安装 WinPcap3.安装 Wireshark4.eNSP安装 eNSP介绍 eNSP是华为提供的一款功能强大的网络仿真平台&#xff0c;适用于学习、实践和测试企业网络场景&#xff0c;可以帮助用户深入理解网络知识和技术。 eNSP安装,需要…

Tektronix泰克TCP303示波器电流探头

主要特点和优点&#xff1a; ● 交流/直流测量功能 ● DC~100MHz电流探头放大器&#xff08;TCPA300&#xff09;&#xff0c;当使用&#xff1a; - DC~100MHz, 30A DC&#xff08;TCP312&#xff09; - DC~50MHz, 50A DC&#xff08;TCP305&#xff09; - DC~5MHz, 150A DC&a…