文档名称 : 路由信息协议 RIP 文档分类 : 实验文档 ( 综合性 ) 撰 写 :Magic 收档日期 :2008-05-08-1 -
Rip 综合性实验, 拓扑如下 : 实 验 批注 [M1]: 默认不是 V1, 也不是 V2, 发送 V1, 接收 V1 和 V2 1. 配置成 V2 版本, 发送接收 V2 版本的路由选择更新 2. 配置成 V1 版本, 发送接收 V1 版本的路由选择更新 3. 以组播 224.0.0.9 发送路由选择更新 批注 [M2]: 关闭自动汇总, 默认在网络边界汇总为有类网络边界 Step1: 启用 RIP,R1 R4 启用 Rip v2,r2 启用 Rip v1,r3 不运行 Rip 协议 R1(config)# router rip R1(config)# version 2 R1(config)# no auto-summary R1(config)# network 192.168.1.0 R1(config)# network 14.0.0.0 R1(config)# network 12.0.0.0 R3(config)# ip route 0.0.0.0 0.0.0.0 13.0.0.1 其它配置省略 Step2: 控制接口的路由更新行为 R1(config-router)# passive-interface default R1(config-router)# no passive-interface f0/0 R1(config-router)# neighbor 12.0.0.2 批注 [M3]: Network 含义 : 1. 通告直连网络 ; 2. 在接口上启用路由选择协议 可以将这三条 network 命令简写成 network 0.0.0.0, 意为在所有接口启用该路由选择协议, 并通告所有处在活动状态的接口所在的网络 批注 [M4]: R3 不启用 Rip 协议, 需指定一条去往未知网络的默认路由批注 [M5]: 参数 default, 禁止所有接口发送路由选择更新 对于 Rip 来讲, 该命令告诉路由器不发送更新, 只接收更新 对于 Eigrp 和 OSPF 不收也不发 批注 [M6]: 允许某个接口发送路由选择更新 去掉 no, 将禁止某个接口发送路由选择更新批注 [M7]: 手工指定邻居 R2, 对于 passive 的接口, 可用 neighbor 手工指定邻居 只适用于 Rip, 对于 Eigrp 和 OSPF,passive 的接口, 用该条命令指定邻居无效 - 2 -
Step3: 配置接口的版本号出于实验目的, 为更好的观察 Rip 通告路由选择更新的行为, 先阻止 R2 和 R4 通过 WAN 口发送路由选择更新 : R2(config-router)# passive-interface s1/1 R4(config-router)# passive-interface s1/0 观察 Rip 通告路由选择更新的行为 ( 讨论 4.0.0.0 网络 ) 因 R2 和 R4 禁止了通过 WAN 口发送路由选择更新, 因此, 针对 4.0.0.0 网络的路 由选择更新的传递路径为 :R4->R1->R2 由于 R1 和 R4 运行的是 Rip v2 协议, 因此 R1 和 R4 上所有参与 Rip 路由选择进 程的接口都将以 v2 版本运行,R4 以 v2 版本的形式向 R1 通告 4.0.0.0 网络 然而由于 R2 是以 Rip v1 协议运行的, 将导致无法与 R4 共享路由选择更新, 因此必须手工指定 R4 串口 s1/1 发送和接收的 Rip 版本号 R1(config)# int s1/0 R1(config-if)# ip rip send version 1 R1(config-if)# ip rip receive version 1 对于 R1 收到的 v1 版本的路由选择更新 (2.0.0.0 网络 ), 将以 v2 的形式发送给 R4 同样, 为了能够让 R2 和 R4 交换路由选择更新, 也要手工配置 R4 串口 s1/0 发送 和接收的 Rip 版本号 : R4(config)# int s1/0 R4(config-if)# ip rip send version 1 R4(config-if)# ip rip receive version 1 Step4:R4 对 R1 通告一条 4.0.0.0/8 的汇总路由 ( 链路汇总, 即接口汇总 ) 对于 R4 两个 4.0.0.0 子网络,R1 上会有两条 4.0.0.0 子网络的明细路由, 因运行 Rip v2 且关闭了自动汇总 而在 R2 上, 因 R1 上的 serial 1/0 运行的 Rip 版本是 V1, 根据有类网 络的路由发送和接收原则,R2 上只有一条 4.0.0.0/8 的有类网络边界汇总路由 - 3 -
启用接口汇总, 让 R1 上也只有一条 4.0.0.0/8 位的汇总路由 R4(config)# int f0/0 R4(config)# ip summary-address rip 4.0.0.0 255.0.0.0 批注 [M8]: Rip 只能汇总为有类网络边界, 不支持 CIDR 汇总 Step5: 实现 R4 去往 R2 的 2.2.2.0/24 的负载均衡 方法 1:R4 上 ( 影响本路由器及下游路由器的 Metric 计算 ) R2(config-router)# no passive-interface s1/1 R4(config)# access-list 2 permit 2.0.0.0 0.255.255.255 R4(config) # router rip R4(config-router)# offset-list 2 in 1 serial 1/0 批注 [M9]: 前面的实验, 我们手工禁止了 s1/1 接口发送路由选择更新 这里将之开启, 让 R4 可以从 R2 和 R1 两个方向收到 2.2.2.0/24 网络的路由通告 R4 上的 s1/0 还是 passive 状态 批注 [M10]: 由于 R2 是以 V1 版本运行的, 因此默认情况下只会通告 2.0.0.0/8 的有类网络边界汇总路由 如果这里将 2.0.0.0 0.255.255.255, 改成 2.2.2.0 0.0.0.255 将无法实现负载均衡 方法 2: 在 R2 上 ( 不影响本地, 影响下游路由器的 metric 计算 ) R2(config-router)# no passive-interface s1/1 R2(config)# access-list 2 permit 2.0.0.0 0.255.255.255 R2(config-router)# offset-list 2 out 1 serial 1/1 批注 [M11]: 偏移列表, 在 R4 的 seaial1/0 口上对来自 R2 的 2.0.0.0 网络的 metric 加 1 这样, 不管走 R2 还是 R1 都是 2 跳 - 4 -
下面的这张图, 就是在 R2 上配置了 access-list 2 permit 2.2.2.0 0.0.0.255 以后, 在 R4 所显示的 debug ip rip 信息 Step6:R1 通告默认网络 R1 只要能到达那个网络, 就能通告默认路由 对于 Eigrp OSPF 除了要能到达那个网各, 其次还要 network 了该网络 方法 1:ip default-network R1(config)# ip default-network 13.0.0.0 这种方法会在 R1 上生成一条静态默认路由, 而在 R2 R4 上会有指向一条指已的默认路由 方法 2: 用自己的环回口 R1(config)# int lo192 R1(config)# ip add 192.18.1.1 255.255.255.0 R1(config)# ip default-network 192.168.1.0 批注 [M12]: 这个地址建议使用主类网络地址, 不建议使用子网地址 方法 3:default-information originate R1(config)# router rip - 5 -
R1(config-router)# default-information originate 这种方法, 在 R1 上不会生成任何默认路由, 由 Rip 向邻居通告一条默认路由 三种方法都将导致 R2 R4 生成默认路由 至此, 观察 R4 能否 ping 通 R3 的 3.0.0.0 网络? 不能 原因,R1 只通告给 R2 和 R4 对于末知网络的分组, 都使用指向自己的默认路由转 发分组, 但在 R1 并不知道去往外部网络的路径 因此须在 R1 上配置一条去往外部网络的静态默认路由 R1(config)# ip route 0.0.0.0 0.0.0.0 serial 1/1 Step7:Rip 的认证 ( 链路认正, 即接口认证 ) V1 不支持 ;V2 支持明文 密文认证 明文发送的是密钥本身, 而密文, 发送则是根据 路由选择协议 密钥 ID 以及密钥生成的密钥摘要消息, 不发送密钥本身 - 6 -
在 R1 和 R3 之间启用认证,R3 上启用 Rip v2 协议 R3(config)# router rip R3(config)# version 2 R3(config)# no au R3(config)# network 0.0.0.0 R1(config)# router rip R1(config-router)# network 13.0.0.0 R1(config-router)# no passive-interface s1/1 1. 全局模式, 配置 key-chain R1(config)# key chain r1 R1(config-keychain)# key 1 R1(config-keychain-key)# key-string ccnp R3(config)# key chain r3 R3(config-keychain)# key 3 R3(config-keychain-key)# key-string ccnp 2. 接口下调用 R1(config)# int s1/1 R1(config-if)# ip rip authentication key-chain r1 R3(config)# int s1/0 R3(config-if)# ip rip authentication key-chain r3 3. 接口下启用认证类型 R1(config-if)# ip rip authentication mode md5 R3(config-if)# ip rip authentication mode md5 认证没有通过的 debug 信息 批注 [M13]: 定义钥匙串,r1 为名称, 只有本地意义 对于多条链路采用不同密钥的, 则每条链路都要定义一个钥匙串 批注 [M14]: 定义钥匙 ID, 具有本地意义 Eigrp 与 Rip 一样, 钥匙串及 ID 都只有本地意义 而 OSPF 的认证,key id 与密钥要一样, 否则无法认证通过 对于有多个 key 时, 默认会 key 最小的那个, 并使用遇到的第一个有效密钥 批注 [M15]: 定义密码 两端要匹配 批注 [M16]: 定义钥匙串,r1 为名称, 只有本地意义 对于多条链路采用不同密钥的, 则每条链路都要定义一个钥匙串 批注 [M17]: 定义钥匙 ID, 具有本地意义 Eigrp 与 Rip 一样, 钥匙串及 ID 都只有本地意义 而 OSPF 的认证,key id 与密钥要一样, 否则无法认证通过 对于有多个 key 时, 默认会 key 最小的那个, 并使用遇到的第一个有效密钥 批注 [M18]: 定义密码 两端要匹配 批注 [M19]: 认证类型 : 1. 明文 text 认证 2. 密文 md5 认证认证类型要相同 - 7 -