IP协议:连接你我,掌握互联网的关键

ip,协议,连接,掌握,互联网,关键 · 浏览次数 : 40

小编点评

**IP地址分类** IP地址分类是指将IP地址根据其分类地址进行分类,例如A类、B类、C类、D类、E类。IP地址分类的优点是简单明易,可以帮助快速找到网络地址和主机地址。缺点是缺乏地址层次性,容易出现地址浪费。 **无分类地址 CIDR** 无分类地址 CIDR是一种使用可变长度子网掩码的IP地址分类方法,它可以更加灵活地划分网络地址,避免了IP地址分类的缺点。 **IP地址分类的类型** IP地址分类的类型包括: * A类地址:用于主机与主机之间的通信。 * B类地址:用于主机与多播之间的通信。 * C类地址:用于主机与多播之间的通信。 * D类地址:用于多播操作。 * E类地址:用于预留的地址分类。 **IP地址分类的分类方式** IP地址分类的分类方式包括: * 主机号全为 1:表示该网络下的所有主机,用于进行广播操作。 * 主机号全为 0:表示指定某个网络。 * 混合类型地址:如 10.100.122.2/24,其中 /24 表示前 24 位是网络号,剩余的 8 位是主机号。

正文

IP 基本认识

在之前的章节中,我们已经详细介绍了应用层和传输层的相关概念和原理,了解了进程之间如何进行可靠的数据传输。我们知道,传输层的头部包含了进程所使用的端口信息,这是为了确保数据能够正确地传递到目标进程。今天,我们将进一步探讨网络层的IP协议,以了解主机之间如何进行通信。

在TCP/IP参考模型中,IP协议位于第三层,即网络层。网络层的主要功能是实现主机与主机之间的通信,也被称为点对点(end to end)通信。网络层通过IP地址来标识不同的主机,它负责将数据包从源主机传输到目标主机。IP协议还具有路由选择的功能,它通过查找路由表来确定最佳路径,确保数据能够正确快速地传输到目标主机。因此,网络层是整个TCP/IP网络体系中至关重要的一层,它为主机之间的通信提供了基础支持。

image

网络层和数据链路层在通信中扮演着不同的角色,它们之间有着密切的关系。IP协议(网络层)和MAC地址(数据链路层)都是实现数据传输的关键要素。

有些小伙伴可能会对IP(位于网络层)和MAC(位于数据链路层)之间的区别和关系感到困惑。

其实很容易区分,网络层(IP协议)的主要作用是在不同的网络之间进行通信传输。它通过使用IP地址来标识不同的主机和网络,负责将数据包从源主机传输到目标主机。网络层还负责路由选择,即根据路由表选择最佳路径,确保数据能够快速有效地传输到目标主机。

而数据链路层(MAC地址)则是在直接相连的两个设备之间进行通信的关键。它负责将数据包从一个节点传输到另一个节点,通过物理地址(MAC地址)来标识不同的设备。数据链路层确保了在同一个网络中,数据能够正确地从源设备传递到目标设备。

可以用一个旅行行程的例子来形象地解释网络层和数据链路层的关系。假设小雨要去一个很远的地方旅行,他的行程表相当于网络层,它规划了整个旅行的路线和目的地。而飞机票和地铁票则相当于数据链路层,它们只在特定的区间内有效,负责将小林从一个地点传输到下一个地点。在区间内移动就像是数据链路层,在源地址和目标地址之间传输数据。整个行程表相当于网络层,它提供了整个旅行的定位和指导,就像IP地址一样。行程的起点和终点分别对应源IP和目标IP地址。

image

如果小雨只有行程表而没有车票,他将无法找到适合的交通工具来到达目的地。反之亦然,如果他只有车票而没有行程表,他也很难知道应该搭乘哪种交通工具以及何时换乘。

因此,只有同时具备某个区间的车票和整个旅行的行程表,才能确保成功到达目的地。类似地,在计算机网络中,需要同时存在数据链路层和网络层分层,才能实现与最终目标地址的通信。

另外,旅行途中虽然交通工具可能不断变化,但旅行的起始地址和目的地址始终保持不变。在网络数据包传输中,也是如此,源IP地址和目标IP地址在传输过程中不会改变,只有源MAC地址和目标MAC地址会不断变化。

IP 地址的基础知识

在 TCP/IP 网络通信中,为了确保正常通信,每个设备都需要正确配置 IP 地址。否则,通信将无法实现。IP 地址(IPv4 地址)使用32位正整数表示,并在计算机中以二进制形式处理。为了方便人类记忆,IP 地址采用点分十进制标记方式。即将32位IP地址分为4组,每组8位,用点号分隔,并将每组转换为十进制形式。

image

那么,IP 地址最大值也就是

image

当然,最大允许的43亿台计算机连接到网络是基于IP地址的可用范围。实际上,IP地址并不是按照主机台数来配置的,而是按照网卡来配置的。像服务器、路由器等设备通常有2个或更多的网卡,因此它们会有2个或更多的IP地址。

image

因此,实际上并不可能让43亿台计算机全部连接到网络,更何况IP地址由"网络标识"和"主机标识"两个部分组成,这意味着能够连接到网络的计算机数量更少。

有些人可能会问,现在不仅计算机配备了IP地址,手机、平板等电子设备也都有IP地址,那么连接到网络的设备数量肯定会超过43亿,那么网络是如何支持这么多的IP地址呢?

这是因为使用了一种称为NAT(Network Address Translation,网络地址转换)的技术,通过NAT技术可以实现IP地址的更换。这样就使得可连接的计算机数量超过了43亿台。NAT技术将在后续的讨论中进一步解释和说明。

IP 地址的分类

互联网诞生之初,IP 地址资源相对较为充裕,为了更好地管理和分配这些地址,计算机科学家们设计了基于分类的 IP 地址方案。

根据这个方案,将 IP 地址分为了五种不同的类型,分别是 A 类、B 类、C 类、D 类和 E 类。这些分类根据地址的位数分配方式和网络规模进行了划分。

image

当我们谈论A、B、C类地址时,主要涉及到网络号和主机号两个部分。这个概念可以通过类比来更好地理解,就像我们住在不同的小区一样。比如,小雨住在A小区8栋101号,而你住在B小区1栋101号。为了更清楚地了解A、B、C类地址的分类和范围,我们可以通过下面这个图片来了解每个分类所对应的地址范围和最大主机个数。

image

在标记网络IP地址时,最大值为255是因为IP地址中的每个字段是一个8位二进制数,因此范围是从0到255,共256个可能的取值。IP地址的每个字段代表了一个字节,也就是8位二进制数,所以最大值是2的8次方减1,即255。

对于A、B、C类地址,最大主机个数是根据主机号的位数来计算的。以C类地址为例,主机号占据了8位。由于二进制的8位能表示的最大数值是255(0到255共256个数值),因此C类地址的最大主机个数就是254个。

image

为什么要减 2 呢?
因为在 IP 地址中,有两个 IP 是特殊的,分别是主机号全为 1 和 全为 0 地址。

image

主机号全为1时,表示该网络下的所有主机,用于进行广播操作。而主机号全为0时,表示指定某个网络。

除了A、B、C类地址之外,还有D类和E类地址。D类地址常被用于多播操作,用于将数据同时发送给多个主机。而E类地址是预留的地址分类,暂时未被使用。

image

IP 分类的优点

不论是路由器还是主机,在解析一个IP地址时,我们可以通过判断其首位是否为0来确定其分类。如果首位为0,则为A类地址,这样我们就能快速找到网络地址和主机地址。对于其他分类,我们可以参考如下图所示的判断方式:

image

因此,这种分类地址的优点在于其简单明了的特点,使得选路(基于网络地址)变得更加简单。通过对IP地址的分类,我们可以更快速地确定网络地址和主机地址,从而更方便地进行网络通信和路由选择。这种简单的分类方式为网络管理和路由器的操作提供了便利和效率。

IP地址分类的缺点之一是缺乏地址层次性。例如,一个公司可能需要根据生产环境、测试环境和开发环境来划分地址层次,但是传统的IP分类方式并没有提供地址层次划分的功能,因此缺少了灵活性。

另一个缺点是A、B、C类地址在现实网络中无法很好地匹配。C类地址能够包含的最大主机数量太少,仅有254个,这对于像网吧这样的场所来说显然不够使用。而B类地址能够包含的最大主机数量又太多,超过6万台机器,一般的企业很难达到这个规模,这样就会导致地址的浪费。

这两个缺点可以通过CIDR(无分类地址)来解决。CIDR使用可变长度子网掩码(VLSM),使得网络划分更加灵活和精确,可以根据实际需要分配合适大小的地址块,避免了传统IP地址分类的缺点。

无分类地址 CIDR

正因为IP地址分类存在许多不足之处,因此提出了无分类地址CIDR的方案。CIDR不再使用分类地址的概念,而是将32位的IP地址划分为网络号和主机号两部分,前面是网络号,后面是主机号。

怎么划分网络号和主机号的呢?

CIDR的表示形式为a.b.c.d/x,其中/x表示前x位属于网络号,x的范围是0~32,这使得IP地址更加灵活。例如,10.100.122.2/24表示CIDR的地址形式,其中/24表示前24位是网络号,剩余的8位是主机号。最后的.2只是一个简单的举例,你也可以将其写成10.100.122.0/24,意思是相同的。

image

除了CIDR的形式外,还有一种划分网络号和主机号的方式是使用子网掩码。子网掩码的作用是将主机号掩盖掉,只留下网络号。

使用子网掩码时,可以将子网掩码和IP地址按位计算与操作,从而得到网络号。计算结果即为网络号的值。子网掩码中的1表示对应位是网络号,0表示对应位是主机号。

image

为什么要分离网络号和主机号?

分离网络号和主机号的目的是为了在计算机通讯时能够判断是否处于同一个广播域内,也就是判断网络地址是否相同。这样可以更有效地进行数据包的传输和路由选择。当两台计算机要进行通讯时,首先需要根据网络地址来判断它们是否处于同一个广播域内。如果两台计算机的网络地址相同,即网络号相同,那么它们就处于同一个网络中。在这种情况下,数据包可以直接发送到目标主机,而不需要经过路由器的转发。

image

总结

在本文中,我们深入了解了IP协议和IP地址的基本知识。

首先,我们了解了IP协议在TCP/IP参考模型中的位置和作用。IP协议位于网络层,负责实现主机之间的通信。它通过IP地址来标识不同的主机,同时具有路由选择的功能,确保数据能够正确快速地传输到目标主机。

然后,我们学习了IP地址的基础知识。IP地址是使用32位二进制数表示的,为了方便记忆,采用点分十进制标记方式。IP地址分为A、B、C、D、E五类,其中A、B、C类地址用于主机与主机之间的通信,D类地址用于多播操作,E类地址是预留的。

此外,我们还了解到IP地址的分类存在一些缺点,比如缺乏地址层次性和地址浪费。为了解决这些问题,引入了无分类地址CIDR的概念,它使用可变长度子网掩码,使得网络划分更加灵活和精确。

总的来说,IP协议和IP地址是计算机网络通信中非常重要的概念,了解它们的基本知识对于理解网络通信原理和进行网络配置非常有帮助。

与IP协议:连接你我,掌握互联网的关键相似的内容:

IP协议:连接你我,掌握互联网的关键

IP协议作为互联网的基石,扮演着连接世界各个角落的重要角色。本文将带您深入了解IP协议的作用和位置,以及IP地址的重要性。无论您是对技术感兴趣的读者还是想了解互联网运作原理的人,本文都将为您揭开IP协议的神秘面纱,让您更好地理解数字世界的奇妙之处。

解密网络通信的关键技术(下):DNS、ARP、DHCP和NAT,你了解多少?

本文探讨了动态主机配置协议(DHCP)和网络地址转换(NAT)技术的工作原理和应用。DHCP通过简化IP地址配置过程实现了动态地址分配,而NAT则解决了IPv4地址紧缺问题。我们还介绍了DHCP中继代理和NAT中的网络地址与端口转换(NAPT)概念。然而,这些技术也存在一些限制,如无法主动建立连接和...

[转帖]tcp、http和socket的区别

https://www.jianshu.com/p/88d69454bdde 一:tcp协议 tcp协议属于传输层协议(UDP也属于传输层协议,但是UDP协议是无状态的)。建立一个TCP连接需要三次握手,断开一个TCP连接需要四次挥手。手机能够使用联网功能,是因为手机底层实现了TCP/IP协议,使用

[转帖]Linux conntrack模块,ip_conntrack 模块的作用

ip_conntrack 是Linux NAT一个跟踪连接条目的模块记录着允许的跟踪连接条目ip_conntrack 模块会记录 tcp 通讯协议的 established connection 记录, 而且预设 timeout 时间长达五天 (432,000 秒).所以局域网中当有人使用p2p类的

[转帖]使用电信号传输TCP/IP:如何收发数据包(MTU,MSS,包的序号SYN,确认号ACK,动态调整等待ACK时长,滑动窗口)

https://www.jianshu.com/p/a819a777d33c 连接建立起来后,也就是TCP建链后也就进入数据传输阶段。数据收发操作是从应用程序调用write将要发送的数据交给协议栈开始的,协议栈收到数据后执行发送操作。 首先,协议栈并不关心应用程序传来的数据是什么内容。应用程序在调用

[转帖]TCP三次握手详解,滑动窗口,拥塞窗口,网络包路由过程,全连接队列,半连接队列

众所周知,网络分层有传统的OSI七层模型和后来的基于TCP/IP的四层模型: 那么在一次网络的传输过程中具体的流程是怎么样的,我们先从一个数据包的传输说起(以TCP为例): TCP协议根据上层应用提供的信息生成TCP报文 TCP报文在交由下面的IP层(网络层)进行处理,委托IP模块将TCP报文封装成

第138篇:了解HTTP协议(TCP/IP协议,DNS域名解析,浏览器缓存)

好家伙,发现自己的网络知识十分匮乏,赶紧补一下 这里先举个我生活中的例子 欸,作业不会写了,上网搜一下 用edge浏览器上bing必应搜一下(百度广告太多了,真不想用百度举例子) 假设这是我们第一次访问bing的首页 当我向浏览器中输入https://cn.bing.com/并按下回车 浏览器做了什

[转帖]【基础】HTTP、TCP/IP 协议的原理及应用

https://juejin.cn/post/6844903938232156167 前言 本文将持续记录笔者在学习过程中掌握的一些 HTTP 、TCP/IP 的原理,以及这些网络通信技术的一些应用场景,文章会保持更新,相当于对这块知识的一个总结和归纳。有不正确之处欢迎指出,及时改正~ 纲要 访问网

iNeuOS工业互联网操作系统,增加电力IEC104协议

IEC60870-5-104 是一种电力自动化系统中常用的通信协议,使用 TCP/IP 协议作为底层通信协议,用于监视和控制电力系统中的各种设备,如变电站、发电机、开关等。

【转帖】再谈TCP/IP三步握手&四步挥手原理及衍生问题—长文解剖IP

https://www.zhoulujun.cn/html/theory/ComputerScienceTechnology/network/2015_0708_65.html 长文是对TCP IP的街剖析归类总结,就自己的经验再次回顾IP协议而写的归纳性笔记,助力初学者掌握。文有不妥之处,请查看原