网络层
负责地址管理与路由选择,在复杂的通信环境中
IP协议
IP协议头格式
4位协议版本:IPV4/IPV6
4位头部长度:表示ip头有多长,最长60字节,最小20字节
8位服务类型:TOS字段(最小延时,最大吞吐量,最高可靠性,最小成本)
16位报文长度:报文长度64k,一个udp报文的最大数据段大小64k-20-8
16位标识符:udp数据大小超过MTU大小,但是小于64k-20-8,就会在网络层进行的分片操作,表示分片数据是哪个udp包 MTU是链路层协议,最大传输单元,网络中数据帧最大长度
3位分片标志:标识是否禁止分片,标识分片的结束
13位片偏移:标识每个分片数据相对于完整的udp数据报起始位置的偏移量—事项分片重组
8位TTL:报文最大生命周期,报文在每经过一个路由器跳数-1,为0时丢弃,默认是64
8位上层协议:用于数据分用时选择上层解析协议
16位校验和:校验数据的唯一性
32位地址信息:源IP地址/目的IP地址
40字节选项数据:
地址管理:
IP地址
IP地址的构成:网络号+主机号
网络号(网段):标识一个网络,路由器组建局域网,这个局域网具有一个网络好,当这个局域网中有主机连接上,路由器就是通过DHCP给该主机分配IP地址,这个IP地址中就包含有这个网络标识。
主机号:由于再一个局域网中还有标识每一个主机,所以得给每个主机分配一个局域网中唯一标识的主机号。
为了避免局域网中的IP地址和互联网中的IP地址冲突,因此组建局域网必须使用指定的地址,这些地址不能再互联网中出现,相邻局域网的网络地址也不能冲突,否则会造成路由器的选择困难。
在之前,有一种划分网络号和主机号的方案,把所有的IP地址分为五类
- 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
但是随着Internet的飞速发展,这种划分方案的局限性很快显现出来,大多数组织都申请B类网络地址, 导致B类地址很快就分配完了, 而A类却浪费了大量地址;针对这种情况,提出了新方案,也就是CIDR(子网掩码)。引入一个子网掩码来区别网络号和主机号,子网掩码也是一个32位的正整数,通常以一串“0”来结尾。将IP地址和子网掩码进行“按位与”操作,得到的结果就是网络号。网络号和主机号的划分与IP地址的种类无关。
CIDR
由于A类的所能派发的网络号有限,而C类网络能连接的主机个数有相对较少,所以一般的单位在申请网络时,都会申请B类网络,这就导致了B类网络的严重缺乏。所以,开始放弃IP地址的分类,采用任意长度分割IP地址的网络标识和主机标识,它与ABC类的划分没有任何关系。称为CIDR。它可以不受IP地址分类的限制,自由进行分配。此时的IP地址可以表示为:网络号+主机号(这个网络号可以是任意长度的)。当申请到一个任意长度的网络号之后,也可以在网络内进行子网划分。所以对于任一个子网也对应一个子网掩码。使用方法与上述相同。
CIDR更有效的利用了当前的IPv4地址,同时也减轻了路由器的负担。它可以将多个连续C类地址合并为一个网络(和你宝贵的个数以2,4,8,…呈现)。例如:将两个C类网络:192.168.224.0和192.168.225.0合并为一个网络。此时合并后的网络中可以连接的主机数增加到2^9-2=510台。在未合并之前,需要在路由表中占用两行来表示两个C类网络,合并后只需用一行就可以表示。
特殊的IP地址
将IP地址中的主机号全部设为0,就成了网络号,代表这个局域网;
将IP地址中的主机地址全部设为1,就成了广播地址,用于给同一个链路中相互连接的所有主机发送数据包
以127开头的IP地址用于环回测试,通常是127.0.0.1
回环设备:
私有IP地址和公网IP地址
如果一个组织内部要组建局域网,这个IP地址就只用于局域网内部的通信,而不是直接连到Internet上,
使用任意的IP地址都可以,但是RFC1918年规定了用于组建局域网的私有IP地址:
10.前八位是网络号,共16777216个地址。
172.16.到172.31.,前十二位是网络号,共1048576个地址。
192.168.,前十六位是网络号,共65536个地址
包含在以上三个范围中的地址都为私有IP地址,其余的则称为全局IP(公网IP)
IP地址路由过程
1、当IP数据包到达主机所在局域网的路由器后,路由器会根据报头查看目的IP地址。
2、路由器拿着目的IP地址和自己的路由表分析是否在同一网络中。
3、如果在同一网络中,则将该IP数据包进行广播,如果没有则将IP数据报发送给网关,由网关分析处理进行发送。
IP地址和MAC地址
IP地址和MAC地址的区别
IP地址:全局唯一性,使用软件来实现网络中地址管理。
MAC地址:本地唯一性,使用硬件实现。
有了IP地址为什么还要MAC地址
1、IP地址一般情况下容易修改和变动,具有随意性,不能在网络上固定标识一台设备。
2、MAC地址一般情况出厂时有厂家烧录到网卡中,不容易被修改,在局域范围内容易唯一定位一台设备。
3、从拓扑结构和分层上分析,IP地址属于网络层,主要功能在广域网范围内路由寻址,选择醉解路由,而MAC地址在数据链路层,要形成适合于网络媒体上传输的数据帧。