IP基本原理
IP协议:
工作在网络层(ICMP(定义了网络层控制)(ping)、IGMP(管理ip主播)、ARP(地址解析协议,将ip地址解析成MAC地址、RARP(反向地址解析))
ip(不是面向连接)(不会看是否成功传递)主要作用:
标识节点和链路:
用唯一的ip地址标识每一个节点
用唯一的ip网络号标识每一个链路
网络位:主机位
寻址和转发:
确定节点所在网络的位置,进而确定节点所在的位置
ip路由器选择适当的路径将ip包转发到目的节点
适应各种数据链路:
根据链路的MTU对ip包进行分片和重组(最大传输单元)
为了通过实际的数据链路传递信息,须建立ip地址到数据链路层地址的映射(MAC地址)
ip网络的结构;
ip网络由多个网段构成,每个网段对应一个链路
路由器负责将网段连接起来,适配链路层协议,在网络之间转发数据包
ip头格式:
20个字节
版本号占4位 ipv4
头长度 IP包头长度 4位
服务类型 标志服务等级 8位
总长度 ip包的总长度 16位
标识符 标识每一个ip包,没发送一个包,标识符都会加一
标识
帧偏移量(与前者进行分片)
ttl值(每经过一个三头设备都会减一,当变为0,就将数据包进行丢弃)
协议号
头部校验符(ip包是否完整)
源地址(在哪里发过来)
目标地址
ip地址格式和表示方法(32位)
网络号+主机号
网络号用于区分ip网络
主机号用于标识该网络内的一个ip节点
路由两个端口就是两个网络
IP地址分类:
a类地址(第一个八位段(以0开始,后面7位是网络号),127地址段保留, 真正a类地址段为1-126(网络数特少,主机数特多)
b类地址(第一个八位段(以10开头),网络号为后面14位,128-191)(网络数中等,主机数中等)
c类地址(第一个八位段(以110开头),网络号为后面21位,192-233)(网络数变多,主机数变少)
d类地址(组播地址)(以1110开头)(224-239)
e类地址(保留)(11110开头)
特殊的ip地址
主机号全0:网络地址,代表特定网段
主机号全1(255):网段广播地址,代表特定网段的所有节点
网络号为127:环回地址,常用于环回测试
全0:代表所有网络,常用于指定默认路由
全1(全255):全网广播地址,代表所有节点,255.255.255.255
ARP(用于已知的ip地址解析为mac地址):
ip地址只是逻辑地址(网络管理员配置的)
网络通讯一定要拿到物理地址,ip通过ARP拿到
主机a发送广播ARP请求,之后指代的ip地址的主机b单播ARP响应
分为动态(动态学习)和静态ARP(网络管理员配置上去的)
ARP分组格式:
硬件类型
协议类型
硬件长度
协议长度
代理ARP:
网关:代理ARP的功能
主机a广播ARP请求,到达ARP代理设备后,转向另一个接口发送出去,到达主机c。主机c发送单播ARP响应,经过ARP代理设备,到达主机A。主机a跟主机c在通信时,要交给网关(路由)处理
RARP(用于无盘工作站):
广播RARP请求(发送mac地址,请求IP地址),单播RARP响应(分配ip地址)(用于数据链路层地址已知时解析ip地址)
ICMP可达性探测(定义了网络层控制和传递消息的功能):
定义了错误报告和其他关于ip数据包处理情况的消息
可用于报告数据包传递过程中发生的错误、失败等信息,提供网络诊断等功能
可分为ICMP差错消息和ICMP查询消息
ICMP报文:
差错报告报文:
3 目的站不可达
11 超时
等
查询报文
13 或 14 时间戳请求或应答
等
ICMP报文格式:
类型
代码(特定报文类型产生错误的原因)
校验和(ICMP首部和数据的校验和)
数据(包含了所以接受到的数据报的IP报头)
回送请求和应答:
测试目的站是否可达
主机单播ip包发送:
若目的地址所处网络号与本机所处网络号相同,则目的处于直连网段
发送数据包时,判断是否直连,是则直接解析目的主机MAC地址(ARP),否则解析网关硬件地址(MAC)地址,之后以ARP代理发送出去
路由器单播ip包转发:
上层协议要求发送数据包,目的是否本机,是自己则提交上层协议处理,否则判断目的是否直连。若直连,解析目的主机硬件地址,否则解析下一跳路由器硬件地址(查看路由表),最后封装成帧并由相应出接口发出
若目的地址所处网络号与本机任一接口的网络号相同,则目的处于相应接口直连网段
路由器通过查找路由信息判断下一跳路由器地址
主机接受ip包:
目的ip地址等于自己ip地址
目的ip地址是一个广播地址
目的ip地址是一个组播地址,本机的某个服务属于此组播组
否则主机的网络层丢弃此ip包
广播风暴:
路由器转发广播将导致全网充斥广播,可能引发广播风暴
路由器默认不转发广播