思科课程-IP路由.ppt
第五讲:IP 路由,本章目标,通过本章的学习,您应该掌握以下内容:区分静态、动态路由的不同设置静态路由识别距离矢量的路由协议:RIP 和 IGRP设置Routing Information Protocol(RIP)设置Interior Gateway Routing Protocol(IGRP)利用show 和 debug 命令查看 IP 路由信息,Part.1 了解路由,路由协议,路由协议 用于路由器选择路径和管理路由表路由器路由的方式一旦选择了一条路径后,路由器将路由被路由协议 它是数据包的运输工具,NetworkProtocol,DestinationNetwork,ConnectedRIPIGRP,Exit Interface,E0S0S1,被路由协议:IP,IPX路由协议:RIP,IGRP,E0,S0,在TCP/IP协议栈中,Routed Protocol(IP)工作在网络层,而Routing Protocol工作在传输层或者应用层,他们之间的关系为:Routing Protocol 负责学习最佳路径,而Routed Protocol根据最佳路径将来自上层的信息封装在IP包里传输,路由协议和被路由协议的区别,要实现路由路由器必须知道:目的地址源地址所有可能的路由路径最佳路由路径如何管理路由信息,什么是路由,什么是路由,NetworkProtocol,DestinationNetwork,ConnectedLearned,10.120.2.0172.16.1.0,Exit Interface,E0S0,可路由协议:IP,路由器必须知道未和其直接相连的目的地址,E0,S0,什么是路由,路径选择发生在网络层,路由器使用网络拓补信息(要么是管理员手工配置的静态路由、要么是路由器通过路由协议动态学习到的动态路由)来计算到达目的网络的可用路径,并选择最优路径用于转发数据。路由是指导IP报文发送的路径信息,路由器根据数据包的目的网络地址把报文从适当的接口发送出去。一条路由信息应包含以下内容:目标网络(与报文的目的地址进行匹配,进行路由选择)、下一跳地址(指明路由的发送路径)、Metric和管理距离(华为叫作路由权和路由优先级,用于标示路径的好坏),管理距离Administrative Distances,管理距离主要用于不同路由协议之间的可信度。可信度的范围是:0 到255 之间,它表示一条路由选择信息源的可信性值.该值越小,可信度越高.0 为最信任,255 为最不信任即没有从这条线路将没有任何流量通过.,路由的不可信度,IGRPAdministrative Distance=100,Router D,Router B,Router A,Router C,RIPAdministrative Distance=120,E,I need to send a packet to Network E.Both router B and C will get it there.Which route is best?,一些常用路由协议默认的AD值,直接相连:0静态路由:1EIGRP:90IGRP:100OSPF:110RIP:120,关于路由的几个基本概念,静态路由(static)是人为配置的,动态路由(Dynamic)是路由器之间动态交换信息而生成的,因不断交换路由信息而占用了网络带宽。路由协议(routing protocol):是控制路由器之间如何相互交换路由信息的协议。被路由协议(routed protocol):被转发数据包所使用的网络层协议,是接受路由协议控制的对象。路由:是数据包在网络中转发和交换的过程。在静态路由中,当相应端口关闭后,sh ip route不会显示该路由,当端口恢复正常后,sh ip route又会显示该路由。管理距离(路由优先级)Administrative Distance:用于度量路由的可信度,值越小越可靠。,路由的分类,直连路由:与路由器端口直接相连的网络。静态路由:系统管理员手工配置到达目的网络的路由。默认路由(缺省路由):系统管理员手工配置的一种特殊静态路由,可以把所有找不到匹配路由的报文转发到指定的默认网关。动态路由:路由器根据路由选择协议从其它路由器动态学习到的到达目的网络的路径,可以根据网络拓补结构的变化动态地更新路由信息。,静态路由由网络管理员在路由器上手工添加路由信息以实现路由目的,动态路由根据网络结构或流量的变化,路由协议会自动调整路由信息以实现路由,静态路由和动态路由,RouterA#sh ip routeCodes:C-connected,S-static,I-IGRP,R-RIP,M-mobile,B BGP,D-EIGRP,EX-EIGRP external,O-OSPF,IA-OSPF inter area,N1-OSPF NSSA external type 1,N2-OSPF NSSA external type 2,E1-OSPF external type 1,E2-OSPF external type 2,E EGP,i-IS-IS,L1-IS-IS level-1,L2-IS-IS level-2,*-candidate default,U-per-user static route,o ODR,T-traffic engineered routeGateway of last resort is not setsubnetted,1 subnetsC 172.16.1.0 is directly connected,Ethernet0subnetted,2 subnetsR 10.2.2.0 120/1 via 10.1.1.2,00:00:07,Serial2C 10.1.1.0 is directly connected,Serial2R 192.168.1.0/24 120/2 via 10.1.1.2,00:00:07,Serial2,Cisco的路由表,NetworkProtocol,DestinationNetwork,ConnectedLearned,10.120.2.0172.16.1.0,Exit Interface,E0S0,路由器开始只知道与自己直连的网络,必须学习那些与自己非直连的目的网络,目的网络,管理距离AD(区分不同路由协议的可信度)和度量值metric(在同一路由协议内比较不同路由的代价),下一跳IP地址,转发接口,Part.2 配置静态路由,SO,静态路由,B,Network,A,在小型网络中适宜设置静态路由。使用静态路由可有效保障网络安全、节约带宽,但当网络改变时,静态路由不会自动改变,必须要有网络管理员的介入。静态路由必须在参与通信的两端路由器上进行双向配置。在静态路由中,当相应端口关闭后,sh ip route不会显示该路由,当端口恢复正常后,sh ip route又会显示该路由。,B,Stub Network,指定一条可以到达目标网络的路径,Router(config)#ip route network mask address|interfacedistance permanent,静态路由的配置(Cisco),Destination-network目标网络或子网mask子网掩码Next-hop-address下一跳路由器的IP地址interface到达目标网络的接口名称Distance管理距离,用于确定该路由信息的可信程度Permanent即使接口down掉了,该路由不消失,Stub Network,ip,SO,静态路由的例子,B,Network,A,B,这是一条单方向的路径,必须配置一条相反的路径。,华为:ip route 172.16.1.0 24 172.16.2.1,CISCO:,静态路由实验,(config)#Ip routing(config)#ip route network mask next-hop(config)#ip route 0.0.0.0 next-hop(config)#ip default-network network-number,Stub Network,ip route 0.0.0.0 172.16.2.2,缺省路由,SO,B,Network,A,B,使用缺省路由后,Stub Network可以到达路由器A以外的网络。0.0.0.0 代表任何网络默认路由最后起作用,即仅当路由表中没有明确的匹配项时才使用默认路由如报文的目的地不在路由表中且路由中没有缺省路由,那么该报文被丢弃的同时,返回源端一个ICMP报文指明该目的地址或网络不可达。,Part.3 了解动态路由,路由协议,路由协议 用于路由器选择路径和管理路由表。一旦选择了一条路径后,路由器将路由可路由协议。,NetworkProtocol,DestinationNetwork,ConnectedRIPIGRP,Exit Interface,E0S0S1,可路由协议:IP路由协议:RIP,IGRP,E0,S0,路由器可以同时运行多个独立的路由选择协议,并同时为几个被路由协议维护各自的路由表,被路由协议与路由协议,路由协议通过在路由器之间共享路由信息来支持被路由协议,路由信息在相邻路由器之间传递,确保所有路由器知道到网络中任何一个路由器的路径。常用的路由选择协议有RIP、IGRP、EIGRP、OSPF等。路由器可以同时运行多个独立的路由选择协议,并同时为几个被路由协议创建和维护各自的路由表,描述网络拓补结构,执行路由选择和数据包转发功能。被路由协议定义了数据包内各个字段的格式和用途,是一种网络层的封装协议,允许将数据从一个网络设备转发到另外一个网络设备。常用的被路由协议有TCP/IP、IPX/SPX、AppleTalk等。,动态路由与路由协议,动态路由选择使用了路由器的2个基本功能:维护路由表以路由更新的形式将网络拓补结构发生变化的信息及时发布给其它路由器,从而动态地适应网络拓补结构的变化。路由选择协议描述了路由器之间交换路由信息所使用的规则:怎样发送路由更新信息路由更新怎样包含在这些更新信息里面什么时候发布这些更新信息怎样定位路由更新信息的接收者,管理距离(路由优先级),管理距离(路由优先级):用于区分路由信息的可信度,值越小越可信。如果路由器通过不同的路由协议获得多条到达同一目的网络的路径,那么,从管理距离最小(优先级最高)的路由协议学习到的路由被优先加入路由表中。管理距离(路由优先级)是根据路由协议算法的优劣程度等因素得出的经验数值,管理员可以手工修改。,路由协议的分类,距离矢量,混合路由,链路状态,C,B,A,D,C,D,B,A,距离矢量的路由协议,距离矢量算法运用矢量叠加的方式来获取和计算路由信息。把每一条路由信息看作由目的网络和距离(用metric来度量)组成的矢量,每个路由器从其邻居获得路由信息,并在获得的每一条路由信息上叠加从自己到达这个邻居的距离矢量,从而形成自己的路由信息。,距离矢量路由协议的特点,距离矢量路由协议在相邻路由器之间进行路由信息的传递,路由器周期性地把自己的路由表routing table传送给邻居路由器neighbor routers。距离矢量协议路由器直接传递各自的路由表信息,路由器从邻居得到路由信息后更新自己的路由表,并把自己更新后的路由表传给邻居,这样一级一级的传递下下达到整个网络的同步。每个路由器都不知道整个网络的拓补结构,只知道与自己直接相连的网络情况,并根据从邻居得到的路由信息来更新自己的路由表,然后周期性地发给自己的邻居。类似于十字路口的路标指示牌告诉行车者到达目标走哪个方向、还有多远实现和管理都比较简单收敛速度比较慢,周期更新报文数据量大,消耗较多的带宽为避免路由环路必须进行各种特殊处理基于距离矢量算法的路由协议有:rip、igrp等。,距离矢量选择最佳路径,用于确定最佳路由路径的参数信息,56,T1,56,T1,Ticks,hop count,B,A,Hop count,IPX,RIP,IGRP,BandwidthDelayLoadReliabilityMTU,距离矢量管理路由信息,路由表的更新过程将通过路由器之间一步一步来完成,A,更新路由表,距离矢量管理路由信息,路由表的更新过程将通过路由器之间一步一步来完成,A,更新路由表,距离矢量管理路由信息,路由表的更新过程将通过路由器之间一步一步来完成,A,B,更新路由表,更新路由表,路由器从收集到的源信息中选择到达目标地址的最佳路径,A,B,C,E0,S0,S0,S1,S0,E0,Routing Table,0,0,Routing Table,S0,0,E0,0,Routing Table,0,0,距离矢量源信息的获得,路由器从收集到的源信息中选择到达目标地址的最佳路径,A,B,C,E0,S0,S0,S1,S0,E0,Routing Table,Routing Table,0,0,1,1,Routing Table,S0,0,E0,0,1,1,0,0,距离矢量源信息的获得,距离矢量源信息的获得,路由器从收集到的源信息中选择到达目标地址的最佳路径,A,B,C,E0,S0,S0,S1,S0,E0,Routing Table,Routing Table,0,0,1,1,Routing Table,S0,0,E0,0,S0,1,2,1,2,0,0,链路状态协议,传递最佳的路径信息给其它的路由器,LSP数据包,SPF运算,拓补结构数据,最佳路由信息,路由表,C,A,D,B,链路状态协议Link-State Routing Protocols,链路状态路由选择算法也称为最短路径优先算法,每个路由器中都维护了整个网络完整的拓补结构信息。链路状态路由协议使用LSA(类似距离矢量协议的触发更新)、拓补结构数据库、SPF算法、结果SPF树生成自己的路由选择表。每个路由器都需要了解其相邻路由器的名字、到达该邻居的链路代价,并生成LSA数据包,发送给网络上所有的路由器;路由器在收到LSA数据包后存入自己的数据库,然后利用积累的LSA数据包来建立整个网络的结构,运行SPF算法来生成路由表。运行链路状态协议需要更多的内存、更强大的处理器,在网络初起过程中由于LSA的大量扩散需要消耗更多的带宽。,DV和LS的比较,距离矢量和环状路由的综合应用,混 合 路 由,选择基于距离矢量的路径Converge rapidly using 通过传递变化的更新信息达到快速收敛,平衡的路由,Part.4 配置动态RIP路由,路由器配置选择路由协议指定网络或端口,Network,IGRP,RIP,RIP,RIP,IGRP,IP路由的配置任务,同时运行多种路由选择协议时,从管理距离较小的协议得到的路由信息会覆盖从管理距离较大的协议得到的路由信息。,指定IP路由协议,Router(config)#router protocol keyword,指定与路由器直接相连的网络,Router(config-router)#network network-number,动态路由配置,19.2 kbps,T1,T1,T1,Hop 计算路由器每隔30秒更新Maximum six paths(default=4),在代价最小的等代价路径之间进行负载均衡,RIP 概 述,激活RIP协议,Router(config)#router rip,Router(config-router)#network network-number,RIP 配 置,选择所能到达的网络必须是有效的网络即A、B、C类网络号,不包括子网号和子网掩码,RIP配置的相关命令,Router(config-router)#Passive-interfaceRouter(config-router)#neighbor 对家的地址,RIP 配置举例,S2,E0,S3,1,S2,S3,A,B,C,172.16.2.0,E0,查看RIP信息,RouterA#sh ip protocolsRouting Protocol is rip Sending updates every 30 seconds,next due in 0 seconds Invalid after 180 seconds,hold down 180,flushed after 240 Outgoing update filter list for all interfaces is Incoming update filter list for all interfaces is Redistributing:rip Default version control:send version 1,receive any version Interface Send Recv Key-chain Ethernet0 1 1 2 Serial2 1 1 2 Routing for Networks:Routing Information Sources:Gateway Distance Last Update 10.1.1.2 120 00:00:10 Distance:(default is 120),S2,E0,S3,S2,S3,A,B,C,192.168.1.0,E0,查看路由表,RouterA#sh ip routeCodes:C-connected,S-static,I-IGRP,R-RIP,M-mobile,B-BGP D-EIGRP,EX-EIGRP external,O-OSPF,IA-OSPF inter area N1-OSPF NSSA external type 1,N2-OSPF NSSA external type 2 E1-OSPF external type 1,E2-OSPF external type 2,E-EGP i-IS-IS,L1-IS-IS level-1,L2-IS-IS level-2,*-candidate default U-per-user static route,o-ODR T-traffic engineered routeGateway of last resort is not setsubnetted,1 subnetsC 172.16.1.0 is directly connected,Ethernet0subnetted,2 subnetsR 10.2.2.0 120/1 via 10.1.1.2,00:00:07,Serial2C 10.1.1.0 is directly connected,Serial2R 192.168.1.0/24 120/2 via 10.1.1.2,00:00:07,Serial2,S2,E0,S3,S2,S3,A,B,C,192.168.1.0,E0,debug ip rip 命令,RouterA#debug ip ripRIP protocol debugging is onRouterA#00:06:24:RIP:received v1 update from 10.1.1.2 on Serial200:06:24:10.2.2.0 in 1 hops00:06:24:192.168.1.0 in 2 hops00:06:33:RIP:sending v1 update to 255.255.255.255 via Ethernet0(172.16.1.1)00:06:34:network 10.0.0.0,metric 100:06:34:network 192.168.1.0,metric 300:06:34:RIP:sending v1 update to 255.255.255.255 via Serial2(10.1.1.1)00:06:34:network 172.16.0.0,metric 1,S2,E0,S3,S2,S3,A,B,C,192.168.1.0,E0,RIP路由协议实验,首先删除以前配置的所有静态路由(config)#Ip routing(config)#router rip(config-router)#network network-number#sh ip route#sh ip protocol#debug ip rip,Part.5 配置IGRP路由,使用IGRP的网络较大缺省100hops,最大255hops支持多路径,IGRP 介 绍,IGRP,带宽(unit:KB/S)延迟时间(unit:10us)可靠性(from 0 to 255,bigger is more reliable)负载最大传输单元(unit:byte),19.2 kbps,19.2 kbps,IGRP 路径选择,Source,Destination,Maximum six paths(default=4)下一次所要到达的路由器必须接近目的网络在允许的参数内选择路径,New Route,Initial Route,Source,Destination,IGRP 的不平衡路径,配 置 IGRP,Router(config-router)#network network-number,指定可以到达的网络,Router(config)#router igrp autonomous-system,指定IGRP为IP路由协议,router igrp 100,IGRP 配置举例,router igrp 100,router igrp 100,Autonomous System=100,S2,E0,S3,S2,S3,A,B,C,192.168.1.0,E0,IGRP路由协议实验,首先删除以前配置的所有静态路由(config)#Ip routing(config)#router igrp(config-router)#network network-number#sh ip route#sh ip protocol#debug ip igrp transaction#debug ip igrp events,查看 IGRP 信息,RouterA#sh ip protocolsRouting Protocol is igrp 100 Sending updates every 90 seconds,next due in 21 seconds Invalid after 270 seconds,hold down 280,flushed after 630 Outgoing update filter list for all interfaces is Incoming update filter list for all interfaces is Default networks flagged in outgoing updates Default networks accepted from incoming updates IGRP metric weight K1=1,K2=0,K3=1,K4=0,K5=0 IGRP maximum hopcount 100 IGRP maximum metric variance 1 Redistributing:igrp 100 Routing for Networks:Routing Information Sources:Gateway Distance Last Update 10.1.1.2 100 00:01:01 Distance:(default is 100),S2,E0,S3,S2,S3,A,B,C,192.168.1.0,E0,查看IP路由表,RouterA#sh ip routeCodes:C-connected,S-static,I-IGRP,R-RIP,M-mobile,B-BGP D-EIGRP,EX-EIGRP external,O-OSPF,IA-OSPF inter area N1-OSPF NSSA external type 1,N2-OSPF NSSA external type 2 E1-OSPF external type 1,E2-OSPF external type 2,E-EGP i-IS-IS,L1-IS-IS level-1,L2-IS-IS level-2,*-candidate default U-per-user static route,o-ODR T-traffic engineered routeGateway of last resort is not setsubnetted,1 subnetsC 172.16.1.0 is directly connected,Ethernet0subnetted,2 subnetsI 10.2.2.0 100/90956 via 10.1.1.2,00:00:23,Serial2C 10.1.1.0 is directly connected,Serial2I 192.168.1.0/24 100/91056 via 10.1.1.2,00:00:23,Serial2,S2,E0,S3,S2,S3,A,B,C,192.168.1.0,E0,debug ip igrp transaction 命令,RouterA#debug ip igrp transactionsIGRP protocol debugging is onRouterA#00:21:06:IGRP:sending update to 255.255.255.255 via Ethernet0(172.16.1.1)00:21:06:network 10.0.0.0,metric=8895600:21:06:network 192.168.1.0,metric=9105600:21:07:IGRP:sending update to 255.255.255.255 via Serial2(10.1.1.1)00:21:07:network 172.16.0.0,metric=110000:21:16:IGRP:received update from 10.1.1.2 on Serial200:21:16:subnet 10.2.2.0,metric 90956(neighbor 88956)00:21:16:network 192.168.1.0,metric 91056(neighbor 89056),S2,E0,S3,S2,S3,A,B,C,192.168.1.0,E0,debug ip igrp events 命令,RouterA#debug ip igrp eventsIGRP event debugging is onRouterA#00:23:44:IGRP:sending update to 255.255.255.255 via Ethernet0(172.16.1.1)00:23:44:IGRP:Update contains 0 interior,2 system,and 0 exterior routes.00:23:44:IGRP:Total routes in update:200:23:44:IGRP:sending update to 255.255.255.255 via Serial2(10.1.1.1)00:23:45:IGRP:Update contains 0 interior,1 system,and 0 exterior routes.00:23:45:IGRP:Total routes in update:100:23:48:IGRP:received update from 10.1.1.2 on Serial200:23:48:IGRP:Update contains 1 interior,1 system,and 0 exterior routes.00:23:48:IGRP:Total routes in update:2,S2,E0,S3,S2,S3,A,B,C,192.168.1.0,E0,RIP和IGRP的比较,路由更新,距离矢量协议的更新是逐步进行的。更新时使用的是单波、组播和广播一般的,路由器会将它的路由表发送到它的所有端口上,但是在一些其他的路由算法里面,路由器仅仅会将路由表发送给特定的邻居。RIP2、OSPF 使用组播,EIGRP、RIP 和 IGRP 使用广播。路由表会被周期性的例行发送,不过当网络的拓扑接口发生变化是,路由表的更新也会被发送。这种发送叫做触发更新(triggered updates)。,路 由 回 环,每一个节点管理着与之相连的所有网络,A,B,C,E0,S0,S0,S1,S0,E0,Routing Table,S0,E0,S0,S0,1,2,0,0,Routing Table,E0,S0,S0,S0,1,2,0,0,Routing Table,S0,S1,S1,S0,1,1,0,0,路 由 回 环,缓慢的收敛容易造成路由信息的不一致上图中,RC的E0口发生故障,10.4.0.0网络成为不可达,但是RA还没有收到通知,仍然以为可以通过RB到达10.4.0.0网络,RB也以为自己可以到达10.4.0.0网络。,A,B,C,E0,S0,S0,S1,S0,E0,X,Routing Table,S0,E0,S0,S0,1,2,0,Down,Routing Table,E0,S0,S0,S0,1,2,0,0,Routing Table,S0,S1,S1,S0,1,1,0,0,B在收到C的更新新信息之前,把自己的路由表发送给C,于是,C就认为到达10.4.0.0 的最佳路径是通过B以10.4.0.0网络为目的数据包会在B和C之间来回循环,路 由 回 环,A,B,C,E0,S0,S0,S1,S0,E0,X,路由器 A 根据错误的信息升级它的路由表在RCRB,RBRA发送路由更新后,RA和RB中到达10.4.0.0的距离加1,然后,RARB,RBRC,多次循环,导致hop counts无限大,路 由 回 环,A,B,C,E0,S0,S0,S1,S0,E0,X,Routing Table,1,2,0,2,Routing Table,1,4,0,0,Routing Table,3,1,0,0,无 限 计 数,10.4.0.0 网络的数据将在路由器 A,B,和 C 之间循环10.4.0.0 网络的跳数将无限大,A,B,C,E0,S0,S0,S1,S0,E0,X,Routing Table,1,2,0,4,Routing Table,1,6,0,0,Routing Table,5,1,0,0,解决方法:定义最大跳数,指定最大跳数来防止路由回环路由循环一般发生在慢速收敛环境,采用快速收敛技术可以最大限度减少路由循环为避免跳计数的无限循环,距离矢量协议规定metrics的最大值,当路由表项metric的值达到最大值时,路由器认为该目的网络不可达。,A,B,C,E0,S0,S0,S1,S0,E0,X,解决方法:水平分割,不会接收到由自身传达出去的路由信息C向B通告10.4.0.0网络,B向A通告10.4.0.0网络,因此,A就不能向B,B也不能向C发送关于10.4.0.0网络的路由信息。,A,B,C,E0,S0,S0,S1,S0,E0,X,X,X,解决方法:路由毒性,路由器将该路由信息的跳数标记为无限大第一个发现网络故障的路由器直接把到该网络的距离设为无限大,即不可达,然后向其它路由器来宣告这一信息。,A,B,C,E0,S0,S0,S1,S0,E0,X,解决方法:路由毒性,路由毒性可以超越水平分割在水平分割中,路由器不向其收到路由信息的接口发送该路由的更新在路由毒性中,路由器可以向其收到网络不可达信息的接口发送该网络不可达信息,A,B,C,E0,S0,S0,S1,S0,E0,X,PoisonReverse,本章总结,完成本章的学习后,你应该能够掌握:何时使用静态路由、何时使用动态路由在Cisco路由器上设置静态路由描述距离矢量的路由协议的工作原理在Cisco路由器上设置RIP 和IGRP路由协议利用show ip route、show ip protocols 和其他的调试命查看路由信息,问题回顾,1.静态路由与动态路由比较,有什么优、缺点?2.IGRP协议比RIP协议有什么优点?3.要实现一个大型网络的IP路由,应该使用什么路由协议?,