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

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

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.rhkb.cn/news/136808.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

机器人如何有效采摘苹果?

摘要:本文利用动捕数据构建拟人运动模型,对比观察两种苹果采摘模式,并对系统性能进行全面评估,为提高机器人采摘效率提供创新方法。 近期,一项关于苹果采摘机器人的有趣研究—— "Design and evaluation of a rob…

Git学习笔记8

Gitlab: Gitlab是利用Ruby on Rails 一个开源的版本管理系统,实现一个自托管的git项目仓库,可通过web界面进行访问公开或私有的项目。 Gitlab安装: 安装之前,将虚拟机的内存改成了4个G。内存如果太小,会有…

巧用“加减乘除”,停车场“碳”出节能发展新路

“绿色化、低碳化是高质量发展的关键”。中国电信以先驱姿态,积极贯彻“碳达峰碳中和”国家战略,以科技为画笔,绿色生态为底色,绘就节能低碳发展新蓝图。 在湖北省某办公楼宇,物业管理员因停车场照明现状发了愁。在过去…

Unity 开发人员转CGE(castle Game engine)城堡游戏引擎指导手册

Unity 开发人员的城堡游戏引擎概述 一、简介2. Unity相当于什么GameObject?3. 如何设计一个由多种资产、生物等组成的关卡?4. 在哪里放置特定角色的代码(例如生物、物品)?Unity 中“向 GameObject 添加 MonoBehaviour”…

1_图神经网络GNN基础知识学习

文章目录 安装PyTorch Geometric安装工具包 在KarateClub数据集上使用图卷积网络 (GCN) 进行节点分类两个画图函数Graph Neural Networks数据集:Zacharys karate club network.PyTorch Geometric数据集介绍 edge_index使用networkx可视化展示 Graph Neural Networks…

element-table出现错位解决方法

先看示例图,这个在开发中还是很常遇到的,在table切换不同数据时或者切换页面时,容易出现: 解决方法很简单,官方有提供方法: 我们可以在重新渲染数据后: this.$nextTick(() > {this.$refs.…

嵌入式笔试面试刷题(day15)

文章目录 前言一、Linux中的主设备号和次设备号1.查看方法2.主设备号和次设备号的作用 二、软件IIC和硬件IIC的区别三、变量的声明和定义区别四、static在C和C中的区别五、串口总线空闲时候的电平状态总结 前言 本篇文章继续讲解嵌入式笔试面试刷题,希望大家坚持跟…

【超实用】2023年,学生上班族如何简单快速,低成本的搭建一个博客网站

文章目录 前言实操环节香港虚拟机购买博客搭建ssl证书配置备份设置 总结 前言 因为工作和生活的需要,我一直有博客的搭建需求。我将总结下来,为读者提供参考。  起初,我采用的是香港云虚拟主机,这种虚拟机极其便宜(一…

什么样的应用程序适合使用Flutter开发桌面?

桌面应用开发的现状 在过去,桌面应用程序的开发通常需要使用特定于操作系统的工具和语言,如C、C#、Java等。这导致了高昂的开发成本和维护困难。尽管有一些跨平台桌面开发工具,如Electron和Qt,但它们在性能、用户体验和开发效率方…

Linux Static Key原理与应用

文章目录 背景1. static-key的使用方法1.1. static-key定义1.2 初始化1.3 条件判断1.4 修改判断条件 2、示例代码参考链接 背景 内核中有很多判断条件在正常情况下的结果都是固定的,除非极其罕见的场景才会改变,通常单个的这种判断的代价很低可以忽略&a…

Python3 语法简明教程

目录 0 前言1 输出语句、注释1.1 输出语句1.2 单行、多行注释 2 变量与对象、输入语句2.1 变量与对象2.2 数字类型和运算符2.3 输入语句 3 条件控制、循环语句3.1 条件控制3.2 循环语句3.2.1 while...else3.2.2 for...else 4 字典5 元组、列表5.1 元组5.2 列表 6 集合、推导式6…

C语言——贪吃蛇小游戏

目录 一、ncurse 1.1 为什么需要用ncurse: 1.2 ncurse的输入输出: 1.2.1 如何使用ncurse: 1.2.2 编译ncurse的程序: 1.2.3 测试输入一个按键ncurse的响应速度: 1.3 ncurse上下左右键获取: 1.3.1 如…

【IntelliJ IDEA】cmd和idea Terminal查看java版本不一致

问题描述 原来win10电脑上安装的是jdk8的版本,因某些原因,现在想换成jdk7的版本,修改环境变量后,在cmd中执行 [java -version]命令,显示的是7的版本。 但在idea的Terminal中执行,确实显示8的版本。 原因分…

基于深度强化学习的四旋翼无人机航线跟随

源自:指挥与控制学报 作者:杨志鹏 李波 甘志刚 梁诗阳 摘 要 针对无人机在空中执行航线跟随任务时无法对未知环境作出合理应对措施等问题, 提出了一种基于深度强化学习的四 旋翼无人机航线跟随方法. 通过无人机受力分析、欧拉角变换建立四旋翼无人…

2023.9.18 网络层 IP 协议详解

目录 IP协议 IPv4 32位 源IP 地址 / 32位 目的IP 地址 IP 地址管理 特殊 IP 路由选择 IP协议 IPv4 32位 源IP 地址 / 32位 目的IP 地址 基本知识: 在 IP 报头中一般表示为 32位 二进制整数日常生活中的 IP 一般将 32位 二进制整数,也就是 4字节 的二…

2023/9/19 -- C++/QT

作业 1> 登录框实现注册功能,将注册的结果放入文件中(君子作业) 2> 完成文本编辑器的保存工作 void Widget::on_saveBtn_clicked() {QString fileName QFileDialog::getSaveFileName(this,"另存为","./","…

036:vue导出页面生成pdf文件

第036个 查看专栏目录: VUE ------ element UI 专栏目标 在vue和element UI联合技术栈的操控下,本专栏提供行之有效的源代码示例和信息点介绍,做到灵活运用。 (1)提供vue2的一些基本操作:安装、引用,模板使…

元数据管理平台Datahub0.10.5版本安装部署与导入各种元数据手册

官网文档连接 DataHub Quickstart Guide | DataHub (datahubproject.io) 本文所选择的Python的版本为3.8.16,Docker版本为20.10.0,Datahub为0.10.5版本 python必须为3.7以上的版本。0.10.5不支持以下的版本 如果要使用web上的 添加数据源 直接调用的…

中国提出FastSAM:在RTX3090上提升了ViT-H E(32×32) 50倍速度

文章目录 1. Abstract2. 背景介绍3. 框架详情 (Methodology)3.1 Overview3.2 All-instance Segmentation3.3 Prompt-guided Selection4. Experiments4.1 Run-time Efficiency Evaluation4.2 Zero-Shot Edge Detection4.2.1 BSDS5004.2.2 Sobel filtering4.2.3 NMS4.3 Zero-Shot…

Redis 列表操作实战(全)

目录 LINDEX 获取指定下标元素 LSET 指定下标添加元素 LPUSH 将元素插入列表头 LPUSHX RPUSH 将元素插入列表尾 RPUSHX LINSERT 将元素插入列表某位置之前 LLEN 列表长度 LPOP 取列表头元素 RPOP 取列表尾元素 BLPOP 阻塞式取列表头元素 BRPOP 阻塞式取列表尾元素…