当路由器收到一个IP报文时,路由器根据该IP报文的目的地址匹配路由条目(路由表)
1.有匹配的路由条目,则选则该条目中的出接口或下一跳等信息进行报文转发
2.没有任何匹配的路由条目,路由器没有对应的路由信息用于指导报文转发,就会丢弃该报文
RIB与FIB
具备路由功能的网络设备需要维护两张表:
1.路由表(RIB)
2.转发表(FIB)
每台路路由器都会维护一张本地的路由表,除外路由器也同时维护路由协议自己的路由表
路由器会将本地路由表的最优的路由下载到fib表,路由器会选择fib表进行报文的转发
IP路由最长匹配原则
当路由器查找FIB表时,将报文的目的IP地址和FIB表中的表项的子网掩码进行与运算,得到的地址要符合fib表中的网络地址,最后会选择掩码最长的报文表项进行报文的转发
路由来源
1.直连路由:直连接口所在网段的路由,设置自身生成
2.静态路由:由管理员手工配置
3.动态路由:路由器通过动态路由协议学习到的路由(ospf ,isis,bgp)
BGP(边界网关路由协议),是一种实现AS(自治系统)之间的路由可达,并选择最优路由的距离矢量路由协议
AS是指在一个实体管辖机构下的具有相同选路策略的IP网络
动态路由协议
动态路由分为两种
1.内部网关路由协议(IGP);运行在一个自治系统内部,常见的如:OSPF ,ISIS
2.外部网关路由协议(EGP):运行在不同的自治系统之间,bgp是目前常用的EGP协议
路由迭代
路由必须有直连的下一跳才能指导报文的转发,比如静态路由或者BGP路由的下一跳可能不是直连的邻居,所以就需要计算一个直连的下一跳,这个过程就叫路由迭代
比如我们给R1增加一条到达10.0.23.3的路由,让到达192.168.21.0/24的路由能够完成迭代
ip router-static 192.168.21.0 24 10.0.23.3
迭代到直连路由的下一跳地址
ip router-static 10.0.23.0 24 10.0.12.2
目的网络 | 下一跳 | 出接口 |
192.168.21.0/24 | 10.0.23.3 | GE0/0/0 |
10.0.23.0/24 | 10.0.12.2 | GE0/0/0 |
数据的转发流程
路由引入的概念
路由引入是指将路由信息从一种路由协议引入到另一种路由协议
通过路由引入可以实现路由信息在不同的路由协议之间进行传递
执行路由引入时,可以对路由进行控制,就可以更好地对业务流量的灵活控制
例如上图
如果想要在OSPF和IS-IS路由域的边界设备上进行操作,使路由信息在两个动态路由协议之间传递。部署较为简单,但可能有环路风险
路由引入的方向性
将路由信息从路由协议A引入到路由协议B(A to B),则路由协议B可以获取A中的路由信息,但是,A并不知道B路由协议中的路由信息,除非配置B TO A 方向的路由引入
路由引入注意事项:
1.路由优先级
2.路由回传
3.路由的度量值
路由引入:路由优先级
场景描述:
- Direct:0
- OSPF:10
- IS-IS:15
- Static:60
- OSPF ASE:150
- OSPF NSSA:150
- IBGP:255
- EBGP:255
路由回传
场景描述:
路由引入:路由度量值
1.动态路由协议之间的路由引入
2.1.引入直连路由到动态路由协议
3.引入静态路由到动态路由协议