IPV4和IPV6,公网IP和私有IP有什么区别?

news2024/12/24 2:48:15

文章目录

  • 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、背景

一台电脑数据可以直接存储在自己电脑的硬盘上,如果使用两台电脑可以使用网线连接,达到实时传输数据的目的,但是当需要使用多台电脑协同工作来提高效率,这时很明显网线的数量是完全不够的,因此交换机应运而生。

image.png

1.2、交换机

定义:交换机(Switch)意为“开关”是一种用于电(光)信号转发的网络设备。它可以为接入交换机的任意两个网络节点提供独享的电信号通路。最常见的交换机是以太网交换机。其他常见的还有电话语音交换机、光纤交换机等。

网络交换机,是一个扩大网络的器材,能为子网络中提供更多的连接端口,以便连接更多的计算机。
以上来自 交换机百度百科

交换机(Switch)的出现使得电脑不再是点对点的连接,而是由每台电脑接入交换机,由交换机来分发给不同的设备。
image.png

点对点连接:要传数据给哪台电脑,直接走相对应的接口传输即可,数据一定会传输到目标主机上。

当电脑都接入交换机,那电脑传到交换机的数据交换机不知道要将数据发送给哪台电脑?就像是没有写清楚具体地址的邮件包裹,因此数字虚拟地址(IP地址)出现。
image.png
电脑在发送数据到交换机的时候带上要发送到目标主机的IP地址,那么交换机就知道要怎么发送。

1.3、局域网

当一堆电脑 + 一台交换机就组成了一个小的可以交互的网络,称为局域网

image.png

当加入新的局域网。两个局域网要相互通信,那就需要两个局域网的交换机进行点对点连接
image.png
再继续发展,当一堆交换机需要连接的时候,交换机之间进行点对点连接的数量显然是非常庞大的,同样会出现接口和线缆过多的情况,那么交换机之间会连接新的交换机。
image.png

1.4、广域网

再发展,局域网设备越来越多,用户越来越多,最终几乎全球的用户都参与了到这个庞大的网络中,最终形成一个超级庞大的网络,就是广域网
image.png

1.5、ISP 互联网服务提供商

广域网就是一个设备数量超级庞大的局域网。这样做也不容易,需要在各种重要的城市建设骨干服务器,还要在不同的区域布置分支服务器,并将线路布置到各个角落让我们去接入,需要大量的资金成本和后期维护,而做这些事情的就是 ISP 互联网服务提供商,也就是移动、联通和电信。这些都需要高成本,所以宽带都需要限速和计费。
image.png

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百度百科

QQ图片20230919113644.png
但是不是所有的地址我们都能使用,详细看下图。
image.png

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的效果。

image.png

2.4、端口映射

上面的情况会存在一个问题,当数据从8.8.8.8传到6.6.6.6的时候不知道要发送到下面哪个主机?这就引入了端口映射 port mapping。

IP地址:端口号
如:6.6.6.6:1000

在IP地址后面增加一串端口号,网关会以不同的端口去和外网交互,然后把这些端口映射给局域网内的各个设备。传输数据的时候,除了IP地址的映射外,再额外加上端口号的映射,这样就可以实现共同一个IP还能精准传送数据了,以实现PAT多对一映射。
image.png
最后,在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

image.png

公网IP可以向运营商申请,这样接入家里的光猫的IP就会变成不需要任何映射和转换,可以直接访问的地址了。
image.png

4、IPV6

由于IPV4的弊端(不够用),IPV6出现。

IPv6是英文“Internet Protocol Version 6”(互联网协议第6版)的缩写,是互联网工程任务组(IETF)设计的用于替代IPv4的下一代IP协议,其地址数量号称可以为全世界的每一粒沙子编上一个地址。
以上来自 IPV6百度百科

IPV6由8组四位十六进制数组合而成。理论是可以提供约3.4*10^38个IP地址。
image.png

目前IPV6不能直接和IPV4互通,必须借助其他的设备去做转换和映射。

IPV4终究有一天要埋没到历史的长河里~
学习资源来自 硬件茶谈

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1022097.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

接口调用三种方式

创建服务端 一个controller,一个启动类,配置端口 controller import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController;RestController public class ServerController {Req…

uniapp开发h5 遇到一个刻度尺的需求 实现记录

先上最终实现图 实现这个功能使用的是github上找的一个库 叫slide-ruler 地址 实现思路: 第一步:在终端npm 下载这个依赖 第二步:新建一个刻度尺自定义组件,如果不是自定义组件会不生效,并且这个自定义组件里面放一…

用无代码搭建数据中台,竟做到如此丝滑

文章目录 需求背景系统介绍配置说明1 菜单导航2 系统自带组件导入页面(1)数据集成相关组件(2)数据服务相关组件 3 由系统组件路径添加页面(1)数据资产管理(2)数据标准管理&#xff0…

Hutool工具包:http客户端工具(使用教程)

目录 一、Hutool介绍 二、笔者的话 三、引入依赖 四、大致步骤 五、GET请求 5.1 代码 5.2 结果展示 六、POST请求 6.1 代码一(Form Data类型参数) 6.2 结果展示 6.3 代码二(Form Data类型参数 - 含上传文件) 6.4 结果…

idea设置项目启动的JVM运行内存大小

idea设置项目启动的JVM运行内存大小 场景 在开发当中,idea默认服务启动要占用1G内存。其实每个项目本地开发和调试的时候,根本不需要1G内存,200M左右足以 如果在微服务体系下,那效果更明显,相同的内存可以启动更多的…

Linux学习之Redis集群部署

Redis集群部署 准备集群环境 创建集群 # 准备集群环境--配置192.168.88.51(host51) [rootlocalhost ~]# yum install -y redis [roothost51 ~]# vim /etc/redis.conf bind 192.168.88.51 cluster-enabled yes cluster-config-file nodes-6379.conf cluster-node-timeout 5000…

Java web基础知识

Servlet Servlet是sun公司开发的动态web技术 sun在API中提供了一个接口叫做 Servlet ,一个简单的Servlet 程序只需要完成两个步骤 编写一个实现了Servlet接口的类 把这个Java部署到web服务器中 一般来说把实现了Servlet接口的java程序叫做,Servlet 初步…

成功的海外网红营销:文化和价值观冲突的应对策略

随着全球数字化和社交媒体的崛起,海外网红营销已经成为企业推广产品和服务的一种重要方式。然而,这种全球性的营销活动也伴随着文化和价值观的多样性,容易导致潜在的冲突和误解。为了取得成功并避免不必要的争议,企业需要深入了解…

从B-21轰炸机看美空军作战战略趋势

源自:北京蓝德信息科技有限公司 图注:The B-21 Raider was unveiled to the public at a ceremony Dec. 2, 2022, in Palmdale, Calif. (U.S. Air Force photo) (一)B-21开发进展 (二)B-21性能研判 声明:公众号转载的文章及图片出于非商业性的教育和科研…

2023 RISC-V 中国峰会 演讲幻灯片和视频回放 均已公开

安全之安全(security)博客目录导读 目录 一、幻灯片地址 二、演讲视频 一、幻灯片地址: GitHub - cnrv/RVSC2023: RISC-V Summit China 2023 二、演讲视频: RISCV国际基金会的个人空间-RISCV国际基金会个人主页-哔哩哔哩视频 参考:CNRV …

python+django社区医院诊所医疗管理系统_6t4o8

技术栈 后端:pythondjango 前端:vueCSSpythonScriptjQueryelementui 开发语言:Python 框架:django/flask Python版本:python3.7.7 数据库:mysql 数据库工具:Navicat 开发软件:PyCh…

计算机专业毕业设计项目推荐05-共享汽车管理系统(SpringBoot+Js+Mysql)

共享汽车管理系统(SpringBootJsMysql) **介绍****系统总体开发情况-功能模块****各部分模块实现** 介绍 本系列(后期可能博主会统一为专栏)博文献给即将毕业的计算机专业同学们,因为博主自身本科和硕士也是科班出生,所以也比较了解计算机专业的毕业设计…

解码知识图谱:从核心概念到技术实战

目录 1. 概述什么是知识图谱知识图谱与自然语言处理的关系 2. 发展历程语义网络本体论大数据时代的知识图谱知识图谱与深度学习的融合 3. 研究内容知识图谱的建模与表示知识抽取知识图谱的融合与对齐知识图谱的推理知识图谱的评估与验证 4. 知识图谱表示与存储RDF:一…

基于java SpringBoot和HTML实验室预约管理系统设计

摘要 实验室信息管理系统是利用计算机网络技术、数据存储技术、快速数据处理技术对实验室进行全方位管理的计算机软件系统。实验室信息管理系统从最初仅完成数据存储和有限的网络功能,发展到现在可以处理海量数据,具备完善的管理职能,并且能够…

JavaScript中的浅拷贝与深拷贝

前言 JavaScript中的浅拷贝和深拷贝是非常重要的概念,它们在处理对象和数组时具有不同的作用。在编程中,经常需要复制数据以便进行各种操作,但必须注意拷贝的方式,以确保得到预期的结果。 浅拷贝是创建一个新对象或数组&#xf…

D*算法图文详解

前面学习了Dijkstra以及A* 算法的基本原理,对于这两种算法而言,我们都能在有解的情况下找到一条沿着起点到达终点的路径。然而,这两个算法本身都是基于静态地图的,也就是说:当机器人找到路径后开始沿着起点向终点运动的…

不断探索创新 促进中国信息技术发展——南京宏控科技有限公司董事长应富忠

应富忠,男,现任南京宏控科技有限公司董事长、电子系统工程高级工程师(技术五级)、自动化系统注册工程师,先后被评为“研究所级青年突击手”、“研究所级先进工作者”、“研究所级优秀共产党员”、“南京市级考级优秀”…

微服务保护-授权规则/规则持久化

授权规则 基本规则 授权规则可以对调用方的来源做控制,有白名单和黑名单两种方式。 白名单:来源(origin)在白名单内的调用者允许访问 黑名单:来源(origin)在黑名单内的调用者不允许访问 点…

未解之迷——晶振问题导致SWD烧录时芯片no target connected,切换内部晶振后解决了

我所讲的情况是网上总结之外的另一种情况。不是Reset 后卡时间烧录,也不是烧录器问题,引脚问题等。而是STM32CubeMX软件生成问题。 芯片:STM32F103C8T6 某天我做了一块板子,按正常流程烧录,第一次可以烧录&#xff0c…

让Pegasus天马座开发板吃上STM8S标准库

WeCanStudio官方仓库的示例工程,只提供基于STM8S003寄存器方式来开发Pegasus天马座开发板。在此,我将基于官方的工程示例,将STM8S标准库移植到工程中。 先上图,看运行结果: main.c文件 #include "config.h" #include "delay.h"#de…