网络层学习目标
设置IP地址
什么叫IP地址?它的作用是什么?
网络层向上只提供简单灵活的,无连接的,尽最大努力交付的数据包服务:路由器专注于分组转发
网络在发送分组时不需要先建立连接。每一个分组(即IP数据报)独立发送,与其前后的分组无关。
从网络层来看网络数据(分组)的转发
网际协议IP
在TCP/IP体系中在网络层采用标准化协议来实现网络互联,这个协议就是网际协议IP(Internet Protocol)
实际的网络通过路由器进行互联的,使用网际协议IP,可以把互联后的网络看成一个虚拟互联网络。这种使用IP协议的虚拟网络可以简称为IP网。
IP地址就是在给每个链接在因特网上的主机(或者路由器)分配一个在全世界范围是唯一的32位的标识符
IP地址由因特网名字与号码指派公司ICANN进行分配。
IP地址以及编址方式
点分十进制记法
机器中的IP地址: 10000000 00001011 00000011 00011111
二进制转化为十进制 : =31
点分提高可读性: 128.11.3.31
IP地址的重要特点
IP地址也是一种分等级的地址结构
分配IP地址,对于机构只分配网络号即可;
路由器仅根据目的主机所连接的网络号来转发分组,而不考虑目的主机号。
IP地址标志一个主机(或路由器)的一条链路的接口
多归属主机(multihomed host):一同时连接到两个网络上,具有两个IP地址,网络号net-id不同。
一个路由器至少连接到两个网络,至少有两个不同的IP地址。
分类编址
A类地址(单播地址) | 0 | 网络号 | 主机号 | |
---|---|---|---|---|
(一对一通信,大规模) | 共8位,由于网络号不包含0,所以网络号地址为-2 | 共24位由于不包含全0和全1,所以一般来说范围是-2 | ||
B类地址(单播地址) | 10 | 网络号 | 主机号 | |
(一对一通信,中规模) | 共16位,网络号地址范围为-1 | 16位,由于不包含全0和全1,所以是-2 | ||
C类地址(单播地址) | 110 | 网络号 | 主机号 | |
(一对一通信,小规模) | 共24位,网络号地址范围为 | 共8位,由于不包含全0和全1,所以是 | ||
D类地址 | 1110 | 多播地址 | ||
E类地址 | 1111 | 保留为今后使用 |
网络类别 | 最大网络数 | 第一个可用的网络号 | 最后一个可用的网络号 | 每个网络中最大的主机数 |
---|---|---|---|---|
A | 126 | 1 | 126 | 16777214 |
B | 16383 | 128.1 | 191.255 | 65534 |
C | 2097151 | 192.0.1 | 223.255.255 | 254 |
IP地址空间的利用率有时很低。
给每一个物理网络分配一个网络号会使路由表变得太大,因而使网络性能降低。
两级的IP地址不够灵活。
分类IP地址编制方式的问题
1.IP地址位于网络层,它与数据链路层的MAC地址有何关系?两者在分组转发的流程中起什么作用?
2.分类编址方式造成了地址空间的浪费,不够合理,怎么解决?(为什么造成了地址空间的浪费你?原因是因为如果给机器分配了A类的地址,A类地址是大规模的,如果计算机的台数小于A类地址,剩下的地址为空,就造成了利用率的浪费。)
现在可以获得的情报:
在虚电路服务中分组的顺序总是按发送顺序到达目的站
IP数据报操作特点:1.每个分组自身携带足够的信息,它的传送是被单独处理的2.在整个传送过程中,不需建立虚电路3.网络节点要为每个分组做出路由选择4.每个分组达到目的端系统的顺序是未知的
IP电话、电报和专线电话分别使用的交换技术是分组交换技术、报文交换技术和电路交换技术
IP地址=网络地址+主机地址
IP地址与硬件地址
IP地址与硬件地址之间的区别
1.使用层次不同
从协议栈的层次上面来看数据的流动
在数据链路层封装成帧进行帧的流动的时候源MAC地址和目的Mac地址在不停地发生变化
总结:IP层抽象的互联网上只能看到IP数据报。
路由器只能根据目的站的IP地址的网络号进行路由选择。
在局域网的链路层,只能看到MAC帧。
问题:主机和路由器如何知道MAC帧的首部填入什么样的硬件地址?
———————————————————————————————————————————
ARP与RARP协议
两类地址:IP地址,MAC帧地址
因为网卡上都有IP地址和MAC帧地址,为什么不直接使用硬件地址通信呢?
回答:因为早期网络地址比较少,比较简单,确实是用硬件地址通信的。屏蔽了复杂性(GPRS手机无硬件地址,方便管理)
为了全球统一规范管理,就采用了不用硬件进行管理
问题:主机和路由怎样知道应当在MAC帧的首部填入什么样的硬件地址?
答案:地址解析协议。
地址解析协议(Address Resolution Protocol ARP)
IP地址通过ARP---------(地址解析协议)----》物理地址
物理地址--------RARP(逆地址解析协议)------》IP地址
ARP请求包是IP地址寻找MAC帧地址,解析主机的硬件地址
发送请求时:告知IP地址和映射地址是多少
ARP解决同一个局域网上的主机或路由器的IP地址和硬件地址的映射关系
ARP的解析过程对主机的用户是透明的
无论主机对本地主机发数据,还是主机对远程发数据,都能够在本地上通过ARP协议的操作,从而实现封装成帧操作。
如何避免ARP攻击(我个人觉得是信息泄露)?
1.ARP地址绑定
2.交换机上配置访问控制协议
结论:
统一的IP地址可以使复杂的问题变简单。
虚拟网络IP网络中用IP地址给计算机用户带来便利。
问题:基于IP地址的网络层数据单元的格式如何?
_____________________________________________________________________________
IP数据报的格式
IP数据报的组成格式
一个IP数据报由首部和数据两部分组成,前一部分是固定部分,共有20个字节,是所有IP数据报的必备部分
后面是一些可选字段,其长度是可变的。
固定部分,可选字段:
首部 | 位 | 0 | 4 | 8 | 16 | 19 | 24 | 31 | |
固定部分 | 版本 | 首部长度 | 区分服务 | 总长度 | |||||
标识 | 标志 | 片偏移 | |||||||
生存时间 | 协议 | 首部检验和和 | |||||||
源地址 | |||||||||
目的地址 | |||||||||
可变部分 | 可选字段(长度可变) | 填充 | |||||||
数据部分 | |||||||||
要讲的内容 | 发送在前 | ||||||||
首部 | 数据部分 | ||||||||
IP数据报 |
版本:
首部 | 位 | 0 | 4 | 8 | 16 | 19 | 24 | 31 | |
固定部分 | 版本 | 首部长度 | 区分服务 | 总长度 | |||||
标识 | 标志 | 片偏移 | |||||||
生存时间 | 协议 | 首部检验和和 | |||||||
源地址 | |||||||||
目的地址 | |||||||||
可变部分 | 可选字段(长度可变) | 填充 | |||||||
数据部分 | |||||||||
要讲的内容 | 版本——占4位,指IP协议的版本,目前IP协议版本号为4即(IPv4) |
首部长度:
首部 | 位 | 0 | 4 | 8 | 16 | 19 | 24 | 31 | |
固定部分 | 版本 | 首部长度 | 区分服务 | 总长度 | |||||
标识 | 标志 | 片偏移 | |||||||
生存时间 | 协议 | 首部检验和和 | |||||||
源地址 | |||||||||
目的地址 | |||||||||
可变部分 | 可选字段(长度可变) | 填充 | |||||||
数据部分 | |||||||||
要讲的内容 | 首部长度——占4位,可表示的最大数值位是15个单位(一个单位为4字节)因此IP的首部长度的最大值为15*4=60个字节 | ||||||||
区分服务
首部 | 位 | 0 | 4 | 8 | 16 | 19 | 24 | 31 | |
固定部分 | 版本 | 首部长度 | 区分服务 | 总长度 | |||||
标识 | 标志 | 片偏移 | |||||||
生存时间 | 协议 | 首部检验和和 | |||||||
源地址 | |||||||||
目的地址 | |||||||||
可变部分 | 可选字段(长度可变) | 填充 | |||||||
数据部分 | |||||||||
要讲的内容 | 区分服务——占8位,用来获得更好的服务,在就标准中叫做服务类型,但实际上一直未被使用过 |
总长度:
首部 | 位 | 0 | 4 | 8 | 16 | 19 | 24 | 31 | |
固定部分 | 版本 | 首部长度 | 区分服务 | 总长度 | |||||
标识 | 标志 | 片偏移 | |||||||
生存时间 | 协议 | 首部检验和和 | |||||||
源地址 | |||||||||
目的地址 | |||||||||
可变部分 | 可选字段(长度可变) | 填充 | |||||||
数据部分 | |||||||||
要讲的内容 | 总长度——占16位,指首部和数据之和的长度,因此数据包的最大长度为65535字节,总长度必须不超过最大传送单元MTU |
MTU的介绍请看这个:【网络】什么是MTU|MTU 优化|最大传输单元_mtu大小-CSDN博客
标识:
首部 | 位 | 0 | 4 | 8 | 16 | 19 | 24 | 31 | |
固定部分 | 版本 | 首部长度 | 区分服务 | 总长度 | |||||
标识 | 标志 | 片偏移 | |||||||
生存时间 | 协议 | 首部检验和和 | |||||||
源地址 | |||||||||
目的地址 | |||||||||
可变部分 | 可选字段(长度可变) | 填充 | |||||||
数据部分 | |||||||||
要讲的内容 | 标识——占16位,计数器,用来产生数据报的标识 |
标志:
首部 | 位 | 0 | 4 | 8 | 16 | 19 | 24 | 31 | |
固定部分 | 版本 | 首部长度 | 区分服务 | 总长度 | |||||
标识 | 标志 | 片偏移 | |||||||
生存时间 | 协议 | 首部检验和和 | |||||||
源地址 | |||||||||
目的地址 | |||||||||
可变部分 | 可选字段(长度可变) | 填充 | |||||||
数据部分 | |||||||||
要讲的内容 | 标志——占3位,目前只有前两位有意义。 标志字段的最低位是MF。MF(More Fragment)=1表示后面还有分片;MF=0表示最后一个分片 标志字段中间的一位是DF(Don‘t Fragment),当DF=0时才允许分片 |
片偏移
首部 | 位 | 0 | 4 | 8 | 16 | 19 | 24 | 31 | |
固定部分 | 版本 | 首部长度 | 区分服务 | 总长度 | |||||
标识 | 标志 | 片偏移 | |||||||
生存时间 | 协议 | 首部检验和和 | |||||||
源地址 | |||||||||
目的地址 | |||||||||
可变部分 | 可选字段(长度可变) | 填充 | |||||||
数据部分 | |||||||||
要讲的内容 | 片偏移(12位)指出:较长的分组在分片后,某片在原组的相对位置,片偏移以8个字节为偏移单位 |
片偏移举例(拿的老师的图)
生存时间:
首部 | 位 | 0 | 4 | 8 | 16 | 19 | 24 | 31 | |
固定部分 | 版本 | 首部长度 | 区分服务 | 总长度 | |||||
标识 | 标志 | 片偏移 | |||||||
生存时间 | 协议 | 首部检验和和 | |||||||
源地址 | |||||||||
目的地址 | |||||||||
可变部分 | 可选字段(长度可变) | 填充 | |||||||
数据部分 | |||||||||
要讲的内容 | 生存时间——占8位记为TTL(Time To Live)数据报在网络中可通过的路由器数的最大值 |
协议:
首部 | 位 | 0 | 4 | 8 | 16 | 19 | 24 | 31 | |
固定部分 | 版本 | 首部长度 | 区分服务 | 总长度 | |||||
标识 | 标志 | 片偏移 | |||||||
生存时间 | 协议 | 首部检验和和 | |||||||
源地址 | |||||||||
目的地址 | |||||||||
可变部分 | 可选字段(长度可变) | 填充 | |||||||
数据部分 | |||||||||
要讲的内容 | 协议——占8位,字段值初次数据包携带的数据使用何种协议以便目的主机的IP层将数据上交给具体的处理过程 |
运输层 | TCP | UDP | |||
---|---|---|---|---|---|
网络层 | ICMP | IGMP | TCP | UDP | OSPF |
首部 | 数据部分 | ||||
IP数据报 |
首部的协议字段指出应将数据部分交给哪一个进程
首部检验和:
首部 | 位 | 0 | 4 | 8 | 16 | 19 | 24 | 31 | |
固定部分 | 版本 | 首部长度 | 区分服务 | 总长度 | |||||
标识 | 标志 | 片偏移 | |||||||
生存时间 | 协议 | 首部检验和和 | |||||||
源地址 | |||||||||
目的地址 | |||||||||
可变部分 | 可选字段(长度可变) | 填充 | |||||||
数据部分 | |||||||||
要讲的内容 | 首部检验和(16位)字段只检验数据报的首部,不检验数据报部分,这里不采用CRC检验码而采用简单的计算方法 |
首部检验和举例(老师的图)
源地址和目的地址:
首部 | 位 | 0 | 4 | 8 | 16 | 19 | 24 | 31 | |
固定部分 | 版本 | 首部长度 | 区分服务 | 总长度 | |||||
标识 | 标志 | 片偏移 | |||||||
生存时间 | 协议 | 首部检验和和 | |||||||
源地址 | |||||||||
目的地址 | |||||||||
可变部分 | 可选字段(长度可变) | 填充 | |||||||
数据部分 | |||||||||
要讲的内容 | 源地址和目的地址都各占4个字节 |
增加了IP数据报的功能
IP首部的可选部分是选项片段,用来支持排错,测量以及安全等措施,内容很丰富
选项字段的长度可变,从1个字节到40个字节不等,取决于所选择的项目
增加首部的可变部分是为了增加IP数据报的功能,也使得IP数据报的首部长度成为可变的。
小结:
1.由首部和数据两部分组成IP数据报
2.首部分为两部分,一部分是固定长度IP数据报都具,另一部分是可选字段长度可变