引言

IP地址是互联网通信中至关重要的组成部分。虽然在前一章节我们讲解了IP一些基础知识,但在我们日常生活中,我们经常听到公有IP地址和私有IP地址这两个术语。那么,公有IP地址和私有IP地址有何区别呢?

在本文中,我们将深入探讨公有IP地址和私有IP地址的概念以及它们在网络通信中的作用。我们还将了解公有IP地址和私有IP地址的管理机构以及它们在路由控制中的作用。

公有 IP 地址与私有 IP 地址

在 A、B、C 分类地址范围内,实际上包含了公有 IP 地址和私有 IP 地址两种类型。

在我们日常生活中,办公室、家庭和学校所使用的IP地址通常都是私有IP地址。这是因为私有IP地址允许组织内的IT人员自行管理和分配,并且可以在不同组织之间重复使用。因此,你学校的某个私有IP地址和我学校的私有IP地址可能是相同的。然而,在同一个学校内部,私有IP地址是不能重复的,就像每个小区都有自己的楼号和门牌号一样。你可以在你的小区家中住在1栋101号,我也可以在我的小区住在1栋101号,这没有任何问题。

但是一旦离开了小区,就需要使用越山路679号(公有IP地址),这是由国家统一分配的,不能让两个不同的小区都使用越山路679号。

因此,公有IP地址是由组织统一分配的。假设你想建立一个博客网站,你需要申请购买一个公有IP地址,这样全世界的人才能够访问你的网站。并且,公有IP地址基本上需要在整个互联网范围内保持唯一。

公有 IP 地址由谁管理呢?



ICANN)进行管理。在ICANN内部,国际互联网编号分配机构(IANA)是负责分配互联网IP地址的部门之一。IANA按照区域的方式进行层层分配,确保公有IP地址能够有效地分配给不同的地区和组织。内部的IT人员通常负责管理和分配私有IP地址,而公有IP地址的管理则是由ICANN和其下属机构负责。

在IP地址管理方面,ARIN负责管理北美地区的公有IP地址,LACNIC负责管理拉丁美洲和一些加勒比群岛的公有IP地址,RIPE NCC负责管理欧洲、中东和中亚的公有IP地址,AfriNIC负责管理非洲地区的公有IP地址,而APNIC负责管理亚太地区的公有IP地址。这些组织是由互联网名称与数字地址分配机构(ICANN)授权负责分配和管理公有IP地址的。

在全球范围内,公有IP地址的管理由互联网名称与数字地址分配机构(ICANN)负责,而在中国,这项任务由中国互联网络信息中心(CNNIC)承担。作为中国国内唯一指定的全局IP地址管理组织,CNNIC负责协调和分配中国境内的公有IP地址资源。

IP 地址与路由控制

IP地址的网络地址部分用于路由控制,它在发送IP数据包时起着重要的作用。路由控制表记录了网络地址与下一跳路由器的关系,这些表分布在主机和路由器上。

当发送IP数据包时,首先要确定目标地址,然后在路由控制表中查找具有相同网络地址的记录。根据匹配的记录,将IP数据包转发给相应的下一跳路由器。如果路由控制表中存在多条相同网络地址的记录,选择最长匹配,也就是具有相同位数最多的网络地址。

让我们以下图的网络链路为例进行说明:

  1. 当主机A要发送一个IP包时,它的源地址是10.1.1.30,目标地址是10.1.2.10。由于主机A的路由表中没有与目标地址10.1.2.10匹配的网络地址,所以包被转发到默认路由器(路由器1)。
  2. 路由器1收到IP包后,它的路由表中匹配到与目标地址相同的网络地址记录,发现匹配成功,所以将IP数据包转发到了10.1.0.2这台路由器2。
  3. 路由器2收到IP包后,同样比对自身的路由表,发现匹配成功,所以将IP包从路由器2的10.1.2.1接口发送出去。最终,经过交换机的转发,IP数据包被传送到目标主机。

那如果我发送的网络号在路由表里都没有呢,那就比如我要去国外的网站的话,咱们的路由器表怎么可能存着呢?

当发生路由失败时,发送方通常会采取一些措施来处理这种情况。以下是几种常见的处理方式:

  • 发送方可以选择将IP包发送到默认网关。默认网关是在路由表中指定的用于处理没有匹配项的情况的特殊路由器。如果设置了默认网关,发送方将向该网关发送IP包,并由该网关负责进一步的转发。
  • 发送方可以尝试使用其他路由表来查找匹配项。如果发送方有多个路由表可供选择,它可以尝试在其他路由表中查找匹配项,并根据匹配结果选择下一跳路由器。
  • 发送方可以发送ICMP路由不可达消息。当发送方无法确定下一跳路由器时,它可以发送一条ICMP路由不可达消息给源地址,告知源地址无法到达目标地址。源地址可以根据这个消息来采取进一步的措施,例如更改目标地址或尝试其他路径。

本地网关在处理你的数据包时,可能会根据路由控制表中的信息来确定下一跳路由器。路由控制表中保存了网络地址和下一跳路由器的映射关系。如果路由控制表中没有与目标地址匹配的项,本地网关可能会使用默认网关来处理数据包。默认网关是指当找不到匹配项时,数据包将被发送到的预设的下一跳路由器。

总结

IP地址是互联网通信中的重要组成部分,其中公有IP地址和私有IP地址是常见的术语。私有IP地址允许组织内自行管理和分配,可以在不同组织间重复使用。公有IP地址由组织统一分配,需要在整个互联网范围内保持唯一,由互联网名称与数字地址分配机构(ICANN)进行管理。在全球范围内,公有IP地址的管理由ICANN负责,而在中国由CNNIC承担。IP地址在路由控制中起重要作用,通过路由表进行转发。如果路由表中没有匹配项,可以使用默认网关、尝试其他路由表或发送ICMP路由不可达消息来处理。

探秘公有IP地址与私有IP地址的区别及其在路由控制中的作用的更多相关文章

  1. oracle 11g rac R2 for linux change(public,vip)IP ,hostname (oracle 11g rac R2 修改公有,虚拟,私有IP,网卡)

    结构如下: 说明: 节点IP,主机名的修改步骤来自ORACLE support文档: 如何修改集群的公网信息(包括 VIP) (文档 ID 1674442.1) 实验环境情况如下: 实验 节点名称 数 ...

  2. 正式表达式判断私有 IP 地址

    正式表达式判断私有 IP 地址   ^1(((0|27)(.(([1-9]?|1[0-9])[0-9]|2([0-4][0-9]|5[0-5])))|(72.(1[6-9]|2[0-9]|3[01]) ...

  3. 私有IP地址共有三个范围段

    在现在的网络中,IP地址分为公网IP和私有IP地址.公网IP是在Internet使用的IP地址,而私有IP地址是在局域网中使用的IP地址. 由于我们目前使用的IP V4协议的限制,现在IP地址的数量是 ...

  4. TCP/IP学习笔记14--IP地址 之 全局地址,私有地址

    只要明天还在,我就不会悲哀,冬雪终会悄悄融化,春雷定将滚滚而来.----<只要明天还在>,汪国真 全局地址,私有地址 , 一种为解决IP地址不足而产生的技术. 起初 ,互联网中的任何一台主 ...

  5. 私有ip地址知多少?

    1.私有ip的由来 在现在的网络中,ip地址分为公网ip地址和私有ip地址.公网ip是在Internet中使用的ip地址,而私有ip地址是在局域网中使用,在Internet上不使用. 由于我们目前使用 ...

  6. 公有IP和私有IP的区别

    什么是IP? 在网络中,每台计算机都有一个唯一的地址,方便别人找到它,这个地址称为IP地址 IP地址是一个网络编码,用来确定网络中的一个节点,是由32位的二进制组成 IP地址的组成? IP地址由网络部 ...

  7. 公网IP和私有IP的区别和用途

    在Internet网络上有上千百万台主机,为了能够将这些主机区分开来,于是就给每台主机都分别配了一个专门的地址,称为IP地址. 通过IP地址就可以访问到每一台主机.IP地址由4部分数字组成,ghost ...

  8. 解析私有IP地址和公网IP地址

    局域网私有IP地址上外网的原理 IP地址分为两部分,网络号和主机号,这种分法应用在私有和公有IP地址上.一个局域网中,为了该局域网的安全,我们应用了私有IP地址,为了和Internet中的其他主机进行 ...

  9. 私有IP地址范围

    私有IP地址范围 有一部分的地址专门是用于内网的地址,包括: A类中 10.0.0.0/8 B类中 172.16.0.0/12 ~ 172.31.0.0/12 C类中 192.168.0.0/16 这 ...

  10. 【网络基础】【TCP/IP】私有IP地址段

    私有IP地址段 Class A:10.0.0.0    - 10.255.255.255 Class B:172.16.0.0  - 172.31.255.255 Class C:192.168.0. ...

随机推荐

  1. 5个 Istio 访问外部服务流量控制最常用的例子,你知道几个?

    5 个 Istio 访问外部服务的流量控制常用例子,强烈建议收藏起来,以备不时之需. 环境准备 部署 sleep 服务,作为发送请求的测试源: kubectl apply -f samples/sle ...

  2. Vue——vuex使用、Router使用、localstorage、sessionstorage和cookie

    vuex使用 # vuex :状态管理器--->存数据(变量)的地方,所有组件都可以操作 在Vue中实现集中式状态(数据)管理的一个Vue插件,对vue应用中多个组件的共享状态进行集中式的管理( ...

  3. CHAT-GPT初使用

    拿chatgpt去试验了一下,一个挺小的需求,但是前后还是更改了三次,体验就是它可以不断改进之前实现的代码,但需要提需求的人比较清楚需求内的细节,差不多类似于,我有想法,它来实现,还是可以提高不少效率 ...

  4. 深入了解ApacheZeppelin:如何构建高效的数据科学平台

    目录 引言 随着数据科学和人工智能的快速发展,如何构建高效的数据科学平台已经成为一个重要议题.Apache Zeppelin是一个开源的数据科学平台,其提供了一种简单.高效的方式来处理和存储数据,并且 ...

  5. C# 实现 Linux 视频聊天、远程桌面(源码,支持信创国产化环境,银河麒麟,统信UOS)

    园子里的有朋友在下载并了解了<C# 实现 Linux 视频会议(源码,支持信创环境,银河麒麟,统信UOS)>中提供的源码后,留言给我说,这个视频会议有点复杂了,代码比较多,看得有些费劲.问 ...

  6. MyBatis-plus自动填充功能

    1.什么是mp的自动填充?这个功能是做什么的呢? 有的时候,我们可能有这样子的需求,在插入(insert)或者更新数据(update)的时候可以自动填充数据,比如密码,version等.在mp中为我们 ...

  7. Taurus .Net Core 微服务开源框架:Admin 插件【4-2】 - 配置管理-Mvc【含请求日志打印】

    前言: 继上篇:Taurus .Net Core 微服务开源框架:Admin 插件[4-1] - 配置管理-Kestrel[含https启用] 本篇继续介绍下一个内容: 1.系统配置节点:Mvc 配置 ...

  8. kibana基本操作

    kibana基本应用 一.简介 ​ Kibana是一个开源的分析与可视化平台,设计出来用于和Elasticsearch一起使用的.你可以用kibana搜索.查看存放在Elasticsearch中的数据 ...

  9. Unity中的RegisterPlugins:深入解析与实用案例

    Unity中的RegisterPlugins:深入解析与实用案例 在Unity游戏开发中,我们经常需要使用第三方插件来实现一些特定的功能.为了让这些插件能够在Unity中正常工作,我们需要对它们进行注 ...

  10. 微信小程序生态15- 批量提交微信小程序审核的一种方式

    大家好!我是sum墨,一个一线的底层码农,平时喜欢研究和思考一些技术相关的问题并整理成文,限于本人水平,如果文章和代码有表述不当之处,还请不吝赐教. 以下是『微信小程序生态系列文章』正文! 需求背景 ...