当前位置: 首页 > news >正文

HCIA项目实践(网络)---NAT地址转化技术

十三 NAT网络地址转换技术

13.1 什么是NAT

        NAT(Network Address Translation)地址转换技术,是一种将内部网络的私有 IP 地址转换为外部网络的公有 IP 地址的技术。其主要作用是实现多个内部网络设备通过一个公有 IP 地址访问外部网络,有效解决了 IPv4 地址空间不足的问题。在 NAT 转换过程中,路由器会在数据包从内部网络发往外部网络时,将源 IP 地址替换为公有 IP 地址,并记录转换关系;当外部网络回应数据包时,再根据记录将目标 IP 地址转换回内部私有 IP 地址,从而实现内外网络间的通信。

(实现公网地址和私网地址之间的转换)

13.2 NAT技术的原理

        当内部网络的数据包发往外部网络时,NAT 设备(如路由器)修改数据包的源 IP 地址,将私有 IP 替换为公网 IP,并记录映射关系;当外部响应数据包返回时,NAT 设备依据映射关系,把目的 IP 地址从公网 IP 还原为私有 IP,确保数据包准确送达内部设备。

13.3 IP地址的A,B,C,D,E分类

(1)A 类地址

  • 范围:0.0.0.0 到 127.255.255.255。第一位为 “0”,表示网络号,后面 24 位表示主机号。

  • 默认子网掩码:255.0.0.0。

  • 用途:适用于拥有大量主机的超大型网络,如国家级网络或大型跨国公司网络等。

(2)B 类地址

  • 范围:128.0.0.0 到 191.255.255.255。前两位为 “10”,网络号占 16 位,主机号占 16 位。

  • 默认子网掩码:255.255.0.0。

  • 用途:常用于中等规模的网络,如一些中型企业、学校或科研机构的网络。

(3)C 类地址

  • 范围:192.0.0.0 到 223.255.255.255。前三位为 “110”,网络号占 24 位,主机号占 8 位。

  • 默认子网掩码:255.255.255.0。

  • 用途:适用于小型网络,如小型企业、办公室或家庭网络等。

(4)D 类地址

  • 范围:224.0.0.0 到 239.255.255.255。前四位为 “1110”,是多播(组播)地址。

  • 特点:主要用于多播通信,即一台主机向一组主机发送数据,这些主机可以在不同的网络中,通过加入同一个多播组来接收数据。

  • 用途:常用于视频会议、在线直播、游戏等需要将数据同时发送给多个接收者的场景。

(5)E 类地址

  • 范围:240.0.0.0 到 255.255.255.255。前四位为 “1111”。

  • 特点:保留为实验和研究使用,一般不会在普通的网络环境中使用。

 # A,B,C--单播地址--既可以做源IP地址,也可以做目标IP地址# D--组播地址--仅能作为目标IP使用,不能作为源IP使用# E--保留地址# 单播:一对一  广播:一对所有  组播:一对多(同一个组播组)A:0XXX XXXX  (0.0.0.0-127.255.255.255) 大型网络:默认掩码255.0.0.0B:10XX XXXX  (128.0.0.0-191.255.255.255) 中型网络:默认掩码255.255.0.0C:110X XXXX  (192.0.0.0-223.255.255.255) 小型网络:默认掩码255.255.255.0D:1110 XXXX  (224.0.0.0-239.255.255.255)E:1111 XXXX  (240.0.0.0-255.255.255.255)

特殊IP地址

 #特殊IP地址(1)127.0.0.1-127.255.255.255 环回地址作用:用于本地主机进行网络软件测试以及本地进程间通信。发送到环回地址的数据不会真正发送到网络,而是直接返回给本地主机,可验证网络协议栈是否正常工作,便于诊断网络配置和软件问题。​(2)255.255.255.255  受限广播地址作用:用于向同一网段内的所有设备发送消息,可实现网络发现、设备查找及 DHCP 请求等功能,方便网络中的信息交互与配置。​(3)主机位全是1的地址  直接广播地址在 IPv4 中,它用于向特定网络中的所有主机发送数据包,如子网广播地址可实现子网内全体主机接收消息。作用:让网络中的一台设备向同一网段的所有其他设备快速发送相同信息,常用于网络发现、动态分配地址请求等场景,以提高网络通信效率。​(4)主机位全是0的地址  192.168.1.0===192.168.1.x --网段(网络号,网络地址)是网络地址,用于标识一个特定的网络,代表整个网段而不是某台具体主机,如 192.168.1.0 表示一个 C 类网络。作用:在网络路由和寻址中,帮助路由器等设备识别和区分不同的网络,以便正确地转发数据包,实现网络之间的通信和数据传输。​(5)0.0.0.0 它通常表示不确定的、无效的或未指定的网络地址,在网络配置中常作为默认路由或用于表示本机的所有网络接口。(可以代表没有地址,可以代表所有地址)作用:主要是在服务器启动时,绑定到 0.0.0.0 表示监听所有可用的网络接口,还可用于动态分配 IP 前的临时占位及作为默认路由目标,引导未匹配其他路由的流量。​(6)169.254.0.0/16  本地链路地址是自动专用 IP 寻址(APIPA)使用的地址范围,属于链路本地地址,用于在没有 DHCP 服务器时给主机自动分配 IP。作用:当主机无法从 DHCP 服务器获取动态 IP 时,可自动从该范围内获取 IP 实现本地网络通信,方便临时组网或应急网络连接。

注意:在IP地址空间中,A,B,C三类IP地址中各有一部分IP地址被称为私有地址(私网地址),其余的地址被称为公网地址(公有地址)

私网地址在A.B.C三类IP地址的范围:

地址类型范围
A类10.0.0.0–10.255.255.255
B类172.16.0.0–172.31.255.255
C类192.168.0.0–192.168.255.255

13.4 公网地址和私网地址

公网地址:是在互联网上具有全球唯一性的 IP 地址,由互联网相关机构统一分配。可在公共互联网上直接进行路由和寻址,能使设备与全球范围内的其他网络设备进行通信,是互联网中设备实现跨网络数据交互的正式标识,如网站服务器、企业网关等对外服务的设备通常使用公网地址。

私网地址:私有 IP 地址,是为满足内部网络通信需求而专门预留的特定地址段,如 10.0.0.0/8、172.16.0.0/12、192.168.0.0/16 等。私网地址不能在公网直接路由,仅用于局域网内设备的标识与通信,通过网络地址转换(NAT)技术可实现与公网的间接通信,以节省公网地址资源并提高网络安全性。

相关文章:

HCIA项目实践(网络)---NAT地址转化技术

十三 NAT网络地址转换技术 13.1 什么是NAT NAT(Network Address Translation)地址转换技术,是一种将内部网络的私有 IP 地址转换为外部网络的公有 IP 地址的技术。其主要作用是实现多个内部网络设备通过一个公有 IP 地址访问外部网络&#x…...

VS studio报错cmake version 3.29.5-msvc4,但是没有其他信息问题解决

背景: windows电脑用VS studio 2022打开一个cmake项目,编译cmake通过,但是没有产生exe文件,IDE也没有打印其他错误信息提示,只有下图: cmake version 3.29.5-msvc4 一开始以为是编译器等问题,…...

免费deepseek的API获取教程及将API接入word或WPS中

免费deepseek的API获取教程: 1 https://cloud.siliconflow.cn/中注册时填写邀请码:GAejkK6X即可获取2000 万 Tokens; 2 按照图中步骤进行操作 将API接入word或WPS中 1 打开一个word,文件-选项-自定义功能区-勾选开发工具-左侧的信任中心-信任中心设置…...

langchain学习笔记之小样本提示词Few-shot Prompt Template

langchain学习笔记之小样本提示词 引言 Few-shot Prompt Templates \text{Few-shot Prompt Templates} Few-shot Prompt Templates简单介绍示例集创建创建 ExamplePrompt \text{ExamplePrompt} ExamplePrompt与 ExampleSelector \text{ExampleSelector} ExampleSelector创建 Fe…...

【CS.SE】优化 Redis 商户号池分配设计:高并发与内存管理

优化 Redis 商户号池分配设计:高并发与内存管理 背景 在分布式交易系统中,商户号池管理是核心模块之一。传统的商户号生成方式,依赖数据库预分配号段,导致大量号段浪费,并且在高并发请求下,性能难以满足需…...

5、《Spring Boot自动配置黑魔法:原理深度剖析》

Spring Boot自动配置黑魔法:原理深度剖析 一、引言:为什么Spring Boot能“开箱即用”? Spring Boot的核心理念是**“约定优于配置”,开发者只需引入一个spring-boot-starter-web依赖,就能直接编写RESTful API&#xf…...

稀土抑烟剂——为纺织品安全加持,保护您的每一寸触感

一、稀土抑烟剂的基本概念 稀土抑烟剂是基于稀土元素(如稀土氧化物和稀土金属化合物)研发的一类新型阻燃材料。它能够有效提高纺织品的阻燃性,抑制火灾发生时产生的烟雾和有害气体,减少火灾对人体的危害。稀土抑烟剂具有更强的稳…...

如何使用CSS画一个三角形,原理是什么?

如何用 CSS 画一个三角形?原理和实战指南 一、核心原理 CSS 画三角形的本质是利用边框(border)的叠加特性。当一个元素的宽高为 0 时,其边框会以对角线形式相交,形成四个独立的三角形区域。通过控制某一边的边框颜色为…...

Docker拉不下来镜像问题解决法案

打开docker的设置界面 配置如下: vi /etc/docker/daemon.json {"builder": {"gc": {"defaultKeepStorage": "20GB","enabled": true}},"experimental": false,"registry-mirrors": ["…...

DeepSeek 多模态大模型Janus-Pro本地部署教程

1.部署环境配置 我个人用的是Mac的m1pro 16512配置,我跑了1B的版本很流畅,7B的也可以跑起来,稍微感觉有一些卡顿。 需要安装Git-lfs,访问官网下载安装包安装,这个工具是用于下载大型文件必备的软件,这里用…...

笔记8——模式匹配 match语句(仅在Python 3.10及以上版本中可用)

文章目录 模式匹配 match语句(仅在 Python 3.10及以上版本 中可用)基本语法基本匹配操作应用场景 模式匹配 match语句(仅在 Python 3.10及以上版本 中可用) Python 3.10 及以上版本中才引入了 match 语句用于简化复杂的条件判断和数据解构;类似于其他语言中的 swit…...

maven-antrun-plugin插件的用法

maven-antrun-plugin 是 Maven 中一个非常强大的插件,它允许你在 Maven 构建过程中运行 Apache Ant 任务。通过这个插件,你可以在 Maven 构建的各个阶段(如 compile、package 等)中执行自定义的 Ant 任务,比如复制文件…...

iOS主要知识点梳理回顾-4-运行时类和实例的操作

类和实例的操作 iOS 运行时(Objective-C Runtime)提供了丰富的 API 来对类进行动态操作,包括创建类、修改类的结构、添加方法、替换方法等。这对于实现动态特性、AOP(面向切面编程)、方法拦截等功能非常重要。以下举例…...

vue2和vue3生命周期的区别通俗易懂

用最直白的对比帮你理解 Vue2 和 Vue3 生命周期的区别,就像对比手机系统的升级: 一、生命周期阶段对比表(老手机 vs 新手机) 阶段Vue2(老系统)Vue3(新系统)变化说明初始化beforeCre…...

使用 meshgrid函数绘制网格点坐标的原理与代码实现

使用 meshgrid 绘制网格点坐标的原理与代码实现 在 MATLAB 中,meshgrid 是一个常用函数,用于生成二维平面网格点的坐标矩阵。本文将详细介绍如何利用 meshgrid 函数生成的矩阵绘制网格点的坐标,并给出具体的代码实现和原理解析。 实现思路 …...

postgresql源码学习(59)—— 磁盘管理器 SMGR

一、 定义及作用 PostgreSQL 的磁盘管理器(Storage Manager,简称 SMGR)是数据库系统中负责管理底层存储的核心模块。磁盘管理器并非直接操作磁盘上的文件,而是通过VFD(虚拟文件描述符,将在后续学习&#xf…...

Spring Boot(8)深入理解 @Autowired 注解:使用场景与实战示例

搞个引言 在 Spring 框架的开发中,依赖注入(Dependency Injection,简称 DI)是它的一个核心特性,它能够让代码更加模块化、可测试,并且易于维护。而 Autowired 注解作为 Spring 实现依赖注入的关键工具&…...

UE_C++ —— Structs

目录 一,实现一个UStruct 二,Struct Specifiers 三,最佳做法与技巧 结构体(Struct)是一种帮助组织和操作相关属性的数据结构;在引擎中,结构体会被引擎反射系统识别为 UStruct,但不…...

ArcGISPro 新建shp+数据结构

import arcpy# 设置工作空间和 Shapefile 存放路径 shp_path r"C:\path\to\your\folder\PolygonZY.shp" # Shapefile 存放路径 fields [("CHBH", "TEXT", 20),("ZCMC", "TEXT", 100),("ZCLX", "TEXT"…...

DeepSeek教unity------MessagePack-06

无类型 Typeless 无类型的 API 类似于 BinaryFormatter&#xff0c;因为它会将类型信息嵌入到数据块中&#xff0c;所以在调用 API 时不需要显式指定类型。 MessagePackSerializer.Typeless 是 Serialize/Deserialize<object>(TypelessContractlessStandardResolver.In…...

idea大量爆红问题解决

问题描述 在学习和工作中&#xff0c;idea是程序员不可缺少的一个工具&#xff0c;但是突然在有些时候就会出现大量爆红的问题&#xff0c;发现无法跳转&#xff0c;无论是关机重启或者是替换root都无法解决 就是如上所展示的问题&#xff0c;但是程序依然可以启动。 问题解决…...

3.3.1_1 检错编码(奇偶校验码)

从这节课开始&#xff0c;我们会探讨数据链路层的差错控制功能&#xff0c;差错控制功能的主要目标是要发现并且解决一个帧内部的位错误&#xff0c;我们需要使用特殊的编码技术去发现帧内部的位错误&#xff0c;当我们发现位错误之后&#xff0c;通常来说有两种解决方案。第一…...

2024年赣州旅游投资集团社会招聘笔试真

2024年赣州旅游投资集团社会招聘笔试真 题 ( 满 分 1 0 0 分 时 间 1 2 0 分 钟 ) 一、单选题(每题只有一个正确答案,答错、不答或多答均不得分) 1.纪要的特点不包括()。 A.概括重点 B.指导传达 C. 客观纪实 D.有言必录 【答案】: D 2.1864年,()预言了电磁波的存在,并指出…...

【Go】3、Go语言进阶与依赖管理

前言 本系列文章参考自稀土掘金上的 【字节内部课】公开课&#xff0c;做自我学习总结整理。 Go语言并发编程 Go语言原生支持并发编程&#xff0c;它的核心机制是 Goroutine 协程、Channel 通道&#xff0c;并基于CSP&#xff08;Communicating Sequential Processes&#xff0…...

2025 后端自学UNIAPP【项目实战:旅游项目】6、我的收藏页面

代码框架视图 1、先添加一个获取收藏景点的列表请求 【在文件my_api.js文件中添加】 // 引入公共的请求封装 import http from ./my_http.js// 登录接口&#xff08;适配服务端返回 Token&#xff09; export const login async (code, avatar) > {const res await http…...

laravel8+vue3.0+element-plus搭建方法

创建 laravel8 项目 composer create-project --prefer-dist laravel/laravel laravel8 8.* 安装 laravel/ui composer require laravel/ui 修改 package.json 文件 "devDependencies": {"vue/compiler-sfc": "^3.0.7","axios": …...

springboot整合VUE之在线教育管理系统简介

可以学习到的技能 学会常用技术栈的使用 独立开发项目 学会前端的开发流程 学会后端的开发流程 学会数据库的设计 学会前后端接口调用方式 学会多模块之间的关联 学会数据的处理 适用人群 在校学生&#xff0c;小白用户&#xff0c;想学习知识的 有点基础&#xff0c;想要通过项…...

Netty从入门到进阶(二)

二、Netty入门 1. 概述 1.1 Netty是什么 Netty is an asynchronous event-driven network application framework for rapid development of maintainable high performance protocol servers & clients. Netty是一个异步的、基于事件驱动的网络应用框架&#xff0c;用于…...

mac 安装homebrew (nvm 及git)

mac 安装nvm 及git 万恶之源 mac 安装这些东西离不开Xcode。及homebrew 一、先说安装git步骤 通用&#xff1a; 方法一&#xff1a;使用 Homebrew 安装 Git&#xff08;推荐&#xff09; 步骤如下&#xff1a;打开终端&#xff08;Terminal.app&#xff09; 1.安装 Homebrew…...

【网络安全】开源系统getshell漏洞挖掘

审计过程&#xff1a; 在入口文件admin/index.php中&#xff1a; 用户可以通过m,c,a等参数控制加载的文件和方法&#xff0c;在app/system/entrance.php中存在重点代码&#xff1a; 当M_TYPE system并且M_MODULE include时&#xff0c;会设置常量PATH_OWN_FILE为PATH_APP.M_T…...