NAT简介
一、NAT 概念定义
NAT(Network Address Translation,网络地址转换)是一种将私有 IP 地址转换为公有 IP 地址的技术。
- 允许一个组织内部使用私有 IP 地址的网络通过少量的公有 IP 地址连接到互联网。
- 实现了私有网络与外部网络的通信,同时节省了公有 IP 资源。
- 在转换过程中,通常会对数据包的源 IP 地址或目的 IP 地址进行修改。
- 帮助解决了 IPv4 地址资源有限的问题。
- 使得多个内部设备可以共享一个或几个公有 IP 地址上网。
- 可以增强内部网络的安全性,一定程度上隐藏了内部网络的结构。
二、NAT 工作原理
到达-检查-转换-转发
- 当内部网络中的设备要与外部网络通信时,数据包到达 NAT 设备。
- NAT 设备会检查数据包的源 IP 地址,
- 如果是私有 IP 地址,就会根据设定的规则进行转换。
- 对于源 IP 地址,将其替换为 NAT 设备所拥有的公有 IP 地址。
- 还会根据具体的 NAT 类型(如 NAPT)对源端口进行转换,形成唯一的映射关系。
- 转换后的数据包被发送到外部网络。
- 当外部网络的响应数据包返回时,NAT 设备根据之前记录的映射关系,将目的 IP 地址和端口转换回内部设备的私有 IP 地址和端口。
- 将数据包转发给内部的相应设备。
三、NAT 三种类型
源NAT:
- 对报文中源地址转换,用于私网访问公网。
- 私网发送的报文到达NAT设备后,将报文中的私网IPv4地址转换成公网IPv4地址。
目的NAT:
- 对目的地址和目的端口号转换,用于公网访问私网。
- 公网发送的报文到达NAT设备后,将报文中的公网IPv4地址转换成私网IPv4地址。
双向NAT:
- 同时转换报文的源信息和目的信息。
- 源NAT和目的NAT的组合,外网访问内部服务器和私网访问内部服务器。
四、NAT 优点缺点
NAT 的优点:
- 节省公网 IP 资源,可让大量内部设备通过少量公网 IP 与外部通信。
- 一定程度上增强了内部网络的安全性,隐藏了内部网络的结构。
- 方便网络管理和地址规划。
NAT 的缺点:
- 某些应用可能会受到影响,如需要端到端 IP 地址可见的应用。
- 可能导致网络延迟增加。
- 对网络故障排查增加了一定复杂性。
- 与某些新兴网络技术的兼容性可能存在问题。
五、NAT 常见应用
- 家庭网络:家庭中的多台设备通过路由器连接到互联网,路由器通常会使用 NAT 功能。
- 小型企业网络:实现内部设备共享少量的公网 IP 地址。
- 大型企业网络:用于不同区域的地址规划和网络隔离。
- 云环境:保障云内网络与外部的通信。
- 移动网络:如手机通过移动网络上网时,运营商网络中可能会用到 NAT。
- 虚拟专用网络(VPN):在 VPN 连接中可能会涉及 NAT 操作来处理地址转换。
- 分支机构网络:方便分支机构与总部网络或其他分支机构之间的通信。
六、NAT 未来发展
- 与 IPv6 融合:随着 IPv6 的逐步推广,NAT 技术可能会在 IPv4 与 IPv6 共存的过渡时期继续发挥作用,以实现两者之间的平稳衔接和转换。
- 智能化:变得更加智能,能够根据不同的应用需求和网络状况进行更精细、动态的地址转换策略调整。
- 适应新应用和技术:不断适应新兴的网络应用和技术,如物联网、5G 等,确保这些场景下的地址转换需求得到满足。
- 性能优化:持续进行性能提升,降低延迟和资源消耗,以更好地支持高带宽、低延迟的网络业务。
- 安全增强:在保障地址转换功能的同时,进一步强化其在网络安全方面的作用,抵御更多复杂的网络攻击。
- 与云计算紧密结合:在云计算环境中深度整合,为云服务提供高效的地址转换支持。
七、STUN NAT类型
- UDP Blocked:位于防火墙之后,防火墙阻止了 UDP 通信。
- Open Internet:公网 IP,允许主动发起和被动响应两种方式的 UDP 通信。
- Symmetric Firewall:公网 IP,位于防火墙之后,防火墙阻止了外部主机的主动 UDP 通信。
- Full Cone NAT:内网主机首次用 UDP socket 发数据包时,NAT 分配固定公网{IP:端口},之后该 socket 发的包都经此发送,且任何外部主机都可经此向该 socket 发包,NAT 维护内网到公网及外部主机到内网的映射。
- Restricted Cone NAT:类似 Full Cone NAT,但需内部主机先向外发后外部主机才能收到其发至公网地址端口的数据报。
- Port Restricted Cone NAT:类似 Restricted Cone NAT,但端口号需相同。
- Symmetric NAT:相同内部 IP 地址和端口号对特定目的 IP 地址和端口号请求映射到相同公网 IP 地址和端口,同一主机不同源地址和端口对不同目的地址则有不同映射,外部主机收到 IP 包后才可向内发回 UDP 包,且为新会话分配新端口号。
相关文章:
NAT简介
一、NAT 概念定义 NAT(Network Address Translation,网络地址转换)是一种将私有 IP 地址转换为公有 IP 地址的技术。 允许一个组织内部使用私有 IP 地址的网络通过少量的公有 IP 地址连接到互联网。实现了私有网络与外部网络的通信…...
联想凌拓 NetApp AFF C250 全闪存存储助力丰田合成打造数据新“引擎”
联想凌拓 NetApp AFF C250全闪存存储助力丰田合成打造数据新“引擎” 丰田合成(张家港)科技有限公司(以下简称“丰田合成”)于2003年12月成立,坐落在中国江苏省张家港市保税区中华路113号,是日本丰田合成株…...
红队技巧:仿冒Windows登录
Metasploit框架:phish_windows_credentials Metasploit带有内置的后期漏洞利用功能,可帮助我们完成任务。由于它是后渗透的模块,因此只需要输入会话即可: use post/windows/gather/phish_windows_credentials set session 1 …...
821. 字符的最短距离 - 力扣
1. 题目 给你一个字符串 s 和一个字符 c ,且 c 是 s 中出现过的字符。 返回一个整数数组 answer ,其中 answer.length s.length 且 answer[i] 是 s 中从下标 i 到离它 最近 的字符 c 的 距离 。 两个下标 i 和 j 之间的 距离 为 abs(i - j) ,…...
BI工具如何为金融行业带来变革?金融行业营销管理策略大揭秘
当今数字化时代,金融行业正经历着前所未有的变革。随着大数据、人工智能、区块链等新兴技术的兴起,金融机构正面临着重新定义服务模式、风险管理和客户体验的挑战。商业智能(BI)作为这一变革的关键驱动力,已经成为金融…...
操作系统 - 计算机系统概述
事前提一嘴 室友考完研了,下一年就是我了,真不想和他们一起考,压力太大了,这里分享一点笔记吧 采用王道考研的书以及视频,去掉了一些书上的废话,加上了视频中的重点,最后总结出来的 如有侵权&a…...
[论文笔记]REACT: SYNERGIZING REASONING AND ACTING IN LANGUAGE MODELS
引言 今天带来一篇经典论文REACT: SYNERGIZING REASONING AND ACTING IN LANGUAGE MODELS的阅读笔记,论文中文意思是 在语言模型中协同推理和行动。 虽然大型语言模型(LLMs)在语言理解和互动决策任务中展现出强大的能力,但它们在推理(例如思维链提示)和…...
[]下标的意义
数组: int array[10]; array[0]获取的是值,还是引用? std::map<int,string> m_map; m_map[0]返回的是引用还是值,还是指针。 #include <iostream> #include <map> #include <vector> #include <al…...
去重复记录和排序——kettle开发09
一、去除重复记录 去除重复记录,就是将数据流中的数据进行字段比较,从而去掉重复值的过程。去除重复记录的前提是需要将数据流中的数据进行排序,然后再进行去重操作。 去除重复记录的逻辑是,如下图,我们将需要比较的…...
中创算力与中国移动初步达成战略合作意向,共同构建智能生态圈!
2024年5月14日,为进一步深化合作,促进业务共同发展,实现双方优势互补。中国移动云能力中心高级专家、郑州移动总经理助理邵根波、管城分公司政企部经理张文孟、航海东路分局张旭红莅临中创算力。中创董事长许伟威、副总经理杨光、技术总监刘朝…...
基础—SQL—DML(数据操作语言)插入数据
一、介绍 分类全称说明DMLData Manipulation Language数据操作语言。用来对数据库表中的数据进行增删改(插入、删除、修改) 则增、删、改是三个操作也就对应着三个关键字,分别是: 添加数据:( INSERT )修改数据&#…...
【改變,是面對的開始】
改變,不是為了逃避無法解決的困境,而是為了面對心靈深處最懼怕的聲音。 她離開宛如人間天堂的義大利,轉往物質相對匱乏的印度,想藉由清修的方式,理清混亂的內在,重新與自己對話。 赫然發現,認…...
AI大模型实现德语口语练习
利用AI大模型实现德语口语练习的应用需要整合多种技术和资源,以确保学生能够获得全面、互动和有效的学习体验。以下是实现德语口语练习应用的详细流程和技术要点。北京木奇移动技术有限公司,专业的软件外包开发公司,欢迎交流合作。 实现流程 …...
一文读懂npm i的命令以及作用
目录 1. 基本知识2. 常见用法 1. 基本知识 npm i 是 Node Package Manager (npm) 的一个命令,用于安装 Node.js 项目依赖的包 是 npm install 的简写形式,功能完全相同 详细解析 npm: npm 是 Node.js 的包管理工具,用于安装、共…...
You don‘t have enough free space或者no space left on device异常
1.磁盘空间不足 Linux安装软件显示 You dont have enough free space 或者docker拉镜像时,出现磁盘空间不足的情况 no space left on device 如果你是ubuntu系统。查看磁盘空间 df -h 多半是这个目录满了/dev/mapper/ubuntu--vg-ubuntu--lv 大多情况我们只希望扩…...
饮料添加剂新型褪色光照试验仪器太阳光模拟器
太阳光模拟器的定义和功能 太阳光模拟器是一种高科技设备,它可以模拟太阳光的光谱、光强和光照条件,用于实验室环境中对太阳能电池、光电器件以及其他需要太阳光条件的设备和材料进行评估。太阳光模拟器的主要功能包括模拟太阳光的光谱分布、辐照度、光…...
ElasticSearch - 删除已经设置的认证密码(7.x)
文章目录 Pre版本号 7.x操作步骤检查当前Elasticsearch安全配置停止Elasticsearch服务修改Elasticsearch配置文件删除密码重启Elasticsearch服务验证配置 小结 Pre Elasticsearch - Configuring security in Elasticsearch 开启用户名和密码访问 版本号 7.x ES7.x 操作步骤 …...
9.4 Go语言入门(运算符)
Go语言入门(运算符) 目录三、运算符1. 算术运算符2. 关系运算符3. 逻辑运算符4. 位运算符5. 赋值运算符6. 其他运算符7. 运算符优先级 目录 Go 语言(Golang)是一种静态类型、编译型语言,由 Google 开发,专注…...
CLIP 源码分析:simple_tokenizer.py
tokenizer的含义 from .clip import *引入头文件时为什么有个. 正文 import gzip import html import os from functools import lru_cacheimport ftfy import regex as re# 上面的都是头文件# 这段代码定义了一个函数 default_bpe(),它使用了装饰器 lru_cache()。…...
AWS安全性身份和合规性之Shield
shield:盾(牌);(保护机器和操作者的)护罩,防护屏,挡板;屏障;保护物;(警察的)盾形徽章;保护人;掩护物;盾形纹徽;盾形奖牌; AWS Shield是一项AWS托管的DDoS(Distributed Denial of Service,分布式…...
Windows环境5步搞定OpenCore引导盘:Hackintosh安装终极指南
Windows环境5步搞定OpenCore引导盘:Hackintosh安装终极指南 【免费下载链接】OpenCore-Install-Guide Repo for the OpenCore Install Guide 项目地址: https://gitcode.com/gh_mirrors/op/OpenCore-Install-Guide 想要在普通PC上体验macOS的流畅与优雅吗&am…...
2026 Java面试真题库(基础+进阶+大厂场景题)
面试前期准备不充分其实就是对自己的不负责任,也是在浪费自己的时间,今天为大家整理了一份实战文档,让你系统性的弄懂架构师筑基内容:Linux 基础与进阶高性能 Netty 框架MySQL并发编程进阶JVM 性能调优Tomacat注意:以下…...
SAP 和 Legacy 系统之间的平面文件集成,GUI_DOWNLOAD 的实战设计
很多 SAP 项目里,系统集成并不总是从 API、RFC、OData 或 Event Mesh 开始。相当多的老系统仍然依赖一个最朴素的接口形态,固定格式的文本文件。财务共享平台要一份物料清单,仓储系统要一份当天新增物料,历史的生产执行系统只认 .txt 或 .csv,这时 ABAP 报表把 SAP 表里的…...
csp信奥赛C++高频考点专项训练之前缀和差分 --【二维前缀和】:领地选择
csp信奥赛C高频考点专项训练之前缀和&差分 --【二维前缀和】:领地选择 题目描述 作为在虚拟世界里统帅千军万马的领袖,小 Z 认为天时、地利、人和三者是缺一不可的,所以,谨慎地选择首都的位置对于小 Z 来说是非常重要的。 首…...
还在为图表制作烦恼?Mermaid Live Editor让你3分钟搞定专业图表
还在为图表制作烦恼?Mermaid Live Editor让你3分钟搞定专业图表 【免费下载链接】mermaid-live-editor Edit, preview and share mermaid charts/diagrams. New implementation of the live editor. 项目地址: https://gitcode.com/GitHub_Trending/me/mermaid-li…...
终极指南:如何在OBS Studio中免费使用VST插件实现专业级音频处理
终极指南:如何在OBS Studio中免费使用VST插件实现专业级音频处理 【免费下载链接】obs-vst Use VST plugins in OBS 项目地址: https://gitcode.com/gh_mirrors/ob/obs-vst 想要让直播声音瞬间达到专业水准?OBS-VST插件就是你的答案!这…...
抖音内容批量下载终极指南:免费保存视频、图集、音乐和直播回放
抖音内容批量下载终极指南:免费保存视频、图集、音乐和直播回放 【免费下载链接】douyin-downloader A practical Douyin downloader for both single-item and profile batch downloads, with progress display, retries, SQLite deduplication, and browser fallb…...
原神帧率解锁终极指南:简单三步突破60FPS限制
原神帧率解锁终极指南:简单三步突破60FPS限制 【免费下载链接】genshin-fps-unlock unlocks the 60 fps cap 项目地址: https://gitcode.com/gh_mirrors/ge/genshin-fps-unlock 原神帧率解锁工具是一款专门为《原神》PC玩家设计的开源工具,能够安…...
seaborn实践
本文章基于豆包整理了使用seaborn生成若干典型图表的示例代码,可供学习seaborn使用。一、图表结果预览二、测试数据生成生成了两组数据,一组是银行贷款存款数据,一组是学生成绩数据,生成数据代码如下:-- 1. 创建数据库…...
Delft3D建模、水动力模拟方法及地表水环境影响评价:岸线绘制与导入、非结构化计算网格生成、水下地形数据处理等前处理操作;水动力与污染物对流扩散模拟的参数设置、边界条件设定及模型率定验证
查看原文>>>https://mp.weixin.qq.com/s/_CiPDK_oXaAGxVfu2qk6ew 前言 本文以地表水数值模拟软件Delft3D 4.03.00操作为主要内容,强调地表水水动力建模、基础资料的获取、边界条件设定、模型率定和验证、数据分析和处理等关键环节。通过对案例模型的实操…...
