学习沉淀成长分享 动态路由协议 RIP 红茶三杯 ( 朱 SIR) 微博 :http://t.sina.com/vinsoney Latest update: 2012-06-01
Content 动态路由协议概述 RIP RIP 基础实验
动态路由协议概述 什么是路由 什么是动态路由协议 动态路由协议的分类
什么是路由 IP header Data FE1/0 PC1 192.168.1.1/24 R1 PC2 192.168.2.1/24 Routing Table of R1
什么是路由 当路由器 ( 或其他三层设备 ) 收到一个 IP 数据包时, 会在路由表 中查询数据包的目的 IP 地址, 在找到最匹配的路由表项后, 将数 据包按照这个表项所指示的下一跳 IP 地址或出接口去转发
查看 IP 路由表 R1# show ip route Gateway of last resort is not set 2.0.0.0/24 is subnetted, 1 subnets O C 2.2.2.0 [110/65] via 9.9.12.2, 00:00:02, Serial0/0 9.0.0.0/24 is subnetted, 1 subnets 9.9.12.0 is directly connected, Serial0/0
路由协议的分类 静态路由 根据数据访问需求手工在每台设备上进行静态路由条目的创建 动态路由协议 路由器自动进行路由或用于路由计算的相关信息的更新和同步, 并且当网络拓扑变更时, 能够动态收敛 R1# show ip route 2.0.0.0/24 is subnetted, 1 subnets O 2.2.2.0 [110/65] via 9.9.12.2, 00:00:02, Serial0/0 9.0.0.0/24 is subnetted, 1 subnets C 9.9.12.0 is directly connected, Serial0/0
动态路由协议的分类 按工作区域分类 IGP(Interior Gateway Protocols) 内部网关协议 EGP(Exterior Gateway Protocols)) 外部网关协议 RIP OSPF EIGRP IS-IS BGP 按工作机制及算法分类 (Distance Vector Routing Protocols) 距离矢量路由协议 (Link-State Routing Protocol) 链路状态路由协议 RIP IGRP EIGRP( 高级 ) OSPF IS-IS
RIP 距离矢量路由协议概述 RIP 概述 RIP 路由更新过程 路由环路的产生及避免 RIP 基本配置
距离矢量路由选择协议 使用距离矢量路由协议的路由器并不了解网络的拓扑 该路由器只知道 : 自身与目的网络之间的距离 应该往哪个方向或使用哪个接口转发数据包 路由更新 : 我这有个 2.2.2.0 R1 S0 S0 R2 E0 2.2.2.0/24 从这个方向可以到 2.2.2.0/24 需经过 1 跳
距离矢量路由选择协议 直连路由写入路由表 S0/1 S0/0 S0/0 S0/1 S0/0 S0/1 R1 R2 R3 192.168.1.0/24 192.168.12.0/24 192.168.23.0/24 192.168.3.0/24 R1 的路由表 192.168.12.0/24 S0/0 0 192.168.1.0/24 S0/1 0 R2 的路由表 192.168.12.0/24 S0/0 0 192.168.23.0/24 S0/1 0 R3 的路由表 192.168.23.0/24 S0/0 0 192.168.3.0/24 S0/1 0
距离矢量路由选择协议 初次路由信息交换 路由表路由表路由表 S0/1 S0/0 S0/0 S0/1 S0/0 S0/1 R1 R2 R3 192.168.1.0/24 192.168.12.0/24 192.168.23.0/24 192.168.3.0/24 R1 的路由表 192.168.12.0/24 S0/0 0 192.168.1.0/24 S0/1 0 192.168.23.0/24 S0/0 1 R2 的路由表 192.168.12.0/24 S0/0 0 192.168.23.0/24 S0/1 0 192.168.1.0/24 S0/0 1 192.168.3.0/24 S0/1 1 R3 的路由表 192.168.23.0/24 S0/0 0 192.168.3.0/24 S0/1 0 192.168.12.0/24 S0/0 1
距离矢量路由选择协议 下一个更新周期到来 路由表路由表路由表 S0/1 S0/0 S0/0 S0/1 S0/0 S0/1 R1 R2 R3 192.168.1.0/24 192.168.12.0/24 192.168.23.0/24 192.168.3.0/24 R1 的路由表 192.168.12.0/24 S0/0 0 192.168.1.0/24 S0/1 0 192.168.23.0/24 S0/0 1 192.168.3.0/24 S0/0 2 R2 的路由表 192.168.12.0/24 S0/0 0 192.168.23.0/24 S0/1 0 192.168.1.0/24 S0/0 1 192.168.3.0/24 S0/1 1 R3 的路由表 192.168.23.0/24 S0/0 0 192.168.3.0/24 S0/1 0 192.168.12.0/24 S0/0 1 192.168.1.0/24 S0/0 2
距离矢量路由选择协议 路由器收敛完成 当所有路由表包含相同网络可达性信息 网络 ( 路由 ) 进入一个稳态 路由器继续交换路由信息 当无新路由信息被更新时收敛结束 网络在达到收敛前无法完全正常工作
Routing Information Protocols RIP 是应用及开发较早的路由协议, 是典型的距离矢量路由协议 适用于小型网络, 最大跳数 15 跳 (16 跳视为不可达 ) RIP 是基于 UDP 的, 使用端口号 520 在 CISCO IOS 平台上的管理性距离为 120
RIP versions RIPv1 使用广播更新路由表有类路由协议不支持 VLSM 没有认证功能不支持手工汇总不支持路由标记 (Tag) 更新消息中的路由条目没有 Next-hop 信息 RIPv2 使用组播更新路由表无类路由协议支持 VLSM 有认证功能支持手工汇总支持路由标记功能更新消息中的路由条目含有 Next-hop 信息 RIPng 是 IPv6 的 RIP
Metric 路由度量值 RIP 以跳数 (Hops) 作为 metric 10M Link 1G Link Route: 5.5.5.0/24 Metric=2 Hops B Route: 5.5.5.0/24 Metric=1 Hop A E 5.5.5.0/24 Route: 5.5.5.0/24 Metric=3 Hops C D Route: 5.5.5.0/24 Metric=2 Hops Route: 5.5.5.0/24 Metric=1 Hop
Metric 路由度量值 RIP 度量值的查看 R1# show ip route C R 192.168.12.0/24 is directly connected, Serial0/0 192.168.23.0/24 [120/1] via 192.168.12.2, 00:00:08, Serial0/0 Metric = 1 跳 S0/0 192.168.12.1/24 S0/1 192.168.23.2/24 R1 S0/0 192.168.12.2/24 R2 S0/0 192.168.23.3/24 R3
Administrative Distance 管理距离 10.1.1.0/24 R1 R3 S0/0 S0/1 RIPv2 R2 OSPF R2 的路由表 Protocol Network AD Exit Intf OSPF 10.1.1.0/24 110 S0/1
Administrative Distance 管理距离 常见的路由协议及其对应的 AD 值 (On Cisco IOS Platform) Routing Protocols AD 备注 直连接口 0 关联出接口的静态路由 1 Metric =0 关联下一跳的静态路由 1 Metric =0 EIGRP 汇总路由 5 外部 BGP 20 内部 EIGRP 90 IGRP 100 OSPF 110 RIPv1 v2 120 外部 EIGRP 170 内部 BGP 200
距离矢量路由选择协议 周期性泛洪整张路由表 依照传闻的更新 逐跳更新 R1 s Routing Table 5 R2 s Routing Table 3 R3 s Routing Table 1 R1 s Routing Table 6 R2 s Routing Table 4 R3 s Routing Table R1 R2 R3 2
环路的产生 S0/1 S0/0 S0/0 S0/1 S0/0 S0/1 R1 R2 R3 192.168.1.0/24 192.168.12.0/24 192.168.23.0/24 192.168.3.0/24 R1 的路由表 192.168.12.0/24 S0/0 0 192.168.1.0/24 S0/1 0 192.168.23.0/24 S0/0 1 192.168.3.0/24 S0/0 2 R2 的路由表 192.168.12.0/24 S0/0 0 192.168.23.0/24 S0/1 0 192.168.1.0/24 S0/0 1 192.168.3.0/24 S0/1 1 R3 的路由表 192.168.23.0/24 S0/0 0 192.168.3.0/24 S0/1 0 192.168.12.0/24 S0/0 1 192.168.1.0/24 S0/0 2
环路的产生 RIP 路由更新 S0/1 S0/0 S0/0 S0/1 S0/0 R1 R2 R3 192.168.1.0/24 192.168.12.0/24 192.168.23.0/24 R1 的路由表 192.168.12.0/24 S0/0 0 192.168.1.0/24 S0/1 0 192.168.23.0/24 S0/0 1 192.168.2.0/24 S0/0 2 R2 的路由表 192.168.12.0/24 S0/0 0 192.168.23.0/24 S0/1 0 192.168.1.0/24 S0/0 1 192.168.2.0/24 S0/1 1 R3 的路由表 192.168.23.0/24 S0/0 0 192.168.3.0/24 S0/0 2 192.168.12.0/24 S0/0 1 192.168.1.0/24 S0/0 2
环路的产生 RIP 路由更新 RIP 路由更新 S0/1 S0/0 S0/0 S0/1 S0/0 R1 R2 R3 192.168.1.0/24 192.168.12.0/24 192.168.23.0/24 R1 的路由表 192.168.12.0/24 S0/0 0 192.168.1.0/24 S0/1 0 192.168.23.0/24 S0/0 1 192.168.3.0/24 S0/0 4 R2 的路由表 192.168.12.0/24 S0/0 0 192.168.23.0/24 S0/1 0 192.168.1.0/24 S0/0 0 192.168.3.0/24 S0/1 3 R3 的路由表 192.168.23.0/24 S0/0 0 192.168.3.0/24 S0/0 2 192.168.12.0/24 S0/0 1 192.168.1.0/24 S0/0 2
有多种机制可以消除路由环路 这些机制包括 : 定义最大跳数 水平分割 毒性路由 毒性逆转 抑制计时器 触发更新
定义最大跳数 (16 跳为不可达 ) RIP 定义跳数最大值为 15 条, 也就意味着 16 跳被视为不可达 通过定义最大跳数可以很好的防止路由度量值计数到无穷大 RIP 最大跳数的定义极大程度上限制了 RIP 所能支持的网络规模
水平分割 Split Horizon RIP 路由器不会将在某个接口上收到的 RIP 路由再从这个接口更新出去, 这就 是水平分割规则 RIP 更新 1.1.1.0/24 1.1.1.0/24 R1 S0/0 S0/0 R2 RIP 更新 1.1.1.0/24
毒性路由 RoutePoisoning 当路由器感知到某个网段发生故障, 可以立即泛洪该网段的路由 ( 将其跳数 设置为 16 跳, 也就是不可达 ), 以此来快速刷新网络中其他路由器的路由表 RIP 更新 1.1.1.0/24 16 跳 1.1.1.0/24 R1 S0/0 S0/0 R2
触发更新 Triggered Update 拓扑发生变更时, 路由器立即发送更新消息, 而不等更新计时器超时 RIP Response MSG 192.168.3.0/24=16 Hops RIP Response MSG 192.168.3.0/24=16 Hops S0/1 S0/0 S0/0 S0/1 S0/0 S0/1 R1 R2 R3 192.168.1.0/24 192.168.12.0/24 192.168.23.0/24 192.168.3.0/24
RIP 的配置 Router(config)# router rip 激活 RIP 路由进程 Router(config-router)# network network-number 在指定的网段上激活 RIP RIP 只支持主类网络宣告 Router(config-router)# version 1/2 指定 RIP 的版本
RIP 基础实验
RIPv2 基础实验 FE1/0 S0/0 192.168.12.1/24 S0/1 192.168.23.2/24 1.1.1.254/24 R1 R2 R3 S0/0 192.168.12.2/24 S0/0 192.168.23.3/24 FE1/0 3.3.3.254/24 R1 的配置 : R2 的配置 : R3 的配置 : router rip version 2 network 1.0.0.0 network 192.168.12.0 router rip version 2 network 192.168.12.0 network 192.168.23.0 router rip version 2 network 192.168.23.0 network 3.0.0.0
RIPv2 的自动汇总 RIPv2 在主类网络边界会自 动对路由进行汇总 R1 R2 R3 192.168.12.0/24 192.168.23.0/24 172.16.1.0/24 172.16.2.0/24 172.16.3.0/24 RIPv2 R 172.16.0.0/16 RIPv2 Auto-summary R1 192.168.12.0/24 R2 192.168.23.0/24 R3 172.16.1.0/24 172.16.2.0/24 172.16.3.0/24 RIPv2
RIPv2 的自动汇总 R1 R3 都处于主类网络边界, 因此都将 172 的明 细路由汇总为 172.16.0.0 传递给 R2, 此时 R2 上 172.16.0.0/16 的路由将出现等价负载均衡 172.16.33.0/24 172.16.34.0/24 172.16.45.0/24 R 172.16.0.0/16 R 172.16.0.0/16 R1 R2 R3 192.168.12.0/24 192.168.23.0/24 172.16.1.0/24 172.16.2.0/24 172.16.3.0/24
RIP 的手工汇总 R 172.16.0.0/22 R1 R2 R3 FE0/0 172.16.1.0/24 172.16.2.0/24 172.16.3.0/24 RIPv2 router rip version 2 no auto-summary!! 先关闭自动汇总 interface fastethernet0/0 ip summary-address rip 172.16.0.0 255.255.252.0 RIP 路由汇总存在什么问题? RIPv2 的手工路由汇总不支持 CIDR( 超网 )
FAQ 什么是 RFC
学习沉淀成长分享 关注 @ 红茶三杯 :weibo.com/vinsoney Thank You