【Router】路由器中NAT、NAPT、NPT是什么?

参考链接

NAT vs. NAPT: What’s the Difference?

IPv6 Network Prefix Translation (NPt) | pfSense Documentation (netgate.com)

趣谈NAT/NAPT的原理,这篇不可不读! - 知乎 (zhihu.com)

NAT (Network Address Translation) 

NAT说明

        NAT(网络地址转换)的功能主要是通过修改 IP 数据包标头中的网络地址信息来重新映射 IP 地址。它广泛用于路由器中,将私有地址转换为单个公共地址,确保私有网络内多个设备的无缝互联网连接。NAT 是一种工具,用于在每个设备的唯一公有 IP 不切实际或不必要的情况下保留公有 IP 地址。

         NAT 更侧重于转换 IP 地址,而不太关心通过其的流量的具体情况。它在操作方面更简单,并保持了将私有网络地址转换为公共网络地址以进行 Internet 通信的基本要求。NAT 在个人会话差异化不是优先事项的网络中非常有效。

        NAT 的基本原理是转换一对一或多对一 IP 地址。这意味着它可以将多个私有地址转换为单个公共地址,也可以将特定的公共地址分配给特定的私有地址。这是网络中的一项基本技术,可在使用有限的公有 IP 地址池的同时促进外部访问。

NAT工作原理

  • 当内网主机需要访问公网设备时,NAT的设备需要从地址池中挑选一个空闲的公网IP地址,建立与内网主机报文源ip地址间的一个NAT转换表项(正反向)。
  • 根据这个表项然后把报文的私有源IP改成公网IP然后发送出去
  • NAT设备收到公网主机的回应报文后,根据其目的IP地址查找反向的NAT表项,依据查表结果将报文转换后向内网主机的发送

NAPT (Network Address Port Translation)     

NAPT介绍  

         NAPT(网络地址端口转换)是 NAT 的一个子类型,它还通过将端口号与 IP 地址一起转换来扩展此功能。这意味着 NAPT 不仅将私有 IP 地址转换为公共 IP 地址,而且还跟踪端口号以区分多个 Internet 会话。它特别适用于通过单个公有 IP 处理大量设备的流量,管理地址和端口信息以促进互联网连接。

        另一方面,NAPT 更加复杂,因为它同时处理 IP 地址和端口号。这种复杂性允许对 Internet 流量进行更高效、更详细的管理,因为它可以通过使用不同的端口号处理来自单个 IP 地址的多个连接。NAPT 的附加转换层使其在复杂的网络场景中更加通用

       NAPT 的运作更加动态。它不仅执行 IP 地址转换,还修改端口号,从而实现多对多转换功能。NAPT 的这一功能使其能够管理和区分源自同一设备的多个会话或连接,从而更有效地处理复杂的网络流量场景。

       NAPT,网络端口地址转换,它是属于一种多对一的地址转换,它通过使用“ip地址+端口号”的形式进行转换,使多个内网的用户可以共用一个公网的IP地址来访问外网。

NAPT工作原理

  • 当内网主机需要访问公网设备时,NAT设备从地址池中选取一对空闲的“公网ip地址+端口号”,建立与内网报文“源ip地址+源端口号”间的NAPT转换表项(正反向)。
  • 根据表项把报文“源ip和源端口”改成“公网ip和端口”后转发出去。
  • NAT设备收到公网主机的回应报文后,根据其“目的IP地址+目的端口号”查找反向NAPT表项,依据查表结果将报文转换后向私网主机发送。

NAT实现主要包括: Easy IP、地址池NAT(NAPT). NAT Server和静态NAT/NAPT 

Easy IP

       Easy IP方式可以利用访问控制列表来控制哪些内部地址可以进行地址转换。Easy IP方式特别适合小型局域网访问Internet 的情况。这里的小型局域网主要指中小型网吧、小型办公室等环境.一般具有以下特点:内部主机较少、出接口通过拨号方式获得临时公网IP 地址以供内部主机访问Internet。

NAT Server

       当外网用户访问内网服务器时,NAT Server通过事先配置好的“公网IP地址+端口号”与“私网IP地址+端口号”间的映射关系,将服务器的“公网IP 地址+端口号”,根据映射关系替换成对应的“私网IP地址+端口号”。

静态NAT

       是指在进行NAT转换时,内部网络主机的IP 同公网IP 是- -对静态绑定的,静态NAT中的公网IP只会给唯一且固定的内网主机转换使用。

静态NAPT

        是指“内部网络主机的IP+协议号+端口号”同“公网IP+协议号+端口号”是一对一静态绑定的,静态NAPT中的公网IP可以为多个私网IP使用。

Network Prefix Translation (NPT)

       网络前缀转换(简称NPT)的工作方式类似于 1:1 NAT。NPT有几个用途,但许多人质疑它的实际用途。跟 NPT“私有” IPv6 空间 () 可以在 LAN 上使用,并且可以 由 NPT转换为公共的路由 IPv6 前缀,因为它来来去去 一个 WAN。这种做法的效用是值得商榷的。一种用途是避免对 LAN 重新编号 如果外部提供商发生变化,但是由于任何外部查找 旧的前缀也必须进行调整,它的有用性可以是两种方式, 尤其是当配置必须考虑避免 VPN 隧道空间中的冲突时。

IPv6 NPT规则

ip6tables -t nat -A POSTROUTING -o eth0.99 -j NETMAP --to 2607:xxx::/64 -s fda3:xxx::/64
ip6tables -t nat -A PREROUTING -i eth0.99 -j NETMAP -d 2607:xxx::/64 --to fda3:xxx::/64

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

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

相关文章

《YOLO 标注工具全览》

《YOLO 标注工具全览》 一、YOLO 标注工具的重要性二、常见的 YOLO 标注工具介绍(一)LabelImg(二)Yolo_Label(三)在线标注工具 Make Sense(四)Ybat - YOLO BBox Annotation Tool&…

成都睿明智科技有限公司电商服务可靠不?

在这个短视频风起云涌的时代,抖音不仅成为了人们娱乐消遣的首选平台,更是众多商家竞相追逐的电商新蓝海。成都睿明智科技有限公司,作为抖音电商服务领域的佼佼者,正以其独到的洞察力和专业的服务,助力无数品牌在这片沃…

微信小程序:miniprogram-ci自动打包工具使用介绍以及支持配置环境变量、jekins打包、taro、uni-app三方工具

微信小程序:miniprogram-ci自动打包工具使用介绍以及支持配置环境变量、jekins打包、taro、uni-app三方工具 背景介绍 一直都是本地电脑运行微信开发者工具打包上传。多项目中新老版本对node版本要求不一致,老是切来切去。而且同一个人开发上传需要打包…

pandas-使用技巧

pandas-使用技巧 简单技巧 仅个人笔记使用,感谢点赞关注 简单技巧 pd.to_dict():Dataframe格式数据转字典数据pd.dropna():去nan值& | ~:pd逻辑运算符pd.isnan():判断是否为nan值pd.concat:多个pd拼接…

李宏毅机器学习2022-HW7-BERT-Question Answering

文章目录 TaskBaselineMediumStrongBoss Code Link Task HW7的任务是通过BERT完成Question Answering。 数据预处理流程梳理 数据解压后包含3个json文件:hw7_train.json, hw7_dev.json, hw7_test.json。 DRCD: 台達閱讀理解資料集 Delta Reading Comprehension …

8.扩散模型的未来---GPT及大模型(3)完结

涌现能力 在自然语言处理领域中,涌现能力(EmergentAbility)是指在训练模型时,模型可以自主地学习到新的任务或功能。换句话说,涌现能力是指模型具有自学习的能力,可以在没有额外训练数据的情况下,自主地实现新的任务或功能。涌现能力…

openpnp - 底部相机视觉识别CvPipeLine的参数bug修正

文章目录 openpnp - 底部相机视觉识别的CvPipeLine的参数bug概述笔记openpnp的视觉识别参数的错误原因备注END openpnp - 底部相机视觉识别的CvPipeLine的参数bug 概述 底部相机抓起一个SOD323的元件,进行视觉识别。 识别出的矩形错了,是一个很长的长方…

Qt_软件添加版本信息

文章内容: 给生成的软件添加软件的版权等信息 #include <windows.h> //中文的话增加下面这一行 #pragma code_page(65001)VS_VERSION_INFO VERSIONINFO

TEI text-embeddings-inference文本嵌入模型推理框架

参看: https://github.com/huggingface/text-embeddings-inference#docker 文本嵌入模型榜单 https://huggingface.co/spaces/mteb/leaderboard bge模型下载 https://huggingface.co/BAAI/bge-m3/tree/main export HF_ENDPOINT=https://hf-mirror.comhuggingface-cli dow…

threejs 三维物体(Object3D)

这是Three.js中大部分对象的基类&#xff0c;提供了一系列的属性和方法来对三维空间中的物体进行操纵。 请注意&#xff0c;可以通过.add( object )方法来将对象进行组合&#xff0c;该方法将对象添加为子对象&#xff0c;但为此最好使用Group&#xff08;来作为父对象&#xf…

STM32-HAL库 - MAX30102心率血氧传感器 —— 2024.10.15

一、教程简介 本教程使用CubeMX配合Keil5编写代码&#xff0c;带你10分钟拿下MAX30102。在官方例程的基础上进行移植和封装&#xff0c;测量数据准确。采用模拟I2C&#xff0c;任意三个引脚均可驱动。 二、MAX30102简介 MAX30102是一个集成的脉搏血氧仪和心率监测仪生物传感器…

Spark 基础概念

Apache Spark 是一个快速、分布式的计算系统&#xff0c;用于大规模数据处理和分析。它提供了一个高级 API&#xff0c;用于编写并行处理的任务&#xff0c;可以在大规模集群上运行。 Spark 的基本概念包括以下几个方面&#xff1a; Resilient Distributed Datasets (RDDs)&a…

Tortoise SVN 安装汉化教程(乌龟SVN)

1.首先下载 去官网下载 如果下载比较慢的&#xff0c;链接自取 https://pan.quark.cn/s/cb6f2eee3f90 2. 安装Tortoise SVN 无脑next到完成 最后到桌面右键 你就发现svn出来了&#xff0c;但是是英文的&#xff01;&#xff01;&#xff01;&#xff01; 像我这种英文不好的…

流体力学笔记

目录 1、名词2、湍流与涡流3 涡激振动4 压力面与吸力面参考&#xff1a;[空气动力学的“他山之石”](https://zhuanlan.zhihu.com/p/412542513) 1、名词 转列&#xff1a;transition 涡脱落&#xff1a;vortex shedding 涡分离&#xff1a;vortex rupture 气动噪声&#xff1a…

【java Web如何开发?】

&#x1f3a5;博主&#xff1a;程序员不想YY啊 &#x1f4ab;CSDN优质创作者&#xff0c;CSDN实力新星&#xff0c;CSDN博客专家 &#x1f917;点赞&#x1f388;收藏⭐再看&#x1f4ab;养成习惯 ✨希望本文对您有所裨益&#xff0c;如有不足之处&#xff0c;欢迎在评论区提出…

【Mysql】MVCC原理说明

MySQL 的 InnoDB 存储引擎使用多版本并发控制&#xff08;Multiversion Concurrency Control, MVCC&#xff09;来提高数据库的并发性能&#xff0c;同时保持事务的隔离性。MVCC 通过为每个事务提供一个数据的一致性视图来实现这一点&#xff0c;而不需要在读取时加锁。以下是 …

rel,npt时间服务器

服务器端配置 配置文件/etc/chrony.conf 开放端口 查看123端口是否开放 关闭防火墙 客户端配置 配置文件/etc/chrony.conf 重启文件和查看是否成功 注意事项要在ping通下实现&#xff0c;要是能ping通配置好了还是不行可以查看防火墙是否关闭

EMCMO--多任务优化求解约束多目标问题

EMCMO–多任务优化求解约束多目标问题 title&#xff1a; An Evolutionary Multitasking Optimization Framework for Constrained Multi-objective Optimization Problems author&#xff1a; Kangjia Qiao, Kunjie Yu, BoyangQu, Jing Liang, Hui Song, and Caitong Yue. …

Spring Cloud LoadBalancer

什么是负载均衡&#xff1f; 如果一个服务对应多个实例&#xff0c;我们需要把流量合理的分配给多个实例&#xff1b;当服务流量增⼤时, 通常会采⽤增加机器的⽅式进⾏扩容, 负载均衡就是⽤来在多个机器或者其他资源&#xff0c;中, 按照⼀定的规则合理分配负载. 服务端负载…

java-collection集合整理0.9.4

java-集合整理0.9.0 基本结构基本概念实例化举例遍历获取指定值 2024年10月17日09:43:16–0.9.0 2024年10月18日11:00:59—0.9.4 基本结构 Collection 是最顶级的接口。分为 List 和 Set 两大类。List 分为&#xff1a;ArrayList、LinkedList、Vector。Set 分为&#xff1a;Ha…