分享

IP路由基础知识干货分享~~

 网络工程师老杨 2021-08-05

IP路由概述


当路由器收到一个IP报文时,路由器根据该IP报文的目的地址匹配路由条目(或路由表项)。

若有匹配的路由条目,则依据该条目中的出接口或下一跳等信息进行报文转发;若无匹配的路由条目,则路由器没有相关路由信息用于指导报文转发,此时会丢弃该报RIB与FIB。

具有路由功能的网络设备都维护两种重要的数据表:一是路由表RIB(Routing Information Base,路由信息库);二是转发表FIB。

  路由表:

  • 可以将路由表视为位于路由器的控制平面,实际上路由表并不直接指导数据转发。路由器在执行路由查询时,并不是在路由表中进行报文目的地址的查询,真正指导数据转发的是FIB表,路由器将路由表中的最优路由下载到FIB表,此后如果路由表中的相关表项发生变化,FIB表也将立即同步。

  • 由于两张表的一致性,且路由表阅读起来更直观,因此在绝大多数场合,在阐述路由器数据转发过程时,会用“路由表”这个说法,实际上,路由器查询的是FIB表,位于控制层面的路由表只是提供路由信息。

■  FIB表:

  • FIB表位于路由器的数据平面,亦被称为转发表项,每条转发表项都指定要到达某个目的地所需通过的出接口及下一跳IP地址等信息。


路由表


每个路由器都有路由表,而路由表又分为本地核心路由表和协议路由表。

■  路由表中的关键字段:

  • Destination:表示此路由的目的地址。用来标识IP包的目的地址或目的网络。

  • Mask:表示此目的地址的子网掩码长度。与目的地址一起来标识目的主机或路由器所在的网段的地址。

  • Proto(Protocol):表示学习此路由的路由协议。

  • Pre(Preference):表示此路由的路由协议优先级。

        ①路由器分别定义了外部优先级和内部优先级。外  部优先级是指用户可以手工为各路由协议配置的优先级,内部优先级则不能被用户手工修改。

        ②选择路由时先比较路由的外部优先级,当不同的路由协议配置了相同的优先级后,系统会通过内部优先级决定哪个路由协议发现的路由将成为最优路由。

  • Cost:路由开销。

  • NextHop:表示转发到此目的网络的下一跳。指明数据转发的下一个设备。

  • Interface:表示转发到此目的网络的出接口。指明数据将从本地路由器哪个接口转发出去。

■  Preference用于不同路由协议间路由优先级的比较,Cost用于同一种路由协议内部不同路由的优先级的比较。

■  注意:正文内的路由表为截取版,非完整路由表。


IP路由查找的最长匹配原则


■  路由器查找FIB表时,将报文的目的IP地址和FIB表中各表项的掩码进行按位“逻辑与”,得到的地址符合FIB表中的网络地址则匹配。

■  最终选择一个掩码最长的FIB表项转发报文。

思考:如果一个数据包的目的IP地址是10.3.3.3,路由器将会把这个数据包从哪个接口转发出去呢?

■  FIB表中每条转发项都指明到达某网段或某主机的报文应通过路由器的哪个物理接口或逻辑接口发送,然后就可到达该路径的下一个路由器,或者不再经过别的路由器而传送到直接相连的网络中的目的主机。

■  FIB表信息查看命令:display fib [ slot-id ]

  • slot-id:显示指定槽位号的FIB表信息。整数形式,取值范围请根据设备实际配置选取。

■  FIB表中的字段说明:

  • Total number of Routes:路由表总数。

  • Destination/Mask:目的地址/掩码长度。

  • Nexthop:下一跳。

  • Flag:当前标志,G、H、U、S、D、B的组合。

             ★ G(Gateway):网关路由,表示下一跳是网关。

             ★ H(Host):主机路由,表示该路由为主机路由。

             ★ U(Up):可用路由,表示该路由状态是Up。

             ★ S(Static):静态路由。

             ★ D(Dynamic):动态路由。

             ★ B(Black Hole):黑洞路由,表示下一跳是空接口。

  • TimeStamp:时间戳,表示该表项存在的时间,单位是秒。

  • Interface:到目的地址的出接口。

  • TunnelID:表示转发表项索引。该值不为0时,表示匹配该项的报文通过隧道转发(如:MPLS隧道转发)。该值为0时,表示报文不通过隧道转发。

  • 路由的来源

■  直连路由:直连接口所在网段的路由,由设备自动生成。

■  静态路由:由网络管理员手工配置的路由条目。

■  动态路由:路由器通过动态路由协议(如OSPF、IS-IS、BGP等)学习到的路由。

  • BGP(Border Gateway Protocol,边界网关协议)是一种实现AS(Autonomous System,自治系统)之间的路由可达,并选择最佳路由的距离矢量路由协议。

  • AS是指在一个实体管辖下的拥有相同选路策略的IP网络。


动态路由协议


动态路由协议根据作用范围不同,可分为:

  • 内部网关协议IGP(Interior Gateway Protocol):在一个自治系统内部运行。常见的IGP协议包括OSPF和IS-IS。

  • 外部网关协议EGP(Exterior Gateway Protocol):运行于不同自治系统之间。BGP是目前最常用的EGP协议。


路由迭代


路由必须有直连的下一跳才能够指导转发,静态路由或BGP路由的下一跳可能不是直连的邻居,因此需要计算出一个直连的下一跳,这个过程就叫做路由迭代。


数据转发流程


■  PC1发送数据包到PC2的流程如下:

  1. PC1将报文发往网关设备R1。

  2. R1查找路由表项,确定转发的下一跳、出接口,之后将报文转发给R2。

  3. R2通过查找路由表项转发给R3。

  4. R3收到后查找路由表项,发现IP报文的目的IP地址属于本地接口所在网段,则直接本地转发,最终该报文被发往目的主机PC2。

看到这里都是真爱了~~

小编就送个真爱粉福利!!

加助教好友~

回复“课件PPT”

即可领取 HCIP 最新Datacom 课件PPT

为了方便广大网络爱好学习者一起学(聚)习(众)交(搞)流(基),特开设华为干货交流群,里面已经上传大量学习资料,欢迎广大网络工程师进群学习!

球分享

球点赞

球在看

    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多