首页 > 其他分享 >NAT

NAT

时间:2024-06-10 21:46:01浏览次数:13  
标签:NAPT 转换 私网 地址 NAT 公网

概念

NAT:Network Address Translation 网络地址转换
NAPT:Network Address Port Translation 端口地址转换,适用于公网IP比较少的情况下,这时可以通过端口区分不同的请求过程。

当外网客户端访问内网时,在NAT设备上将暴露的公网地址转换为内网实际的服务器地址 -- DNAT
当内网客户端访问外网时,在NAT设备上将客户端的地址转换为NAT设备上的公网地址 -- SNAT

NAT的好处

“最后一公里路由” + 提高内网安全性 + 提高IP利用率

为什么需要NAT

随着网络应用的增多,IPv4地址枯竭的问题越来越严重。尽管IPv6可以从根本上解决IPv4地址空间不足问题,但目前众多网络设备和网络应用大多是基于IPv4的,因此在IPv6广泛应用之前,使用一些过渡技术(如CIDR、私网地址等)是解决这个问题的主要方式,NAT就是这众多过渡技术中的一种。

当私网用户访问公网的报文到达网关设备后,如果网关设备上部署了NAT功能,设备会将收到的IP数据报文头中的IP地址转换为另一个IP地址,端口号转换为另一个端口号之后转发给公网。在这个过程中,设备可以用同一个公网地址来转换多个私网用户发过来的报文,并通过端口号来区分不同的私网用户,从而达到地址复用的目的。

早期的NAT是指Basic NAT,Basic NAT在技术上实现比较简单,只支持地址转换,不支持端口转换。因此,Basic NAT只能解决私网主机访问公网问题,无法解决IPv4地址短缺问题。后期的NAT主要是指网络地址端口转换NAPT(Network Address Port Translation),NAPT既支持地址转换也支持端口转换,允许多台私网主机共享一个公网IP地址访问公网,因此NAPT才可以真正改善IP地址短缺问题。

个人总结:貌似任何一台路由器都需要实现NAT地址转换,否则无法实现“最后一公里”路由。

标签:NAPT,转换,私网,地址,NAT,公网
From: https://www.cnblogs.com/zongzw/p/18241075

相关文章

  • LVS负载均衡群集+NAT部署
    目录1.企业群集应用概述1.1群集的含义1.2企业群集分类2.LVS负载均衡群集运用理论2.1负载均衡的架构2.2LVS负载均衡群集工作的三种模式3.LVS虚拟服务器(LinuxVirtualServer)3.1ip_vs通用模块 3.2LVS调度器用的调度方法4.ipvsadm工具选项说明5.LVS负载均衡-NA......
  • 利用CONCATENATE公式将Excel数据转化为SQL
     目前负责的业务系统存在新需求:客户提供了Excle表格数据,需要将Excel里的数据录入业务系统,按之前本人的套路是,先用Excel对列进行处理后(如插入空列再加入特殊符号),最后再通过Notepad++的替换函数对相关字段进行替换,生成sql后再导入数据库执行。Excle+Notepad++的处理思路,之前屡试......
  • Native Instruments Komplete Kontrol for mac(音源制作软件)v3.2.1版
    NativeInstrumentsKompleteKontrolforMac是一款功能强大的音乐制作软件,专为macOS平台设计。它为用户提供了一个统一的平台,集成了多个音频插件和虚拟乐器,包括合成器、采样器、效果器等。此外,它与NativeInstruments的硬件控制器紧密结合,如KompleteKontrolS系列键盘,提供了......
  • 【NAS】绿联NAS UGOS PRO 使用natfrp(Sakura Frp)内网穿透访问Docker应用
    配置加速https://registry.cn-hongkong.aliyuncs.com下载镜像创建容器【容器】-【创建】-【手动创建】-选择你下载的镜像即可在日志中查看密码访问容器以HTTPS方式访问容器输入从日志中得到的密码。然后去官网查看访问密钥(不知道官网的就去看截图上的URL)将得到的密......
  • Go使用websocket+nats队列实现聊天
    示例用的github.com/olahol/melody其实是在gorilla/websocket的基础上封装了一下packagemainimport( "encoding/json" "fmt" "github.com/nats-io/nats.go" "github.com/olahol/melody" "log" "net/http" "runti......
  • 浙江大学蒋明凯研究员《Nature》正刊最新成果!揭示生态系统磷循环响应大气二氧化碳浓度
    随着大气二氧化碳浓度的升高,陆地生态系统固存额外碳汇的能力取决于土壤养分的可利用性。前期的研究证据表明,在土壤低磷环境下,大气二氧化碳浓度的升高可以提升成熟森林的光合速率,但是没有产生额外生物量固碳。热带和亚热带森林的生产力普遍受到土壤磷元素可用性的限制,但是生态系......
  • ReactNative 环境设置失败
    ErrorImageIgetthiserrorWhilesettinguptheenviromentofReactnative.我在设置Reactnative环境时遇到了这个错误。Iwanthelpwhoknowreactnativeverywell.TheerrorIhaveattchedseeandexplanemewhatistheproblem.Thiserror......
  • React Native:尝试使用手势处理使文本组件可拖动时出现渲染错误
    我正在ReactNative应用程序中开发一项照片编辑功能,用户可在其中添加可拖动的文本覆盖。我使用钩子来管理文本块的位置,并通过手势处理来更新它们。但是,当我尝试在手势过程中更新这些文本元素的位置(例如拖动)时、我遇到了一个呈现错误:"呈现的钩子比上一次呈现时多。我怀......
  • 探索Native Plugins:开启大模型的技能之门
    前言上一章节我们了解了一下SemanticKernnel中Plugins插件的概念以及学习了的SemanticKernel模板插件的创建,本章节我们来学习NativePlugins原生函数插件使用。通过函数定义插件在之前的章节中我们介绍过在在SemanticKernel中应用FunctionCalling,在文中讲解了Func......
  • QT 关于pcl::oncatenateFields的报错问题
    报错类不能是其自身的基类因为pcl::concatenateFields与PointXYZRGB不兼容viewer.reset(newpcl::visualization::PCLVisualizer("viewer",false));vtkNew<vtkGenericOpenGLRenderWindow>window;window->AddRenderer(viewer->getRendererCollection()-&g......