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,分布式…...
国防科技大学计算机基础课程笔记02信息编码
1.机内码和国标码 国标码就是我们非常熟悉的这个GB2312,但是因为都是16进制,因此这个了16进制的数据既可以翻译成为这个机器码,也可以翻译成为这个国标码,所以这个时候很容易会出现这个歧义的情况; 因此,我们的这个国…...
谷歌浏览器插件
项目中有时候会用到插件 sync-cookie-extension1.0.0:开发环境同步测试 cookie 至 localhost,便于本地请求服务携带 cookie 参考地址:https://juejin.cn/post/7139354571712757767 里面有源码下载下来,加在到扩展即可使用FeHelp…...
[2025CVPR]DeepVideo-R1:基于难度感知回归GRPO的视频强化微调框架详解
突破视频大语言模型推理瓶颈,在多个视频基准上实现SOTA性能 一、核心问题与创新亮点 1.1 GRPO在视频任务中的两大挑战 安全措施依赖问题 GRPO使用min和clip函数限制策略更新幅度,导致: 梯度抑制:当新旧策略差异过大时梯度消失收敛困难:策略无法充分优化# 传统GRPO的梯…...
树莓派超全系列教程文档--(61)树莓派摄像头高级使用方法
树莓派摄像头高级使用方法 配置通过调谐文件来调整相机行为 使用多个摄像头安装 libcam 和 rpicam-apps依赖关系开发包 文章来源: http://raspberry.dns8844.cn/documentation 原文网址 配置 大多数用例自动工作,无需更改相机配置。但是,一…...
微软PowerBI考试 PL300-选择 Power BI 模型框架【附练习数据】
微软PowerBI考试 PL300-选择 Power BI 模型框架 20 多年来,Microsoft 持续对企业商业智能 (BI) 进行大量投资。 Azure Analysis Services (AAS) 和 SQL Server Analysis Services (SSAS) 基于无数企业使用的成熟的 BI 数据建模技术。 同样的技术也是 Power BI 数据…...
postgresql|数据库|只读用户的创建和删除(备忘)
CREATE USER read_only WITH PASSWORD 密码 -- 连接到xxx数据库 \c xxx -- 授予对xxx数据库的只读权限 GRANT CONNECT ON DATABASE xxx TO read_only; GRANT USAGE ON SCHEMA public TO read_only; GRANT SELECT ON ALL TABLES IN SCHEMA public TO read_only; GRANT EXECUTE O…...
【Java_EE】Spring MVC
目录 Spring Web MVC 编辑注解 RestController RequestMapping RequestParam RequestParam RequestBody PathVariable RequestPart 参数传递 注意事项 编辑参数重命名 RequestParam 编辑编辑传递集合 RequestParam 传递JSON数据 编辑RequestBody …...
鸿蒙DevEco Studio HarmonyOS 5跑酷小游戏实现指南
1. 项目概述 本跑酷小游戏基于鸿蒙HarmonyOS 5开发,使用DevEco Studio作为开发工具,采用Java语言实现,包含角色控制、障碍物生成和分数计算系统。 2. 项目结构 /src/main/java/com/example/runner/├── MainAbilitySlice.java // 主界…...
大语言模型(LLM)中的KV缓存压缩与动态稀疏注意力机制设计
随着大语言模型(LLM)参数规模的增长,推理阶段的内存占用和计算复杂度成为核心挑战。传统注意力机制的计算复杂度随序列长度呈二次方增长,而KV缓存的内存消耗可能高达数十GB(例如Llama2-7B处理100K token时需50GB内存&a…...
docker 部署发现spring.profiles.active 问题
报错: org.springframework.boot.context.config.InvalidConfigDataPropertyException: Property spring.profiles.active imported from location class path resource [application-test.yml] is invalid in a profile specific resource [origin: class path re…...
