IPV4和IPV6,公网IP和私有IP有什么区别?
文章目录
- 1、什么是IP地址?
- 1.1、背景
- 1.2、交换机
- 1.3、局域网
- 1.4、广域网
- 1.5、ISP 互联网服务提供商
- 2、IPV4
- 2.1、什么是IPV4?
- 2.2、IPV4的组成
- 2.3、NAT 网络地址转换
- 2.4、端口映射
- 3、公网IP和私有IP
- 4、IPV6
1、什么是IP地址?
1.1、背景
一台电脑数据可以直接存储在自己电脑的硬盘上,如果使用两台电脑可以使用网线连接,达到实时传输数据的目的,但是当需要使用多台电脑协同工作来提高效率,这时很明显网线的数量是完全不够的,因此交换机
应运而生。
1.2、交换机
定义:交换机(Switch)意为“开关”是一种用于电(光)信号转发的网络设备。它可以为接入交换机的任意两个网络节点提供独享的电信号通路。最常见的交换机是以太网交换机。其他常见的还有电话语音交换机、光纤交换机等。
网络交换机,是一个扩大网络的器材,能为子网络中提供更多的连接端口,以便连接更多的计算机。
以上来自 交换机百度百科
交换机(Switch)的出现使得电脑不再是点对点
的连接,而是由每台电脑接入交换机,由交换机来分发给不同的设备。
点对点连接
:要传数据给哪台电脑,直接走相对应的接口传输即可,数据一定会传输到目标主机上。
当电脑都接入交换机,那电脑传到交换机的数据交换机不知道要将数据发送给哪台电脑?就像是没有写清楚具体地址的邮件包裹,因此数字虚拟地址(IP地址)
出现。
电脑在发送数据到交换机的时候带上要发送到目标主机的IP地址,那么交换机就知道要怎么发送。
1.3、局域网
当一堆电脑 + 一台交换机就组成了一个小的可以交互的网络,称为局域网
。
当加入新的局域网。两个局域网要相互通信,那就需要两个局域网的交换机进行点对点连接
。
再继续发展,当一堆交换机需要连接的时候,交换机之间进行点对点连接的数量显然是非常庞大的,同样会出现接口和线缆过多的情况,那么交换机之间会连接新的交换机。
1.4、广域网
再发展,局域网设备越来越多,用户越来越多,最终几乎全球的用户都参与了到这个庞大的网络中,最终形成一个超级庞大的网络,就是广域网
。
1.5、ISP 互联网服务提供商
广域网就是一个设备数量超级庞大的局域网。这样做也不容易,需要在各种重要的城市建设骨干服务器,还要在不同的区域布置分支服务器,并将线路布置到各个角落让我们去接入,需要大量的资金成本和后期维护,而做这些事情的就是 ISP 互联网服务提供商
,也就是移动、联通和电信。这些都需要高成本,所以宽带都需要限速和计费。
2、IPV4
2.1、什么是IPV4?
网际协议版本4(英语:Internet Protocol version 4,IPv4),又称互联网通信协议第四版,是网际协议开发过程中的第四个修订版本,也是此协议第一个被广泛部署的版本。
2.2、IPV4的组成
IPv4使用32位二进制(4字节)地址
,因此地址空间中只有约42亿个地址
。不过,一些地址是为特殊用途所保留的,如专用网络
(约1800万个地址)和多播地址
(约2.7亿个地址),这减少了可在互联网上路由的地址数量。随着地址不断被分配给最终用户,IPv4地址枯竭问题也在随之产生。基于分类网络、无类别域间路由和NAT(Network Address Translator, 网络地址转换)的地址结构重构显著地减少了地址枯竭的速度。但在2011年2月3日,在最后5个地址块被分配给5个区域互联网注册管理机构之后,IANA的主要地址池已经用尽。
以上来自 IPV4百度百科
但是不是所有的地址我们都能使用,详细看下图。
2.3、NAT 网络地址转换
2011年底,IPV4就已经枯竭了
2020年,亚太互联网信息中新发布出来一个新的地址,NAT,网络地址转换。
具体流程是:有5台电脑,ip分别是:192.168.0.1、192.168.0.2、192.168.0.3、192.168.0.4、192.168.0.5,路由器是接入广域网并执行NAT的,所以路由器就是网关,IP为6.6.6.6,当电脑A要访问广域网上一个IP为8.8.8.8的设备,则数据包从电脑A出来后,到达IP为6.6.6.6的网关,网关发现这个数据包是发往8.8.8.8的,就会将192.168.0.1发送来的数据包的IP映射成6.6.6.6,并记录好映射表,以6.6.6.6的IP把这个数据包发送给8.8.8.8。
这样,5台电脑发送的数据包都分别通过NAT把原有的IP转换成6.6.6.6,以6.6.6.6的IP把这个数据包发送给8.8.8.8。实现5台设备共用一个IP的效果。
2.4、端口映射
上面的情况会存在一个问题,当数据从8.8.8.8传到6.6.6.6的时候不知道要发送到下面哪个主机?这就引入了端口映射
port mapping。
IP地址:端口号
如:6.6.6.6:1000
即在IP地址后面增加一串端口号
,网关会以不同的端口去和外网交互,然后把这些端口映射给局域网内的各个设备。传输数据的时候,除了IP地址的映射外,再额外加上端口号的映射,这样就可以实现共同一个IP还能精准传送数据了,以实现PAT多对一映射。
最后,在NAT和端口映射的技术加持下,才让IPv4苟延残喘的坚持了很多年。
3、公网IP和私有IP
下图中6.6.6.6就是
公网IP
,因为它可以直接用来在广域网上交互数据
。
寄宿在6.6.6.6网关下面的192.168.0.1、192.168.0.2、192.168.0.3、192.168.0.4、192.168.0.5,就是
私有IP
公网IP可以向运营商申请,这样接入家里的光猫的IP就会变成不需要任何映射和转换,可以直接访问的地址了。
4、IPV6
由于IPV4的弊端(不够用),IPV6出现。
IPv6是英文“Internet Protocol Version 6”(互联网协议第6版)的缩写,是互联网工程任务组(IETF)设计的用于替代IPv4的下一代IP协议,其地址数量号称可以为全世界的每一粒沙子编上一个地址。
以上来自 IPV6百度百科
IPV6由8组四位十六进制数组合而成。理论是可以提供约3.4*10^38个IP地址。
目前IPV6不能直接和IPV4互通,必须借助其他的设备去做转换和映射。
IPV4终究有一天要埋没到历史的长河里~
学习资源来自 硬件茶谈
相关文章:

IPV4和IPV6,公网IP和私有IP有什么区别?
文章目录 1、什么是IP地址?1.1、背景1.2、交换机1.3、局域网1.4、广域网1.5、ISP 互联网服务提供商 2、IPV42.1、什么是IPV4?2.2、IPV4的组成2.3、NAT 网络地址转换2.4、端口映射 3、公网IP和私有IP4、IPV6 1、什么是IP地址? 1.1、背景 一台…...

高云FPGA系列教程(7):ARM GPIO外部中断
文章目录 [toc]GPIO中断简介FPGA配置常用函数MCU程序设计工程下载 本文是高云FPGA系列教程的第7篇文章。 本篇文章介绍片上ARM Cortex-M3硬核处理器GPIO外部的使用,演示按键中断方式来控制LED亮灭,基于TangNano 4K开发板。 参考文档:Gowin_E…...

Python爬虫:动态获取页面
动态网站根据用户的某些操作产生一些结果。例如,当网页仅在向下滚动或将鼠标移动到屏幕上时才完全加载时,这背后一定有一些动态编程。当您将鼠标指针悬停在某些文本上时,它会为您提供一些选项,它还包含一些动态.这是是一篇关于动态…...
大数据平台迁移后yarn连接zookeeper 异常分析
大数据平台迁移后yarn连接zookeeper 异常分析 XX保险HDP大数据平台机房迁移异常分析。 异常现象: 机房迁移后大部分组件都能正常启动Yarn 启动后8088 8042等端口无法访问Hive spark 作业提交到yarn会出现卡死。 【备注】虽然迁移,但IP不变。 1. Yarn连…...
Ubuntu Nginx 配置 SSL 证书
首先需要在 Ubuntu 中安装 Nginx 服务, 打开终端执行以下命令: $ sudo apt update $ sudo apt install nginx -y然后启动 Nginx 服务并设置为开机时自动启动, 执行以下命令: $ sudo systemctl start nginx $ sudo systemctl enable nginx最后再验证一下 Nginx 服务的当前状态…...

将本地前端工程中的npm依赖上传到Nexus
【问题背景】 用Nexus搭建了内网的依赖仓库,需要将前端工程中node_modules中的依赖上传到Nexus上,但是node_modules中的依赖已经是解压后的状态,如果直接机械地将其简单地打包上传到Nexus,那么无法通过npm install下载使用。故有…...

软考高级架构师下篇-16通信系统架构设计理论与实践
目录 1. 引言2. 通信系统网络架构3. 网络构建关键技术4. 网络构建5. 前文回顾1. 引言 此章节主要学习通信系统架构设计的理论和工作中的实践。根据新版考试大纲,本节知识点会涉及案例分析题(25分),而在历年考试中,案例题对该部分内容的考查并不多,虽在综合知识选择题目中…...

国庆中秋特辑(二)浪漫祝福方式 使用生成对抗网络(GAN)生成具有节日氛围的画作
要用人工智能技术来庆祝国庆中秋,我们可以使用生成对抗网络(GAN)生成具有节日氛围的画作。这里将使用深度学习框架 TensorFlow 和 Keras 来实现。 一、生成对抗网络(GAN) 生成对抗网络(GANs,…...
stm32 串口发送和接收
串口发送 #include "stm32f10x.h" // Device header #include <stdio.h> #include <stdarg.h>//初始化串口 void Serial_Init() {//开启时钟RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART1,ENABLE);RCC_APB2PeriphClockCmd(RCC_APB2Pe…...
Vite + Vue3 实现前端项目工程化
通过官方脚手架初始化项目 第一种方式,这是使用vite命令创建,这种方式除了可以创建vue项目,还可以创建其他类型的项目,比如react项目 npm init vitelatest 第二种方式,这种方式是vite专门为vue做的配置,…...
Java动态代理Aop的好处
1. 预备知识-动态代理 1.1 什么是动态代理 动态代理利用Java的反射技术(Java Reflection)生成字节码,在运行时创建一个实现某些给定接口的新类(也称"动态代理类")及其实例。 1.2 动态代理的优势 动态代理的优势是实现无侵入式的代…...

各种存储性能瓶颈如何分析与优化?
【摘要】本文结合实践剖析存储系统的架构及运行原理,深入分析各种存储性能瓶颈场景,并提出相应的性能优化手段,希望对同行有一定的借鉴和参考价值。 【作者】陈萍春,现就职于保险行业,拥有多年的系统、存储以及数据备…...

Android StateFlow初探
Android StateFlow初探 前言: 最近在学习StateFlow,感觉很好用,也很神奇,于是记录了一下. 1.简介: StateFlow 是一个状态容器式可观察数据流,可以向其收集器发出当前状态更新和新状态更新。还可通过其 …...

Docker Compose初使用
简介 Docker-Compose项目是Docker官方的开源项目,负责实现对Docker容器集群的快速编排。 Docker-Compose将所管理的容器分为三层,分别是 工程(project),服务(service)以及容器(cont…...

测试与FastAPI应用数据之间的差异
【squids.cn】 全网zui低价RDS,免费的迁移工具DBMotion、数据库备份工具DBTwin、SQL开发工具等 当使用两个不同的异步会话来测试FastAPI应用程序与数据库的连接时,可能会出现以下错误: 在测试中,在数据库中创建了一个对象&#x…...

WebStorm 2023年下载、安装教程、亲测有效
文章目录 简介安装步骤常用快捷键 简介 WebStorm 是JetBrains公司旗下一款JavaScript 开发工具。已经被广大中国JS开发者誉为“Web前端开发神器”、“最强大的HTML5编辑器”、“最智能的JavaScript IDE”等。与IntelliJ IDEA同源,继承了IntelliJ IDEA强大的JS部分的…...
k8s储存卷
卷的类型 In-Tree存储卷插件 ◼ 临时存储卷 ◆emptyDir ◼ 节点本地存储卷 ◆hostPath, local ◼ 网络存储卷 ◆文件系统:NFS、GlusterFS、CephFS和Cinder ◆块设备:iSCSI、FC、RBD和vSphereVolume ◆存储平台:Quobyte、PortworxVolume、Sto…...

【解决Win】“ 无法打开某exe提示无法成功完成操作,因为文件包含病毒或潜在的垃圾软件“
在下载某个应用程序,打开时出现了“无法成功完成操作因为文件包含病毒或潜在垃圾”的提示,遇到这个情况怎么解决? 下面为大家分享故障原因及具体的处理方法。 故障原因 是由于杀毒 防护等原因引起的。 解决方案 打开Windows 安全中心 选择…...

SpringBoot调用ChatGPT-API实现智能对话
目录 一、说明 二、代码 2.1、对话测试 2.2、单次对话 2.3、连续对话 2.4、AI绘画 一、说明 我们在登录chatgpt官网进行对话是不收费的,但需要魔法。在调用官网的API时,在代码层面上使用,通过API KEY进行对话是收费的,不过刚…...

element-table出现错位解决方法
先看示例图,这个在开发中还是很常遇到的,在table切换不同数据时或者切换页面时,容易出现: 解决方法很简单,官方有提供方法: 我们可以在重新渲染数据后: this.$nextTick(() > {this.$refs.…...
【Linux】C语言执行shell指令
在C语言中执行Shell指令 在C语言中,有几种方法可以执行Shell指令: 1. 使用system()函数 这是最简单的方法,包含在stdlib.h头文件中: #include <stdlib.h>int main() {system("ls -l"); // 执行ls -l命令retu…...
连锁超市冷库节能解决方案:如何实现超市降本增效
在连锁超市冷库运营中,高能耗、设备损耗快、人工管理低效等问题长期困扰企业。御控冷库节能解决方案通过智能控制化霜、按需化霜、实时监控、故障诊断、自动预警、远程控制开关六大核心技术,实现年省电费15%-60%,且不改动原有装备、安装快捷、…...
c++ 面试题(1)-----深度优先搜索(DFS)实现
操作系统:ubuntu22.04 IDE:Visual Studio Code 编程语言:C11 题目描述 地上有一个 m 行 n 列的方格,从坐标 [0,0] 起始。一个机器人可以从某一格移动到上下左右四个格子,但不能进入行坐标和列坐标的数位之和大于 k 的格子。 例…...

对WWDC 2025 Keynote 内容的预测
借助我们以往对苹果公司发展路径的深入研究经验,以及大语言模型的分析能力,我们系统梳理了多年来苹果 WWDC 主题演讲的规律。在 WWDC 2025 即将揭幕之际,我们让 ChatGPT 对今年的 Keynote 内容进行了一个初步预测,聊作存档。等到明…...
【RockeMQ】第2节|RocketMQ快速实战以及核⼼概念详解(二)
升级Dledger高可用集群 一、主从架构的不足与Dledger的定位 主从架构缺陷 数据备份依赖Slave节点,但无自动故障转移能力,Master宕机后需人工切换,期间消息可能无法读取。Slave仅存储数据,无法主动升级为Master响应请求ÿ…...
工业自动化时代的精准装配革新:迁移科技3D视觉系统如何重塑机器人定位装配
AI3D视觉的工业赋能者 迁移科技成立于2017年,作为行业领先的3D工业相机及视觉系统供应商,累计完成数亿元融资。其核心技术覆盖硬件设计、算法优化及软件集成,通过稳定、易用、高回报的AI3D视觉系统,为汽车、新能源、金属制造等行…...

c#开发AI模型对话
AI模型 前面已经介绍了一般AI模型本地部署,直接调用现成的模型数据。这里主要讲述讲接口集成到我们自己的程序中使用方式。 微软提供了ML.NET来开发和使用AI模型,但是目前国内可能使用不多,至少实践例子很少看见。开发训练模型就不介绍了&am…...
CMake控制VS2022项目文件分组
我们可以通过 CMake 控制源文件的组织结构,使它们在 VS 解决方案资源管理器中以“组”(Filter)的形式进行分类展示。 🎯 目标 通过 CMake 脚本将 .cpp、.h 等源文件分组显示在 Visual Studio 2022 的解决方案资源管理器中。 ✅ 支持的方法汇总(共4种) 方法描述是否推荐…...

Docker 本地安装 mysql 数据库
Docker: Accelerated Container Application Development 下载对应操作系统版本的 docker ;并安装。 基础操作不再赘述。 打开 macOS 终端,开始 docker 安装mysql之旅 第一步 docker search mysql 》〉docker search mysql NAME DE…...
机器学习的数学基础:线性模型
线性模型 线性模型的基本形式为: f ( x ) ω T x b f\left(\boldsymbol{x}\right)\boldsymbol{\omega}^\text{T}\boldsymbol{x}b f(x)ωTxb 回归问题 利用最小二乘法,得到 ω \boldsymbol{\omega} ω和 b b b的参数估计$ \boldsymbol{\hat{\omega}}…...