对IP协议概念以及IP地址的概念进行简单整理

网络层重要协议

参考模型和协议栈

IP协议

IP协议定义了网络层数据传送的基本单元,也制定了一系列关于网络层的规则。

IPv4数据报

网络层的协议数据单元PDU 叫做分组 ;网络层的传输单位 叫做数据报

协议数据单元PDU是对等实体之间传输的单元,传输层是某一层能够通过的数据包大小。

用一个例子:由于安排,需要把一整个班级的人发送到安全通道2-A,路径只能1-A->1-B->2-B->2-A,那么1-A的协议数据单元就是"整个班级"。1-A层每次只能传送2个人,那么"2个人"就是1-A的传输单元。

IP协议定义网络层传输的基本单元,IP协议有IPv4和IPv6,IPv4依然是现在比较常用的IP协议。

IP数据报格式

IP数据报格式如下

IP数据报格式很重要,我的记忆口号:"六块肌肉,四块腊肉"。描述了IP数据报的大致格式,只要有大致格式我们就可以比较熟练的记忆。"六块肌肉"上面一部分就像六块肌肉一样,而下面4个横格子我把它记作"腊肉",因为腊肉在我这个地方是类似于长方形的(实际上是长长的刀把形)。

(1)4位版本:指出IP协议使用的版本,如果用的是IPv4,那么版本号就是4

(2)4位首部长度:指出这个数据报的首部有多大,如果没有选项,首部长度为20字节

(3)16位总长度:指出这个数据报整体有多大,首部+数据的大小,不能超过数据链路层规定的最大传输单元MTU。以太网帧的MTU是1500B

(4)16位标识:是一个计数器,每产生一个数据报就+1,但它不是序号,用来标识主机发送的报文。如果在数据链路层被分片了,每一个片里的这个标识都一样,方便重装。

(5)3位标志:第一位保留(现在不用);第二位是DF,DF=0表示允许分片;第三位是MF,MF=1表示后面还有分片;

(6)16位片偏移:相对于原IP数据报的偏移量,以8字节位为偏移单位,除了最后一个分片,每个分片的长度必须是8B的整数倍,否则报文就不连续了。

(7)8位生存时间:这个数据报最多可以经过几个路由器,用来确保它不会永远在网络中循环。分组转发前,生存时间-1。生存时间为0,丢弃。

(8)8位协议。指出交给网络层的数据使用的是什么协议,方便拆包时清楚知道用什么协议。

(9)16位首部校验和:使用循环冗余码CRC进行差错校验。

IPv4地址

连接到因特网的每一台主机或路由器都会分配一个32位的唯一标识符,叫做IP地址。IP地址由机构ICANN进行分配。早期的IP地址被分成5类。

  • A类 0.0.0.0到127.255.255.255
  • B类 128.0.0.0到191.255.255.255
  • C类 192.0.0.0到223.255.255.255
  • D类 224.0.0.0到239.255.255.255
  • E类 240.0.0.0到247.255.255.255

不论是哪一类IP地址,都由网络号和主机号组成,{网络号.主机号}

网络号标识主机或路由器连接的网络,所以网络号必须唯一。

主机号标识主机或路由器,IP地址中,同一个网络号的主机号需要不同。

注意

(1)一个网络的网络号是唯一的,如果一个主机同时连接到两个网络,那么这个主机必须要有2个IP地址。路由器是常见的连接多个网络的设备,所以路由器至少拥有2个IP地址。

(2)使用转发器或网桥连接的若干LAN仍然处于同一个网络,它们使用相同的网络号。

(3)分配到网络号的网络都是平等的

特殊IP地址

  • 主机号全为0,IP地址是一个是网络号,表示这个网络本身。如202.98.174.0
  • 主机号全为1,IP地址是这个网络的广播地址。如202.98.174.255
  • 127.X.X.X,叫做环回自检地址。这个IP地址表示任意主机本身,目的IP地址为环回自检地址的数据报不会出现在网络上。通常是127.0.0.1
  • 32位全为0,表示本网络上的本主机
  • 32位全为1,即255.255.255.255是TCP/IP网络的广播地址。路由器会隔离广播域,所以我们在使用这个IP地址的时候,它等效于本网络的广播地址。

私有IP地址和公有IP地址

有一些组织会自己组建一个局域网,并不需要连接上因特网。但是它们内部的每台主机也都需要IP地址,鉴于这种情况,将IP地址划分成了私有IP地址和公有IP地址。私有IP地址用于局域网LAN,公有IP地址用于广域网WAN。如果这个网络现在需要连接因特网,就需要通过网络地址转化NAT将私有IP地址转换成因特网中合法的全球IP地址。私有IP地址可以被局域网LAN重复使用,所以私有IP地址又叫可重用地址。这种机制有效解决了IP地址不足的问题。

私有IP地址网段:

A类:2^0^个A类网段。10.0.0.0~10.255.255.255

B类:2^4^个B类网段。172.16.0.0~172.31.255.255

C类:2^8^个C类网段。192.168.0.0~192.168.255.255

采用私有IP地址的互联网络,叫做专用互联网或本地互联网 。专用互联网如果要和因特网连接,它们之间的路由器必须安装网络地址转换NAT软件,这个路由器至少需要有一个有效的外部全球IP地址。

NAT路由器里有一张表,表里保存着{本地IP地址:端口}-->{全球IP地址:端口}的映射关系。

子网划分

使用{网络号.主机号}2级IP地址的网络中,空间利用率比较低,并且不够灵活。1985年起,提出了三级IP地址的概念。三级IP地址就是在二级IP地址的基础上,把主机号靠近网络号那部分归为子网号字段 。这种做法叫做子网划分

  • 子网划分属于一个组织内部的事情,对外没有子网的概念。
  • 其他网络发给这个组织的数据报,先根据网络号,把IP数据报发到这个组织网络上的路由器。然后再根据网络号和子网号找到目的子网,最后把数据报发送到目的主机上。
  • 根据IP数据报的首部,没有办法判断对应的网络是否进行了网络划分
  • 路由器所选用的路由选择软件,有一些不支持全1或全0的子网号
  • 子网中主机号全为0的地址 是 子网的网络号;主机号全为1的地址 是 子网的广播地址

由于根据IP数据报没有办法判断对应的网络是否进行了子网划分,所以引入了子网掩码的概念。子网掩码是一个32位的二进制串,和IP地址对应。1对应网络号和子网号,0对应主机号。将IP地址和子网掩码按位与 就得到了子网的网络号

路由器不仅要包含目的网络地址达到目的网络 路径上 的下一个路由器的IP地址 ,还要包含目的网络子网掩码

事实上,随着Internet的飞速发展,像这种分类划分方案的局限性很快显现出来,大多数组织都申请B类网络地址, 导致B类地址很快就分配完了, 而A类却浪费了大量地址。针对这种情况提出了新的划分方案, 称为无分类编址CIDR(Classless Interdomain Routing)

相关推荐
畅联云平台17 分钟前
美畅物联丨如何在视频汇聚平台上添加RTMP主动推流设备?
网络协议·音视频
山人在山上1 小时前
arcgis server ip修改后服务异常解决方案
数据库·tcp/ip·arcgis
记得多喝水o2 小时前
华三M-LAG场景下,部分MAC内的流量泛洪导致端口流量打满
网络
群联云防护小杜2 小时前
服务器被攻击怎么办
运维·服务器·网络·网络协议·安全·web安全
华为云开发者联盟2 小时前
混合云网络过于复杂?ENS给你全局一张网的极致体验
网络·ens·混合云·华为云stack
__zhangheng3 小时前
Mac 查询IP配置,网络代理
linux·服务器·网络·git
IT 古月方源3 小时前
ospf 的 状态机详解
运维·网络·tcp/ip·智能路由器
dog2503 小时前
UDP 比 TCP 更快吗?
网络·tcp/ip·udp
一勺汤3 小时前
YOLO11改进-模块-引入星型运算Star Blocks
网络·yolo·目标检测·改进·魔改·yolov11·yolov11改进
ChennyWJS3 小时前
03.HTTPS的实现原理-HTTPS的工作流程
网络·网络协议·http·https