TCP/IP||IP选路

  1.选路原理

    在IP搜索路由表分为几个步骤

    1.搜索匹配的主机地址

    2.搜索匹配的网络地址

    3.搜索默认表项.

  IP层进行选路实际是一种选路机制,搜索路由表并决定向哪个网络接口发送分组,区别选路策略,IP层选路把路由放进哪个路由规则,而路由守护程序则选择选路策略

  

  2.路由表

    当执行netstat命令时,会列出路由表 -n用于打印IP地址,在路由表中的Flag标识会有5种标示表明路由状态

  •    U 标示路由可以使用
  •      G 标示该路由是一个网关,如果没有标志,表明目的地直接连接
  •      H 标示路由是一个主机,目的地是一个完整的地址,如果没有标记,表明是一个网络,目的地是一个网络地址,一个网络号或者与子网号结合
  •      D 标示该路由由重定向报文创建
  •      M 标示报文被修改

  标记G区分了间接路由和直接路由,区别在于发往直接路由的分组不但具有目的地端的IP地址,也具有链路层地址.当分组发往一个间接路由时,IP地址指明最终目的,但链路层指明的是网关

  Refent 指的是正在使用路由的活动进程个数,面向连接的协议链接时要固定路由,当主机与slip之间建立Telnet连接时可以看到参数值为1.

  use 显示的是通过路由发送的分组数,如果是路由的唯一用户,那么ping程序发送5个分组时,值为5,最后一列(Interface)为本地接口名字

  环回接口为lo0,没有设置G标志,指路由不是一个网关,

 默认路由指的是都一个或多个默认路由,UG表明是一个网关

 主机路由表的复杂性取决于主机所在网络的拓扑结构

    1.最简单的情况为主机没有任何网络相连,只能本省通信,只包含环回接口

    2.主机连接局域网,包含环回接口和局域网

  3. 初始化路由表

    每当初始化一个接口时,就为接口自动创建一个直接路由,在对于点对点链路和环回链路,路由到达主机,对于广播接口,路由到达网络

    到达不直接相连的主机或者网络路由必须以某种方式添加到路由表,可以通过运行下列两个命令来添加路由表选项

  

route add default sun 1
route add slip bsdi 1

  第三个参数标示目的端,第三个标示网关,最后一个标示路由的度量,route在度量大于0会为路由设置G标志,否则为0时不设置,

  4没有到达目的地的路由

    在没有默认项也没找到匹配项时,路由的选择取决于该IP数据报由主机产生的还是被转发,如果数据报是由本地主机产生,那么发送该数据报的应用程序返回一个差错,或者主机不可达差错.如果是被转发的数据报,那么向主机端发送一份ICMP不可达差错报文

  5.ICMP主机

    当路由器收到一份IP数据报但不能转发时,就会发送一份ICMp差错报,

  6.ICMP重定向差错

    当IP数据报应该发送另一个路由器时,收到数据报的路由器会发送ICMP重定向差错报文交给IP数据报的发送端,只有当主机可以选择路由器发送分组的情况下,才能看到ICMP重定向报文.

    

  1.假定主机发送IP数据报给R!,发现R2是发送该数据的下一站,当数据报发送给R2时,R1检测到他发送的接口与数据报到达接口相同.这样路由器发送重定向报文原始发送端提供线索

  2.R1发送报文给主机,告诉数据报发送R2而不是R1

   重定向一般让具有很少选路信息的主机建立合适的路由表,主机启动时可以只有一个默认表项,一旦发生错误,默认路由器进行重定向,并允许主机对路由表做出改动,ICMP重定向允许主机在选路时不具有智能特性,而把特性放在路由器端中,在ICMP重定向报文中,具有以下格式

  

  ICMP重定向报文的接收者必须查看3个IP地址  

    1.导致重定向的IP地址

    2.发送重定向报文的路由器的IP地址

    3.应该采用的路由器IP地址

  在代码描述中包含以下参数

    1.0:网络重定向

    2.1:主机重定向

    3.2:服务类型和网络重定向

    4 3:服务类型和主机重定向

  在ICMP重定向报文中包含许多规则,报文只能由路由器生成,不能由主机生成,报文为主机使用。

  7.ICMP路由器发现报文

  路由器在一份报文中可以通告多个地址,地址数指的是报文包含的地址数,地址大小指的是每个路由器32bit数目,始终为2,生存期指的是通告地址有效的时间(s)

  

  在路由器启动时,定义在所有广播或多播传送接口上发送报文,形式为随机发送,以减少与子网上其他路由器发送冲突的概率,每次通告间隔450s或者600s,一份一份通告报文的默认周期为30min

  使用生命周期域的另一个时机是当路由器的某个接口被关闭时,路由可以在该接口发送最后一个通告报文,并把生命周期设为0

  在主机操作引导一般发送3份路由的请求报文,每3秒发送一次,一旦接收到一个有效的报文,就停止发送.

原文地址:https://www.cnblogs.com/EraserHead/p/6667693.html