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


    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终究有一天要埋没到历史的长河里~
    学习资源来自 硬件茶谈

  • 相关阅读:
    Linux命令总结
    当Python遇到分形数学魔法 --> 树叶
    MySQL之事务
    【Web前端】一文带你吃透CSS(中篇)
    leetcode698. 划分为k个相等的子集
    软件设计模式系列之二十四——模板方法模式
    一个功能简单的图片工具类
    Frp内网穿透部署
    Windows 11上Dev C++ 5.11 提示 Failed to execute xxx Error 0的一种解决方法
    c 理解创建多进程
  • 原文地址:https://blog.csdn.net/Miss_croal/article/details/133013425