目录
概念辨析:主机、路由器节点
- 主机:配备有IP地址,但不进行路由控制的设备
- 路由器:既配有IP地址又配有路由控制能力的设备
- 节点:主机和路由器的统称
IP转发步骤
- 检查数据报头部的TTL值,如果TTL值已经是0,则丢弃该数据报。
- 查看数据报头部的严格源路由选择选项,如果该选项被设置,则监测数据报的目标IP地址是否是本机的某个IP地址,如果不是,则发送一个ICMP源站选路失败报文给发送端。
- 如果有必要,则给源端发送一个ICMP重定向报文,以告诉它一个更合理的下一跳路由器。
- 将TTL值减一。
- 处理IP头部选项。
- 如果有必要,则执行IP分片操作。
路由控制
将分组数据发送到最终目标地址的功能。
步骤:
- 查找路由表和数据报的目标IP地址完全匹配的主机IP地址,如果找到,则使用该路由项,如果没有找到,则执行步骤二。
- 查找路由表中和数据报的目标IP地址具有完全相同网路ID的网路IP地址,如果找到,就是用该路由项,如果没有找到,则执行步骤三。
- 选择默认路由项,这通常意味着数据报的下一跳路由是网关。
多跳路由
路由器或者主机在转发IP数据包时只指定下一个路由器或主机,而不是将最终目标地址为止的所有通路表示出来。
当某个IP包到达路由器的时候,路由器首先查找其目标地址,从而再决定下一步应该再将这包发往哪个路由器,然后将包发送过去。
默认路由与主机路由
默认路由:
- 路由表中任何一个地址都能与之匹配的记录
- 一般标记为0.0.0.0/0或者default,表示没有标识IP地址
主机路由:
- “IP地址/32”被称为主机路由
- 主机路由是指整个IP地址的所有位都将参与路由;
- 主机路由常用于不希望通过网络地址路由的情况;
路由表的聚合
路由表的聚合将已知的路由信息传送给周围其他的路由器,以达到控制路由信息的目的
面向无连接与面向有连接
- 面向无连接:不需要建立与对端目标地址之间的连接,上层遇到需要发送的数据会被立即发送;如IP;可靠性差;
- 面向有连接:需要事先建立连接,没有建立连接不可能发送数据;如TCP;可靠性高;
全局地址与私有地址
全局地址:
- 需要在整个互联网范围内保持统一
- 除去私有地址之外的都是全局地址
- 全局地址有ICANN统一进行管理
私有地址:
- 在同一域内保持统一即可
- 私有地址的范围:
- 不同域内出现相同的私有地址不会影响使用
- 私有地址结合NAT技术成为解决IP地址分配的主流解决方案
子网掩码
- 将IP地址进行分配会造成浪费,所以用子网掩码减少浪费
- 通过子网掩码将原来的A类、B类、C类等分类中主机地址部分用作子网地址,可将原网络分成多个物理网络的一种机制
- 所以IP地址有两种识别码:IP地址本身和表示网络内部的子网掩码
子网掩码的两种表示方式
方法一:将子网掩码与IP地址分别用两行表示
方法二:在每个IP地址的后面追加网络地址的位数,用“/”号隔开
课省略后面的0
CIDR与VLSM
CIDR和VLSM可以缓解全局IP地址不够用的问题,但是无法彻底解决,所以要IPv6
CLDR:
- 无类域间选路 Classless inter-Domain Routing
- 采用任意长度分割IP地址的网络标识和主机标识
- 任意长的连续多个地址都可以划分到一个较大的网络内
- 能够有效利用当前IPv4地址,同时降低路由器的负担
VLSM:
- 可变长子网掩码 Variable-Length Subnet Masks
- 可以随机修改组织内各个部门的子网掩码长度的机制
- 可以通过域间路由协议转换成RIP2和OSPF实现
- 理论上能将IP地址的利用率提高50%