NAT——网络地址转换

目录

一、概念

 二、NAT的分类

1.静态NAT

1.1 静态NAT的配置

1.2 利用eNSP小实验加强对静态NAT的理解

2、动态NAT

三、NAPT——端口映射

四、Easy IP

使用一个公网地址可以让所有人都上公网


一、概念

          随着Internet的发展和网络应用的增多,IPv4地址枯竭已经成为制约网络发展的瓶颈。尽管IPv6可以从根本上解决IPv4地址空间不足的问题,但目前众多的网络设备和网络应用仍是基于IPv4的,因此在IPv6广泛应用之前,一些过渡技术的使用是解决这个问题的主要技术手段。

          网络地址转换技术NAT(Network Address Translation)主要用于实现位于内部网络的主机访问外部网络的功能。当局域网内的主机需要访问外部网络时,通过NAT技术可以将其私网地址转换为公网地址,并且多个私网用户可以共用一个公网地址,这样既可保证网络互通,又节省了公网地址。

 二、NAT的分类

静态NAT

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

动态NAT

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

1.静态NAT

  • 静态NAT是通过手动指定,将一个公网地址和一个私网地址映射,是一对一的关系。

1.1 静态NAT的配置

方式一:
[r1]nat static global 201.1.100.1 inside 192.168.1.1 ---配置静态NAT映射
[r1-GigabitEthernet0/0/0]nat static enable ---接口下使能静态NAT功能
方式二:
[r1-GigabitEthernet0/0/0]nat static global 201.1.100.1 inside 192.168.1.1 
----直接在接口下配置静态NAT映射

1.2 利用eNSP小实验加强对静态NAT的理解

①建立以下拓扑图

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

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

 ④192.168.1.1 访问200.1.1.2

⑤并对企业路由器的两个端口进行抓包 

 

 

2、动态NAT

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

[r1]nat address-group 1 201.1.100.1 201.1.100.5 
 ---创建地址池
[r1]acl 2000 -
---创建基本acl 2000
[r1-acl-basic-2000]rule 5 permit source 192.168.1.1 0.0.0.255
 ----给需要地址转换的网段添加规则
[r1-GigabitEthernet0/0/0]nat outbound 2000 address-group 1 no-pat
 ----接口出方向配置NAT动态转换
 

三、NAPT——端口映射

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

 动态NAT虽然可以解决静态NAT浪费过多公网地址,费用成本过高的问题,但是动态NAT支持的并发上网主机数量,和地址池中的公网地址数量有关,因此,当有大量内网用户需要同时上网时,动态NAT不支持这么大的并发,而且公网地址池中的地址也需要一定的成本。

NAPT,网络地址端口转换可以通过使用一个公网地址的不同端口号,来映射不同的私网地址和端口号,提升了公网地址的使用效率以及可以支持内网终端上网的并发数量。

可以让用户访问内网服务器

 

         当不同的私网地址访问公网时,不仅把内网地址转换成地址池中的公网地址,还可以把内网源端口更改为公网地址的端口,可以实现一个公网映射多个私网地址的功能。

        192.168.1.1访问web服务器时,源端口号为10321,在NAT路由器上,将源地址转换成122.1.2.2,源端口号转换成1025,建立session会话表项,当web服务器回包时,目的IP为122.1.2.2,源端口号为1025,NAT路由器查看session表,根据会话项再将目的地址转换成192.168.1.1,目的端口号转换成10321。

 NATP的配置

[r1]nat address-group 1 201.1.100.1 
---创建地址池
[r1]acl 2000 
----创建基本acl 2000
[r1-acl-basic-2000]rule 5 permit source 192.168.1.1 0 
----匹配要转换的内网地址
[r1-GigabitEthernet0/0/0]nat outbound 2000 address-group 1  
----接口出方向配置NAPT

四、Easy IP

  •  Easy IP允许将多个内部地址映射到网关出接口地址上的不同端口。
使用一个公网地址可以让所有人都上公网

1.使用列表匹配私网的ip地址

2.将所有的私网地址映射成路由器当前接口的公网地址

 Easy IP的配置

[r1]acl 2000 
----创建基本acl 2000
[r1-acl-basic-2000]rule 5 permit source 192.168.1.1 0.0.0.255
----匹配要转换的内网地址
[r1-GigabitEthernet0/0/0]nat outbound 2000  
----接口出方向配置easy ip

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【C语言(十)】

字符函数和字符串函数 一、字符分类函数 C语言中有⼀系列的函数是专门做字符分类的,也就是⼀个字符是属于什么类型的字符的。这些函数的使用都需要包含⼀个头文件是 ctype.h 这些函数的使用方法非常类似,我们就讲解⼀个函数的事情,其他的非…

鸿蒙4.0开发 - DevEco Studio如何使用Previewer窗口预览器报错

DevEco Studio预览器概况在HarmonyOS应用开发过程中,通过使用预览器,可以查看应用的UI效果,方便开发者实时查看应用的运行效果,随时调整代码。 1.正常启动 打开预览器的位置在DevEco Studio编辑界面的右上角部分,竖排…

MySQL低版本中:字符串中的数字、英文字符、汉字提取

我们如何提醒一个字段中的汉字和数字呢 高版本指mysql8.0以上 使用sql语句 SELECT REGEXP_REPLACE(column_name, [^\\p{Han}], ) AS chinese_characters FROM table_name;其中 column_name指名称列,table_name是表名 2.低版本使用 需要新建函数 DELIMITER $$DR…

ChatGPT4 Excel 高级复杂函数案例实践

案例需求: 需求中需要判断多个条件进行操作。 可以让ChatGPT来实现这样的操作。 Prompt:有一个表格B2单元格为入职日期,C2单元格为员工等级(A,B,C),D2单元格为满意度分数(1,2,3,4,5)请给入职一年以上,员工等级为A级并且满意度在3分以上的人发4000元奖金,给入…

《打造第二大脑》—如何构建高效的笔记系统

最近看了一本书,因为我也用Obsidian来记笔记,(Obsidian之前有介绍过Obsidian使用教程(如何构建你的个人知识库,第二大脑))看完这本书后发现里面给的方法跟Obsidian很契合,所以就整理…

Vue3报错: ‘defineProps‘ is not defined,解决方法

问题出现: 今天在使用 <script setup>组合式 API 的语法糖的时候&#xff0c;定义defineProps时候报错&#xff1a; ‘defineProps’ is not defined 查了一下资料&#xff0c;这是因为eslint的语法校验导致的问题。 解决方法1&#xff1a; 在项目根目录的文件.eslin…

基于Springboot的任务发布平台设计与实现(源码齐全+调试)

项目描述 临近学期结束&#xff0c;还是毕业设计&#xff0c;你还在做java程序网络编程&#xff0c;期末作业&#xff0c;老师的作业要求觉得大了吗?不知道毕业设计该怎么办?网页功能的数量是否太多?没有合适的类型或系统?等等。你想解决的问题&#xff0c;今天给大家介绍…

QT作业3

完善对话框&#xff0c;点击登录对话框&#xff0c;如果账号和密码匹配&#xff0c;则弹出信息对话框&#xff0c;给出提示”登录成功“&#xff0c;提供一个Ok按钮&#xff0c;用户点击Ok后&#xff0c;关闭登录界面&#xff0c;跳转到其他界面 如果账号和密码不匹配&#xf…

鸿蒙小车之多任务调度实验

说到鸿蒙我们都会想到华为mate60&#xff1a;遥遥领先&#xff01;我们一直领先&#xff01; 我们这个小车也是采用的是鸿蒙操作系统&#xff0c;学习鸿蒙小车&#xff0c;让你遥遥领先于你的同学。 文章目录 前言一、什么是任务&#xff1f;为什么要有任务二、任务的状态三、任…

​报名参加openGauss训练营,开启数据库之旅!

一直以来,数据库被誉为基础软件“皇冠上的明珠”、技术的“大动脉”。也许我们对它的名字略感陌生,但我们生活的方方面面却都无法离不开它,无论是抢票、网购还是线上点餐等,几乎都得益于数据库的支持,它是支撑各类应用软件运行的基础。 openGauss是一款开源关系型数据库管理系…

Duplicate keys detected: This may cause an update error.【Vue遍历渲染报错的解决】

今天在写项目时&#xff0c;写到一个嵌套评论的遍历时&#xff0c;控制台出现了一个报错信息&#xff0c;但是并不影响页面的渲染&#xff0c;然后一看这个错的原因是 key值重复&#xff0c;那么问题的解决方式就很简单了。&#xff08;vue for循环读取key值时&#xff0c; key…

Java基础面试题小结

基础面试题 Java语言简介 Java是1995年由sun公司推出的一门高级语言&#xff0c;该语言具备如下特点: 简单易学&#xff0c;相较于C语言和C&#xff0c;没有指针的概念&#xff0c;所以操作和使用是会相对容易一些。平台无关性&#xff0c;即Java程序可以通过Java虚拟机在不…

使用Vue3+Typescript手写一个日历签到组件

设计理念 昨天写了个简单美观的日历签到组件&#xff0c;使用的是Vue3TypeScript&#xff0c;大概逻辑是先找到本月份第一天是周几&#xff0c;然后开始填充月份日期&#xff1a;weeksArray:[[]]:之后渲染到表格中&#xff0c;对于签到事件触发则先判断是否是今天且还未没有签…

【Pytorch】学习记录分享2——Tensor基础,数据类型,及其多种创建方式

pytorch 官方文档 Tensor基础&#xff0c;数据类型&#xff0c;及其多种创建方式 1. 创建 Creating Tensor&#xff1a; 标量、向量、矩阵、tensor2. 三种方法可以创建张量&#xff0c;一是通过列表(list)&#xff0c;二是通过元组(tuple)&#xff0c;三是通过Numpy的数组(arra…

Python将列表中的数据写入csv并正确解析出来

用Python做数据处理常常会将数据写到文件中进行保存&#xff0c;又或将保存在文件中的数据读出来进行使用。通过Python将列表中的数据写入到csv文件中很多人都会&#xff0c;可以通过Python直接写文件或借助pandas很方便的实现将列表中的数据写入到csv文件中&#xff0c;但是写…

苹果计划将全球1/4的IPhone产能转移至印度

KlipC报道&#xff1a;据相关人士报道&#xff0c;苹果希望在未来2到3年内每年在印度生产超过5000万部iphone&#xff0c;要是该计划得以实现&#xff0c;印度将占领全球iPhone产量的四分之一。 KlipC的分析师Alex Su表示&#xff1a;“此次iPhone15推出是苹果印度制造计划的一…

Initial用法-FPGA入门3

Initial是什么 FPGA Initial是一种在FPGA中进行初始化的方法。在FPGA设备上&#xff0c;初始值决定了逻辑门的状态和寄存器的初始值。FPGA Initial可以通过设置初始值来控制电路在上电后的初始状态。 Initial的作用 2.1&#xff0c;控制电路启动时的初始状态 通过设置FPGA Ini…

XXE利用的工作原理,利用方法及防御的案例讲解

XXE&#xff08;XML外部实体注入&#xff09;利用是一种网络安全攻击手段&#xff0c;其中攻击者利用XML解析器处理外部实体的方式中的漏洞。这种攻击主要针对的是那些使用XML来处理数据的应用程序&#xff0c;尤其是当这些应用程序没有正确限制外部实体的处理时。通过XXE利用&…

小程序接口OK,桌面调试接口不行

手机小程序OK,桌面版出现问题&#xff1b; 环境&#xff1a;iis反向url的tomcat服务&#xff0c;提供接口。 该接口post了一个很大的数组&#xff0c;处理时间比较久。 1&#xff09;桌面调试出现错误,提示 用apipost调用接口同样出错, 502 - Web 服务器在作为网关或代理服…

VS2022配置C++ 20解决import std报错

C 20新特征支持用import std来导入std模块&#xff0c;如下&#xff1a; 配置时主要有两个步骤&#xff1a; &#xff08;1&#xff09;项目--属性--常规--C语言标准--预览 - 最新 C 工作草案中的功能 (/std:clatest) 注意选择ISO C20 标准 (/std:c20)也不能正常使用&#xf…