什么是NAT!

一、NAT( network address translation)  网络地址翻译 

为什么会出现这个技术,目的就是用来解决ipv4 地址不够用的情况,因为在互联网最开始的时候,有一个概念是拥有合法IP地址,每个主机连接到互联网必须要有自己的IP,这个IP地址必须是全球唯一的,也就是合法IP。但是互联网发展之迅速,ipv4地址早已经不够使用。

所以工程师设计一种技术,在路由器或者防火墙上启用nat的这技术。如图:

在内网连接外网的设备启用nat之后,就可以在网络中(内网)使用非法IP,也就是内网地址连接外网地址(外网地址也就是公网地址)进行上网。nat技术就是把IP包的头部ip地址进行一个转换,内网非法ip地址在经过nat设备之后,会把头部的非法ip转换路由器连接外网设备上拥有合法ip的地址。这样外网就会认为你是有合法IP地址的,就可以与外界通信。我们日常上网几乎都在使用nat访问internet。

二、NAT分为两大类

NAT和目的NAT

源NAT就是把源地址进行转换。日常上网使用的就是源NAT,就是把我们主机的非法IP转换成一个合法ip进行通信。

的NAT就是把目的地址进行转换。如图:

在外网的主机想访问内网的主机时,此时我们需要把内网主机②的地址,也就是目的地址,与红点所在的合法IP地址进行一对一映射。所以当我们访问红点所在的IP地址,NAT就会把红点IP地址转换为内网主机②的地址,这样两台主机就可以通信了。这样的技术称为NAT server。

三、NAT的四种方法

静态NAT

        合法IP和非法IP进行一对一转换

动态NAT

        有个公网地址池,需要转换时,从地址池里面拿出一个公有IP地址。缺点是:若地址池里面的地址被使用完,其他主机想上网时,必须等上一台主机上网行为结束后,合法IP地址返回地址池之后,才能进行上网。本质上还是一对一转换

PAT(又称NAPT)

        多对一或多对少 

        又称为端口地址映射。如图:

        主机1.1  和主机1.2同时去访问csdn时,只需要一个合法IP加上端口号即可访问csdn,因为上网的数据是有来有回的,在csdn给内网主机回数据时,发现两个访问IP地址是一样的,会拆包,拆包之后发现有端口号,通过端口号对应ip地址进行数据的针对回复。这样有效的解决的一对一的难题。

        日常生活上网几乎都是使用的PAT

easy IP

        此方法是PAT的简化情况,就是把内网的IP地址转换为连接公网接口的IP地址。

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

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

相关文章

Big Data and Cognitive Computing (IF=3.7) 计算机/大数据/人工智能期刊投稿

Special Issue: Artificial Cognitive Systems for Computer Vision 欢迎计算机/大数据/人工智能/计算机视觉相关工作的投稿! 影响因子3.7,截止时间2024年12月31日 投稿咨询:lqyan18fudan.edu.cn 投稿网址:https://www.mdpi.com/j…

RK3568笔记二十二:基于TACO的垃圾检测和识别

若该文为原创文章,转载请注明原文出处。 基于TACO数据集,使用YOLOv8分割模型进行垃圾检测和识别,并在ATK-RK3568上部署运行。 一、环境 1、测试训练环境:AutoDL. 2、平台:rk3568 3、开发板: ATK-RK3568正点原子板子…

Ubuntu Vs code配置ROS开发环境

文章目录 1.开发环境2.集成开发环境搭建2.1 安装Ros2.2 安装 Vs code2.3 安装vs code 插件 3.Vs code 配置ROS3.1 创建ROS工作空间3.2 从文件夹启动Vs code3.3 使用Vscode 编译ROS 空间3.4 使用Vs code 创建功能包 4.编写简单Demo实例4.1编写代码4.2编译与执行 1.开发环境 系统…

(文章复现)分布式电源选址定容的多目标优化算法

参考文献: [1]夏澍,周明,李庚银.分布式电源选址定容的多目标优化算法[J].电网技术,2011,35(09):115-121. [2] Ye Tian, Ran Cheng, Xingyi Zhang, and Yaochu Jin, “PlatEMO: A MATLAB platform for evolutionary multi-objective optimization [educational for…

毕设论文的分类号与UDC查询

对于毕业论文分类号与UDC,可以根据个人研究领域查询。 中图分类号查询链接: 中图分类号查询 | 中国图书馆分类法 | 中图法 | 中图分类号 (clcindex.com)https://www.clcindex.com/category/ UDC查询链接: UDC Summaryhttps://udcsummary.info/php/ind…

探秘计算机内部的魔法:模拟计算机内部的怎么使用门电路实现运算的奥秘

1.前言 在当今数字时代,我们享受着计算机带来的便利和效率,但很少有人意识到在计算机背后的神秘世界。计算机内部运算的奥秘并非仅仅是一系列简单的加减乘除,而是依托着深奥的门电路与位运算符展开的神秘舞蹈。在这篇博客中,我们…

Web3与社会契约:去中心化治理的新模式

在数字化时代,技术不断为我们提供新的可能性,而Web3技术作为一种基于区块链的创新,正在引领着互联网的下一波变革。它不仅改变了我们的经济模式和商业逻辑,还对社会契约和权力结构提出了全新的挑战和思考。本文将深入探讨Web3的基…

OpenAI宣布GPT-4-Turbo全面升级,GPT-4 Turbo 新增视觉理解能力,可同时处理文本和图像信息

OpenAI宣布GPT-4-Turbo全面升级,GPT-4 Turbo with Vision新增视觉理解能力,可同时处理文本和图像信息,极大简化了开发流程。 OpenAI宣布GPT-4 Turbo全面升级!根据官方说法,这一波 GPT 的升级包括: 更长的上…

Buck变换电路

Buck变换电路 Buck变换电路是最基本的DC/DC拓扑电路,属于非隔离型直流变换器,其输出电压小于输入电压。Buck变换电路具有效率高、输出稳定、控制简单和成本低的优点,广泛应用于稳压电源、光伏发电、LED驱动和能量回收系统。 电路原理 Buck变…

bestvike --bvframe学习

ref title fetch后台api 分页属性,pagination 要差几条?pagelimit 在api中写一个饭方法,vue中用用他 vue.cinfig.js中配置别名 nacos微服务 实体类要继承basedata(封装了公共数据) 控制器autowired,getm…

【Java开发指南 | 第四篇】Java常量、自动类型转换、修饰符

读者可订阅专栏:Java开发指南 |【CSDN秋说】 文章目录 Java常量自动类型转换Java修饰符 Java常量 常量在程序运行时是不能被修改的。 在 Java 中使用 final 关键字来修饰常量,声明方式和变量类似: final double PI 3.1415927;自动类型转换…

大数据平台搭建2024(一)

一:基础配置 创建虚拟机并查出ip地址进行连接 ip a1.配置node01静态ip地址与主机名 vi /etc/sysconfig/network-scripts/ifcfg-ens33修改或添加如下内容: BOOTPROTO"static" ONBOOTyes #根据虚拟机网卡信息配置 IPADDR192.168.200.141 NET…

ENVI实战—一文学会使用GLT配准工具对风云数据进行几何校正

实验2:学会使用GLT配准工具 目的:完成气象卫星数据的校正,掌握利用GLT配准工具实验地理配准的方法 过程: ①读取影像:选择“文件”,选择“HS5”文件并打开,在弹出的科学数据集浏览器中&#x…

秘塔和Kimi AI在资料查询和学习中的使用对比

一、引言 最近老猿在网上查资料时,基本上都使用Kimi AI进行查询,发现其查询资料后总结到位,知识点的准确度较高。今天早上收到一个消息,说新推出的秘塔AI比Kimi更新进,老猿利用在学习的《统计知识学习》简单对比试用了…

JS算法题:找到数组中第 k 大的元素

问题描述: 给定一个未排序的整数数组,找到其中第 k 大的元素。注意,你可以假设 k 总是有效的,且 1 ≤ k ≤ 数组的长度。 举个例子: 如果给定数组是 [3,2,1,5,6,4],k 是 2,那么第 2 大的元素…

每日OJ题_BFS解决FloodFill①_力扣733. 图像渲染

目录 BFS解决FloodFill简介 力扣733. 图像渲染 解析代码 BFS解决FloodFill简介 FloodeFill算法即填充算法,中文:洪水灌溉,算法原理就是从一个点开始向四周扩散,向周围可以走到的点填充颜色,直到将可扩散到的点全部填…

(踩坑)Please refer to 异常和Error creating bean with name 异常

一、Please refer to 异常 如图所示,在使用maven构建项目的时候,如果提示该错误,则可能是xml配置文件有问题或者测试类等。但是没有明确的异常信息,所以做以下小改动,可以查看异常信息。 在IDEA工具中,打…

【C/C++笔试练习】read函数、虚拟存储、用户态、线程特点、缺页处理、调度算法、进程优先级、锁的使用、创建进程、不用加减乘除做加法、三角形

文章目录 C/C笔试练习选择部分(1)read函数(2)虚拟存储(3)用户态(4)线程特点(5)缺页处理(6)调度算法(7)进程优先…

JDK1.8新特性

JDK8新特性 ​ Java 是第一大编程语言和开发平台。它有助于企业降低成本、缩短开发周期、推动创新以及改善应用服务。如今全球有数百万开发人员运行着超过 51 亿个 Java 虚拟机,Java 仍是企业和开发人员的首选开发平台 课程内容的介绍 了解Java发展史Lambda表达式…

数字人项目 ER-NeRF 的使用和部署详细教程

文章目录 1. ER-NeRF简介2. ER-NeRF部署3. 训练自己的数字人4. 生成数字人视频5. 其他数字人模型比较常见错误 1. ER-NeRF简介 ER-NeRF(官方链接)是一个Talking Portrait Synthesis(对嘴型)项目。即:给一段某人说话的…
最新文章