当前位置: 首页 > news >正文

网络(十)ACL和NAT

前言

网络管理在生产环境和生活中,如何实现拒绝不希望的访问连接,同时又要允许正常的访问连接?当下公网地址消耗殆尽,且公网IP地址费用昂贵,企业访问Internet全部使用公网IP地址不够现实,如何让私网地址也可以访问Internet?针对上面两个问题,将分别介绍ACL与NAT技术。

目录

前言

一、ACL

1. 概述

2. ACL的作用

3. ACL的类型

4. 工作原理

5. ACL的配置

5.1 命令参数介绍

5.2 图示

5.3 配置路由器接口IP地址

5.4 建立基本acl表2000,拒绝IP192.168.1.1,流量匹配出口启用acl2000表的规则

5.5 测试网络

5.6 建立高级acl表3000,拒绝192.168.1.1访问172.20.8.2的80端口

5.7 测试端口号访问 

二、NAT

1. NAT概述

2. NAT的实现方式

3. 工作原理

4. NAT的配置

4.1 静态nat

4.1.1 图示

4.1.2 分别配置企业和运营商0接口IP地址

4.1.3 配置g0/0/1接口IP地址,在接口下使能nat static功能,配置静态NAT 

4.1.4 测试网络

4.1.5 建立地址池(1)200.1.1.10~15,新建acl基础表2000,允许192.168.1段IP通过

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

4.1.7 客户端访问服务器,查看NAT(网络地址转换)会话表项 

4.2 NATPT(端口映射)

4.2.1 图示 

4.2.2  企业出口配置默认路由,运营商接口1配置IP地址 

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

4.2.4 测试用户端访问企业公网80端口

4.3 Easy-IP

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

4.3.1 图示

4.3.2 nat应用出口规则2000

4.3.3  内网设备访问外网,查看NAT(网络地址转换)会话表项  


一、ACL

1. 概述

访问控制列表(ACL)是一种基于包过滤的访问控制技术,它可以根据设定的条件对接口上的数据包进行过滤,允许其通过或丢弃。

2. ACL的作用

· 可以控制(过滤)流量访问端口,然后匹配规则判断是否允许或拒绝

· NAT可以匹配感兴趣的流量

3. ACL的类型

· 基本ACL:acl编号2000~2999,仅使用报文的源IP地址、分片信息和生效时间段信息来定义规则

· 高级ACL:acl编号3000~3999,可使用IPv4报文的源IP地址、目的IP地址、IP协议类型、ICMP类型、TCP源/目的端口号、UDP源/目的端口号、生效时间段等来定义规则。

4. 工作原理

ACL是一组规则的集合,它应用在路由器的某个接口上,ACL有两个方向:

· inbound入口方向--------当接口收到数据包时执行ACL

· outbound出口方向-------当设备从特定接口向外发送数据时执行ACL

当数据包从接口经过时,如果接口应用了ACL, 也就是说该接口应用了一组规则,此时路由器会对数据包应用该组规则进行顺序检查,然后做出相应的处理。如果匹配第一条规则,则不再检查;如果不匹配第一条,依次往下直到匹配;如果没有规则匹配,丢弃该数据包。

5. ACL的配置

5.1 命令参数介绍

· access-list-numbe:ACL列表号,1~99,默认是5,且每条表号相隔5;acl 2000表示建立基本表

· permit/deny:允许/拒绝

· source:数据包源地址

· source-wildcard:通配符掩码,在用二进制数表示时:可以0和1穿插组合,0表示可变,1表示不可变

案例一:相同网段设备通过过滤IP实现控制访问

5.2 图示

5.3 配置路由器接口IP地址

5.4 建立基本acl表2000,拒绝IP192.168.1.1,流量匹配出口启用acl2000表的规则

5.5 测试网络

 案例二:路由器通过过滤端口号实现设备端口访问控制

5.6 建立高级acl表3000,拒绝192.168.1.1访问172.20.8.2的80端口

5.7 测试端口号访问 

 

二、NAT

1. NAT概述

NAT旨在通过将一个外部 IP 地址和端口映射到更大的内部 IP 地址集来转换 IP 地址。 基本上,NAT 使用流量表将流量从一个外部(主机)IP 地址和端口号路由到与网络上的终结点关联的正确内部 IP 地址。

2. NAT的实现方式

· 静态nat :工程手动将一个私有地址和一个公网地址进行关联,一 一对应,缺点和静态路由一样

· NATPT(端口映射):内网服务器的相应端口映射成路由器公网ip地址的相应端口

· Easy-IP:使用列表匹配私网的ip地址,将所有的私网地址映射成路由器当前接口的公网地址

3. 工作原理

NAT是地址转换翻译技术:

· 从私网——>外网,将源私网地址改成源公网地址

· 从外网——>私网,将目的公网地址改目的私网地址

4. NAT的配置

4.1 静态nat

案例三:私有地址关联一个公网地址,实现访问外网

4.1.1 图示

4.1.2 分别配置企业和运营商0接口IP地址

4.1.3 配置g0/0/1接口IP地址,在接口下使能nat static功能,配置静态NAT 

注:当收到192.168.1.1的数据流量,将IP转换为200.1.1.100 

4.1.4 测试网络

 案例四:建立公网地址池,实现私网访问外网 

4.1.5 建立地址池(1)200.1.1.10~15,新建acl基础表2000,允许192.168.1段IP通过

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

4.1.7 客户端访问服务器,查看NAT(网络地址转换)会话表项 

4.2 NATPT(端口映射)

案例五:内网服务器映射到企业路由器出口,实现外网用户通过指定IP地址访问内网服务器

4.2.1 图示 

4.2.2  企业出口配置默认路由,运营商接口1配置IP地址 

 

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

4.2.4 测试用户端访问企业公网80端口

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

4.3 Easy-IP

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

4.3.1 图示

4.3.2 nat应用出口规则2000

4.3.3  内网设备访问外网,查看NAT(网络地址转换)会话表项  

相关文章:

网络(十)ACL和NAT

前言 网络管理在生产环境和生活中,如何实现拒绝不希望的访问连接,同时又要允许正常的访问连接?当下公网地址消耗殆尽,且公网IP地址费用昂贵,企业访问Internet全部使用公网IP地址不够现实,如何让私网地址也…...

JavaScript算法46- 最长连续序列(leetCode:128middle)

128. 最长连续序列 一、题目 给定一个未排序的整数数组 nums ,找出数字连续的最长序列(不要求序列元素在原数组中连续)的长度。 请你设计并实现时间复杂度为 O(n) 的算法解决此问题。 示例 输入:nums [100,4,200,1,3,2] 输出…...

提升 API 可靠性的五种方法

API 在我们的数字世界中发挥着关键的作用,使各种不同的应用能够相互通信。然而,这些 API 的可靠性是保证依赖它们的应用程序功能正常、性能稳定的关键因素。本文,我们将探讨提高 API 可靠性的五种主要策略。 1.全面测试 要确保 API 的可靠性…...

【K8S 系列】认识k8s、k8s架构

一、什么是k8s? Kubernetes 简称 k8s,是支持云原生部署的一个平台,k8s 本质上就是用来简化微服务的开发和部署的,用于自动化部署、扩展和管理容器化应用的开源容器编排技术。对于传统的docker其实也提供了容器编排的技术docker-compose&…...

通过这5步,快速成为数据分析师

1. 学习基础知识:掌握统计学、数学和编程等基础知识是成为数据分析师的第一步。你可以参加在线课程、教育平台或自学来提高自己的技能。 2. 学习数据分析工具:熟练使用数据分析工具如Python、R和SQL等是必要的。这些工具可以帮助你处理和分析大量的数据…...

深入解析 Spring 和 Spring Boot 的区别

目录 引言 1. 设计理念 1.1 Spring 框架的设计理念 1.2 Spring Boot 的设计理念 2. 项目配置 2.1 Spring 框架的项目配置 2.2 Spring Boot 的项目配置 3. 自动配置 3.1 Spring 框架的自动配置 3.2 Spring Boot 的自动配置 4. 微服务支持 4.1 Spring 框架的微服务支持…...

Python日期范围按旬和整月以及剩余区间拆分

昨天见到了一个比较烧脑的问题: 咋一看可能理解问题比较费劲,可以直接看结果示例: 当然这个结果在原问题上基础上有一定改进,例如将同一天以单个日期的形式展示。 如何解决这个问题呢?大家可以先拿测试用例自己试一下…...

windows安装sqlserver2008后连接失败问题

刚安装好的sqlserver在安装服务器上,直接使用Windows身份认证登录就报错 未找到或无法访问服务器。请验证实例名称是否正确并且SQL Server已配置为允许远程连接。(provider:命名管道提供程序,error:40 -无法打开到SQLS…...

mysql innodb知识记录

官方文档 官网架构图 innodb 特性 内存 buffer pool 采用优化后的LRU算法, 3/8 of the buffer pool is devoted to the old sublist.The midpoint of the list is the boundary where the tail of the new sublist meets the head of the old sublist.When In…...

在排序数组中查找元素的第一个和最后一个位置(Java详解)

一、题目描述 给你一个按照非递减顺序排列的整数数组 nums,和一个目标值 target。请你找出给定目标值在数组中的开始位置和结束位置。 如果数组中不存在目标值 target,返回 [-1, -1]。 你必须设计并实现时间复杂度为 O(log n) 的算法解决此问题。 示…...

k8s 安装firewalld导致的网络疑难问题处理

场景 ubuntu 操作系统,部署了k8s集群,n 台 机器,某些机器之间 telnet ip 10250不通。 ufw 是关闭的,然后抓包会看到如下错误 04:43:09.154362 IP 192.168.1.3.56608 > 192.168.1.183.8000: Flags [S], seq 3664350430, win 64240, options [mss 1460,sackOK,TS val 281…...

人工智能中的巨兽:图神经网络大模型的崛起

导言 图神经网络大模型的涌现标志着人工智能领域的一次革命。本文将深入研究这些庞大而强大的模型,探讨其背后的技术原理、关键应用以及引发的社会影响。 1. 技术原理 图神经网络大模型以其对图结构数据的卓越处理能力而著称。其技术原理包括: 图卷积神…...

【LeetCode刷题笔记(6-2)】【Python】【三数之和】【双指针】【中等】

文章目录 引言三数之和题目描述示例示例1示例2示例3 提示 解决方案3:【双指针】结束语 三数之和 引言 编写通过所有测试案例的代码并不简单,通常需要深思熟虑和理性分析。虽然这些代码能够通过所有的测试案例,但如果不了解代码背后的思考过程…...

02_Web开发基础之JavaScript

Web开发基础之JavaScript 学习目标和内容 1、能够描述Javascript的作用 2、能够使用分支结构if语句逻辑判断 3、能够使用其中一种循环语句 4、能够定义javaScript中的函数 5、能够定义javaScript中的对象 6、能够描述DOM的作用 7、能够通过DOM操作HTML标签元素及其属性 8、能够…...

如何控制Elasticsearch搜索的相关性?

控制相关性 纯粹处理结构化数据(例如日期、数字和 字符串枚举)很简单:他们只需要检查一个文档(或 行,在关系数据库中)与查询匹配。 虽然布尔值是/否匹配是全文搜索的重要组成部分,但它们 光靠自己是不够的。相反,我们还需要知道每个的相关性 document 是查询。全文搜索…...

基于urllib库的网页数据爬取

实验名称: 基于urllib库的网页数据爬取 实验目的及要求: 【实验目的】 通过本实验了解和掌握urllib库。 【实验要求】 1. 使用urllib库爬取百度搜索页面。 2. 使用urllib库获取百度搜索的关键字搜索结果(关键字任选)。 实验原理及…...

Python如何匹配库的版本

目录 1. 匹配库的版本 2. Python中pip,库,编译环境的问题回答总结 2.1 虚拟环境 2.2 pip,安装库,版本 1. 匹配库的版本 (别的库的版本冲突同理) 在搭建pyansys环境的时候,安装grpcio-tools…...

日志审计在网络安全中的重要性

日志审计是一种通过分析、识别和验证各种日志信息,以帮助企业了解其网络和系统的安全状态和活动的过程。这些日志信息可能来自各种来源,包括服务器、网络设备、应用程序、操作系统等。 日志审计的主要功能包括: 1.识别潜在的安全威胁&#…...

浅谈基于不信任的防御性编程

背景 在实际开发过程中,我们经常遇到这样的场景: 后端报错了,手忙脚乱一顿排查,发现是前端传的参数为空,或者格式不对;后端又报错了,传参没问题,根据日志流发现,是某“给…...

线性代数(一)

1.标量:标量由只有⼀个元素的张量表⽰。 x np.array(3.0) y np.array(2.0) x y, x * y, x / y, x ** y (array(5.), array(6.), array(1.5), array(9.))2.向量:向量可以被视为标量值组成的列表,列向量是向量的默认⽅向。 x np.arange(4…...

避开FPGA时序分析盲区:除了Clock和Data,别忘了用Set_Data_Check给你的控制信号也上个‘闹钟’

避开FPGA时序分析盲区:控制信号的隐藏时序风险与Set_Data_Check实战 在FPGA设计的世界里,时序约束就像交通信号灯,确保数据在复杂的逻辑网络中安全有序地流动。大多数工程师对时钟和数据信号之间的时序关系了如指掌,却常常忽视了一…...

Docker+宝塔双方案:Nextcloud私有云盘从入门到企业级部署全攻略

Nextcloud企业级私有云部署双轨方案:Docker敏捷开发与宝塔生产环境实战指南 在数字化转型浪潮中,企业数据主权意识正在觉醒。Nextcloud作为开源的私有云解决方案,不仅提供了媲美商业云盘的功能体验,更让组织完全掌控数据流向。本文…...

用ESP32打造智能家居控制中心:HTTP服务器实战教程(含WiFi配置)

用ESP32构建智能家居控制中枢:从WiFi配置到HTTP交互全解析 清晨醒来,窗帘自动拉开到预设角度,咖啡机开始研磨新鲜豆子,空调将室温调节至最舒适状态——这样的智能家居场景正逐渐从科幻走向现实。而实现这一切的核心,往…...

三步搞定图片文字提取:Umi-OCR免费离线OCR工具全攻略

三步搞定图片文字提取:Umi-OCR免费离线OCR工具全攻略 【免费下载链接】Umi-OCR Umi-OCR: 这是一个免费、开源、可批量处理的离线OCR软件,适用于Windows系统,支持截图OCR、批量OCR、二维码识别等功能。 项目地址: https://gitcode.com/GitHu…...

Sleep-EDF数据库实战:如何用Matlab快速处理睡眠分期标签(附完整代码)

Sleep-EDF数据库实战:如何用Matlab快速处理睡眠分期标签(附完整代码) 睡眠研究是神经科学和临床医学的重要领域,而Sleep-EDF数据库作为公开可用的标准数据集,为科研人员提供了宝贵的多导睡眠图(PSG)记录。但在实际应用…...

Wan2.1-UMT5开发环境搭建:Node.js后端服务与前端交互配置

Wan2.1-UMT5开发环境搭建:Node.js后端服务与前端交互配置 如果你正在折腾Wan2.1-UMT5的WebUI,想自己搞点后端服务,或者想扩展它的功能,比如加个状态查询、做个回调通知,那你来对地方了。很多朋友卡在环境配置这一步&a…...

如何高效解锁拯救者Y7000系列BIOS隐藏选项:终极完整指南

如何高效解锁拯救者Y7000系列BIOS隐藏选项:终极完整指南 【免费下载链接】LEGION_Y7000Series_Insyde_Advanced_Settings_Tools 支持一键修改 Insyde BIOS 隐藏选项的小工具,例如关闭CFG LOCK、修改DVMT等等 项目地址: https://gitcode.com/gh_mirrors…...

4个Dify工作流配置策略:从基础请求到复杂数据处理的高效实践

4个Dify工作流配置策略:从基础请求到复杂数据处理的高效实践 【免费下载链接】Awesome-Dify-Workflow 分享一些好用的 Dify DSL 工作流程,自用、学习两相宜。 Sharing some Dify workflows. 项目地址: https://gitcode.com/GitHub_Trending/aw/Awesome…...

2020 年 12 月青少年软编等考 C 语言三级真题解析

目录 T1. 完美立方 思路分析 T2. 不定方程求解 思路分析 T3. 分解因数 思路分析 T4. 上台阶 思路分析 T5. 田忌赛马 思路分析 T1. 完美立方 题目链接:SOJ D1025 形如 a 3 = b 3 + c 3 + d 3 a^3 = b^3 + c^3 + d^3 a3...

Wasmtime代码缓存机制:提升WebAssembly执行性能的终极指南

Wasmtime代码缓存机制:提升WebAssembly执行性能的终极指南 【免费下载链接】wasmtime A fast and secure runtime for WebAssembly 项目地址: https://gitcode.com/gh_mirrors/wa/wasmtime Wasmtime作为一款快速且安全的WebAssembly运行时,其代码…...