路由与交换型网络基础与实践教程第五章.ppt
第5章路由型网络技术与实践,5.1路由型网络5.1.1 路由型网络的特点 路由器工作在网络层,可以连接不同类型的网络,能够选择数据传送路径并对数据进行转发的网络设备。从通信的角度看,路由器是一种中继系统,与物理层中的中继器、数据链路层中的网桥类似,只不过它工作在网络层,比中继器和网桥要复杂得多,功能也要强大得多。路由器和网桥之间的主要区别:1)网桥一般用于局域网之间的连接,它可以连接不同的MAC(介质访问控制)子层,而路由器不仅可以连接局域网,而且可以连接广域网。2)从网络层看,通过网桥连接在一起的若干个MAC子网仍是一个网络,即网桥的作用仅仅把一个网络的范围扩大,从逻辑上讲不是进行网际互联。而路由器则是连接不同的网段,是真正意义上的网络互联。,5.1.2 路由器原理与结构1.路由器原理 路由器应该有多个网络接口,每个接口都连接在一个LAN或者子网上。一般来说,每个路由器接口都必须配置一个唯一的IP地址(帧中继和ATM网络除外)。也就是说,路由器的一个接口就相当于一个通信节点,每个端口IP地址的网络编号要求与所连接IP子网的网络号相同。不同的端口有不同的网络号,对应不同的IP子网,这样才能使各子网中的主机通过自己子网的IP地址把要求发出去的IP数据报送到路由器上。另一方面路由器还要有良好的选路策略和选路机制。主要体现在:()根据数据包的目的地和网络的拓扑结构选择一条最佳路径,把对应不同目的地的最佳路径存放在路由表中。()搜索路由表,决定向哪个接口转发数据,并执行相应的操作。,2.路由器结构 路由器就是一种特殊用途的计算机,它的硬件和平常用的计算机类似,主要部件就是CPU、ROM、内存、闪存(flash)和NVRAM等。主要部件如下所示:(1)CPU,执行操作系统指令、如系统初始化、网络接口控制和路由功能等。(2)内存,与其他计算机系统类似,内存存储CPU所需执行的指令和数据。主要存储的内容为:1)操作系统,路由器启动时,会将IOS(互联网操作系统)载入到内存中2)Running-config文件,该文件是路由器当前状态的配置文件,除了几个特殊命令外,在路由器上配置的所有命令均存储在该文件中3)IP路由表,此文件存储着直连网络以及远程网络的相关信息,用于确定转发数据包的最佳路径策略4)ARP缓存,此缓存包含IP地址到MAC地址的映射,用在以太网接口上5)数据包缓冲区,数据包到达接口后以及被送出接口前,都会暂时存储在该缓冲区中,(3)ROM,一种永久性存储器,主要用来存储:1)Bootstrap(启动自检)指令2)基本诊断指令3)精简版IOS(4)闪存(flash),又称为非易失性存储器。在大多数路由器型号中,用作IOS的永久性存储器,只有在启动过程中才加载至内存。闪存在路由器上一般由SIMM卡担当。(5)NVRAM,一种非易失性RAM,电源关闭后不会丢失信息。Cisco路由器用其存储startup-config(启动配置)文件。路由器几乎所有的配置更改都存在内存中的running-config文件中,并由IOS立即执行。要保存这些更改以防止路由器断电或者重启丢失,必须将running-config复制到NVRAM,以startup-config文件的形式保存。当路由器重启时,将加载startup-config文件信息至内存,以running-config文件的形式出现,清楚这两种文件的关系很重要。,3.接口与端口(1)以太网接口(2)串行接口(3)环回接口(4)空接口,5.2路由器基础配置5.2.1 接口配置1.以太网接口配置1)IP地址2)No shutdown命令开启2.串行接口配置 要在两台路由器之间建立点到点的连接,可以使用DTE-DCE交叉电缆(V.35电缆)将两路由器的serial串行接口连接起来,串行接口之间的链路可以封装为HDLC、PPP、Frame-relay和X.25等多种帧格式。cisco路由器点对点的serial串行接口之间的链路默认帧封装格式为HDLC。另外,要使两个串口之间能够通信,还必须提供时钟频率。,5.2.2 基本路由器配置1.配置主机名对路由器A命名为routerA的操作如下:Routerenable/进入特权执行模式Router#configure terminal/进入全局配置模式Enter configuration commands,one per line.End with CNTL/Z.Router(config)#hostname routerA/设置路由器名为routerArouterA(config)#/命名成功,2.设置特权模式密码 routerA(config)#enable password cisco/设置密码为cisco 或者 routerA(config)#enable secret cisco 设置 enable密码(特权模式)有两种方法:enable password和enable secret。区别是后者会对密码进行加密,因而具有更高的安全性。,3.设置控制台密码routerA(config)#line console 0/进入控制台配置模式routerA(config-line)#password cisco_console/设置控制台密码为cisco_consolerouterA(config-line)#login/使密码即时生效4.设置VTY密码routerA(config)#line vty 0 4/进入vty配置模式routerA(config-line)#password cisco_telnet/设置telnet登陆密码为cisco_telnetrouterA(config-line)#login/使密码即时生效,5.查看配置文件6.保存当前配置信息7.配置接口并检测连通性8.删除配置文件 如果我们要将配置文件删除,可以在特权执行模式下使用erase startup-config命令,删除启动配置文件后,需要使用reload命令重新启动,这样路由器就恢复到默认初始状态。注意,启动前不能使用保存命令,否则runninng-config文件会被保存为startup-config文件,即当前配置又保存到启动配置文件中,这样会引起删除命令失效。routerA#erase startup-config/删除启动配置文件Erasing the nvram filesystem will remove all configuration files!Continue?confirm/直接回车确认OKErase of nvram:complete%SYS-7-NV_BLOCK_INIT:Initialized the geometry of nvramrouterA#reload/重新启动路由器,注意重启前不保存当前配置,5.2.3 静态路由配置 静态路由是在路由器中设置的固定的路由表,除非网络管理员干预,否则静态路由不会发生变化。由于静态路由不能对网络的改变做出反应,一般用于网络规模不大、拓扑结构固定的网络中。静态路由的优点是简单、高效、可靠。在所有的路由中,静态路由的优先级最高,当它与动态路由的内容发生冲突时,以静态路由为准。当一个数据包在路由器中进行寻址时,路由器首先查找静态路由,如果查到则根据相应的静态路由转发数据包,如果没有对应信息再查找动态路由。,1.配置命令 命令格式:router(config)#ip route/2.递归路由查找在路由器转发数据包之前,路由表必须确定转发数据包的送出接口。例:subnetted,2 subnetsC 172.168.1.0 is directly connected,FastEthernet0/0C 192.168.2.0/24 is directly connected,Serial1/0从路由表中看到,是一个直接相连网络,送出接口为serial 1/0,路由器将数据包转发到网络上经历了两次路由表查找:(1)路由器检查数据包的目标IP地址与静态路由匹配,要送到下一跳地址。(2)下一跳地址与直连网络相匹配,将数据包由送出接口Serial1/0送出。,3.特殊路由 特殊路由在路由表中占有举足轻重的地位,目的是有效减少目的网络数量,有效提高路由查找速度,优化路由表而采用的一种技术。(1)静态路由汇总 路由表条数如果较小,则搜索的速度更快。如果可以使用一条静态路由代替多条静态路由,则可以减小路由条目。在许多情况下,一条静态路由可代替数百甚至数千条路由。比如,、和,这些网络可以用一个网络地址来代替。符合以下两条要求,则多条静态路由可以汇总成为一条静态路由:1)目的网络可以汇总成为一个网络地址,应避免产生路由黑洞 2)多条静态路由都使用相同的送出接口或者下一跳IP地址,例5.7 静态路由配置示例,图5.6 特殊路由示例拓扑图,routerC#show ip routesubnetted,3 subnetsC 192.168.1.0/24 is directly connected,FastEthernet0/0C 192.168.2.0/24 is directly connected,FastEthernet0/1通过show ip route命令查看路由表,三条静态路由均通过相同的下一跳地址转发,这三条路由可以汇总成为一条路由。汇总路由时应采用最长匹配原则,可以将这三条路由汇总为。要配置汇总路由,必须先删除原来配置的静态路由信息,配置命令如下所示:routerC(config)#no iprouterC(config)#no iprouterC(config)#no iprouterC(config)#ip,routerC#show ip routesubnetted,1 subnetsC 192.168.1.0/24 is directly connected,FastEthernet0/0C 192.168.2.0/24 is directly connected,FastEthernet0/1 通过这条汇总路由数据包的目的地址仅仅需要与网络地址最左侧的22位匹配,都会由这条汇总路由的下一跳地址转发。最后使用ping命令检测网络的连通性,各个网络均连通正常。,(2)默认静态路由默认路由使用全零做为目标网络地址来表示全部路由,如果路由表中没有一条具体路由被匹配,那么就选择默认路由做为匹配路由。默认路由使用的条件:1)将外面的网络注入到本路由器所在的路由域内,比如将连接到ISP网络的边缘路由器上需要配置默认静态路由2)路由表中没有其它路由与数据包的目的IP相匹配3)末节路由器上(仅有另外一台路由器与之相连,和其他网络通信只能通过另外一台路由转发)需要默认静态路由配置默认静态路由的命令为:ip route 0.0.0.0 exit-interface/next hop ip-address默认静态路由的特点是网络地址和掩码全为0,其余参数与普通静态路由一致。,5.3高级路由协议与配置5.3.1 RIPv2协议 路由信息协议(RIP,Routing Information Protocol)是最著名、历史最悠久的动态路由协议,该协议属于距离矢量协议。1993年IETF在RFC1388中发布了RIPv1。随着IP技术的发展,为支持VLSM和CIDR,随后在1994 年由RFC1723规定了最新版本的RIPv2协议。路由信息协议最初为局域网设计,现在应用范围已不局限在局域网,已被应用到城域网甚至广域网中。路由信息协议是因特网协议族的重要组成部分,也是在因特网中最早得到广泛应用并且其应用一直持续至今的简单路由协议。,图5.7 RIPv2协议格式,RIP协议运行在UDP(用户数据报协议)之上,所以RIP消息由UDP数据报承载,使用的UDP端口是530。RIPv2协议格式如图5.7所示。,2.RIP工作原理,(1)RIP请求/响应 运行RIP的路由器定期将路由表发送给相邻路由器。它向周围的其他路由器发出完整路由表的RIP请求(该请求报文的IP地址字段为)。路由器根据接收到的RIP应答来更新其路由表。具体方法是添加新的路由表项,并将其metric值加1,如果接收到与已有表项的目的地址相同的路由信息,则以下面三种情况分别对待:已有表项的来源端口与新表项的来源端口相同,那么无条件根据最新的路由信息更新其路由表;已有表项与新表项来源于不同的端口,那么比较它们的metric值,将metric值较小的一个最为自己的路由表项;新旧表项的metric值相等,普遍的处理方法是保留旧的表项。如果一个RIP更新信息到达一个路由器,而这个RIP更新信息的metric值大于15,RIP将不把那个网络信息写入路由表。这样就会使得这个网络成为不可到达的,并会阻止将初始跳步数为16或大于16的网络的信息写入路由表。,(2)RIP定时器,RIP协议规定,路由器定期向邻居发送路由表,这种路由器以预定义的时间间隔向邻居发送完整路由表的动作被称为定期更新。RIP协议定义了更新定时器(update timer):无论网络拓扑是否发生变化,路由表全部内容都将每隔30秒(默认)以广播的形式()或者组播的形式()发送出去。,除了更新定时器外,RIP协议还定义了另外三种定时器:无效定时器(invalid timer),设定180秒(默认),路由器每收到一次路由条目更新就把无效定时器清0,也就是说路由条目每隔无效计时器规定的时间内必须收到路由条目更新报文。如果没有收到相关条目的更新报文那么无效计时器超时(从收到更新路由开始计时,默认情况下超过180秒),则将该路由的metric值设置为16,即不可到达。刷新定时器(flush timer),设定为240秒(默认),指路由条目的刷新时间。Cisco中刷新计时器的缺省时间是240秒,意味着在一个路由条目在180秒内没有收到更新路由信息时,无效定时器超时。路由条目中该路由被标志为possibly down,直到刷新计时器也超时了该路由条目才被删除。在RIP中真正删除路由条目的是刷新计时器超时(无效计时过后60秒)。抑制定时器(hold-down timer),设定为180秒(默认)。该定时器用于在路由收敛的过程中防止路由环路。路由器如果在相同的接口上收到某个路由条目的metric值比原先收到的metric值大,那么将启动抑制计时器,在抑制计时器的时间内该目的不可到达。在抑制周期内,路由器不学习该条路由的信息,除非是一条更好的路由信息。,4.环路防范机制,(1)触发更新 当拓扑结构发生改变时,为了加速收敛,RIP将使用触发更新。触发更新时一种路由表更新方式,不需要等待更新定时器超时就会在路由发生改变后,路由器会立刻向相邻路由发送更新信息。接收到这一消息的路由器将依次产生触发更新,以便及时通知邻居网络拓扑已经发生了改变。,(2)水平分割 RIP从某个接口学到的路由信息,不会从该接口再转发给邻居路由器,这样不但减少了带宽消耗,还可以防止路由循环。,(3)路由毒化 路由毒化是距离矢量协议用来防止路由环路的一种方法。该方法用于在发往其他路由器的路由更新中将故障路由标记为不可到达(将metric度量值设置为16)。(4)毒化反转 该规则规定如果一条路由信息是从某个端口学习到的,那么从该端口发出的路由更新报文中将继续包含该条路由信息,但是必须将这条信息毒化(metric置为16,表示不可到达)。,5.3.2 RIPv2的配置,1.基本配置(2)路由检验 路由基本配置只是本例中最初始的工作,网络工程技术人员应该养成检测接口和网络状态的良好习惯,下面将检验网络的连通性和查看路由接口的状态。在routerA中使用ping命令测试至各个网段的连通性,发现routerA至网络传输出现严重的丢包现象,数据包正确传输率只有40%测试结果如下所示:routerA#ping/测试到routerC的环回接口的连通性Type escape sequence to abort.Sending 5,100-byte ICMP Echos to 172.16.5.1,timeout is 2 seconds:.!.!.Success rate is 40 percent(2/5),round-trip min/avg/max=50/55/60 ms,使用show ip route命令检查各个路由器的路由表信息,内容如下所示:routerA#show ip routeGateway of last resort is not setsubnetted,3 subnets,2 masksR 172.16.0.0/16 120/1 via 192.168.1.238,00:00:11,Serial1/0 120/1 via 192.168.1.230,00:00:10,FastEthernet0/0C 172.16.3.0/24 is directly connected,FastEthernet0/1C 172.16.4.0/24 is directly connected,Loopback0subnetted,3 subnetsC 192.168.1.228 is directly connected,FastEthernet0/0R 192.168.1.232 120/1 via 192.168.1.230,00:00:10,FastEthernet0/0 120/1 via 192.168.1.238,00:00:11,Serial1/0C 192.168.1.236 is directly connected,Serial1/0R 192.168.2.0/24 120/1 via 192.168.1.238,00:00:11,Serial1/0检查routerA路由表,发现通往所有目标网络的路由均已收敛,其中是条汇总路由,可以从和两个下一跳地址转发,起到了负载均衡的作用。,再检查routerB的路由表信息,如下所示:routerB#show ip routeGateway of last resort is not setsubnetted,2 subnets,2 masksR 172.16.0.0/16 120/1 via 192.168.1.229,00:00:18,FastEthernet0/0 120/1 via 192.168.1.233,00:00:14,FastEthernet0/1C 172.16.1.0/24 is directly connected,Loopback0subnetted,3 subnetsC 192.168.1.228 is directly connected,FastEthernet0/0C 192.168.1.232 is directly connected,FastEthernet0/1R 192.168.1.236 120/1 via 192.168.1.233,00:00:14,FastEthernet0/1,检查路由发现是条汇总路由,分别由两条下一跳接口转发,而这个网络也被汇总进去了,所以也会从两条路径分别转发。这样就出现偏差,因为从下一跳地址转发的路径通往routerA,可在routerA路由表中通往的路由被汇总成了,这条路由又被转发到了routerB,这样就导致通往之间形成了路由环路,导致一部分数据正确传输,另一部分数据从环路传送而无法到达,这就是问题所在。从以上分析可以看出,经过基本配置RIPv2协议后,由于该协议自动汇总路由,导致网络工作不正常。,网络故障找到后,经过分析得知是网络分配了不连续子网,而RIPv2协议默认自动汇总是开启的,所以导致链路丢包故障。问题的根源找到后,关闭自动汇总,网络运行良好。无类路由协议(RIPv2)可同时带有网络地址和掩码,尽管Cisco路由器默认自动汇总开启,但这类协议无需像RIPv1协议那样在主网边界将这些网络汇总为有类地址。所以,无类路由协议支持VLSM。对于使用VLSM编址方案的网络而言,必须使用无类路由协议来传播所有的网络及其掩码,但这并不意味着自动汇总对网络总是有危害,自动汇总后的一条信息代表多条路由信息,可以使发送和接收的路由更新更小,从而提高了网络带宽利用率。但在不连续网络子网拓扑中,就会带来潜在风险,本案例这种情况就不适合自动汇总了。,5.3.3 OSPF协议,OSPF协议是一个被设计为适于在一个自治系统内操作的链接状态协议,通过在OSPF域内的每个路由器中维持一个一致的拓扑数据库来运作。该数据库中存放着各路由器上每条网络链路的状态(即各接口的状态),路由器以此来决定去往自治系统内各网络的最短路径。路由器将每条网络链路的信息送给它的所有相邻路由器,从而更新它们的拓扑数据库,并传播这些信息到其他路由器。OSPF协议路由选择信息的交换以IP报文的形式送出,使用的协议号是89。,OSPF协议使用Dijkstra算法计算拓扑数据库中的信息来生成从执行计算的路由器到各目的网络的最短路径,得到的最短路径将标明到各目的地的最佳下一跳路由器。用于到达最佳下一跳路由器的IP地址和接口将被填入IP路由选择表中。因为所有路由器拥有相同的拓扑数据库,所以尽管每个路由器从它自己的角度寻找到达各目的地的最短路径,但最短路径都是一致的。在小型网络上,基本的OSPF协议配置与RIP协议配置差别不大。但当把OSPF协议应用于规模较大的网络时,它就会变得很复杂,需要考虑区域设计、冗余、即时链路以及验证等多种因素。,1.OSPF度量值(1)默认bandwidth值在OSPF协议计算中使用的度量值是一个无单位值,度量结果是从路由器到目的网络的累积度量值。缺省情况下,metric=108/链路带宽(bps),比如10Mbps链路的度量值为10,而100MbpsFDDI或快速以太网的度量值为1。在串行链路上,需要使用接口子命令bandwidth来指定链路带宽(帧中继链路的提交信息速率),否则,串行链路将会以1.544Mbps作为缺省带宽,其度量值为64。OSPF默认接口度量值如表5.2所示。,(2)bandwidth值与实际链路带宽无关 路由器接口的带宽值只是某些路由协议用来计算路由度量值的,并不影响实际链路速度,尤其在串行链路上,链路的实际速度很可能不同于默认链路带宽。,2.LSA描述网络拓扑,LSA(链路状态通告)过程是网络拓扑中所有运行OSPF协议的路由器描述本地直连网络状况,并且通告给邻居彼此交换与统一整个网络链路状态,最终形成完整的、一致的网络链路状态数据库。其具体过程如下:(1)确定直连网络每台路由器了解其自身的链路,即与其连接的直连网络。当路由器接口配置了IP地址和掩码后,路由器就自动检测接口的工作状态,接口自动成为直连网络的一部分。(2)问候邻居同一区域路由器使用hello协议包来发现其链路上的所有邻居,邻居是指启动了相同的路由协议的其他任何路由器。邻接关系一旦建立,就共享它们的拓扑结构数据库内容。在广播式网络中(以太网、令牌环网、FDDI),每隔10秒发送一次hello报文;对于非广播式网络(X.25、帧中继、点到点链路)是每隔30秒发送一次hello报文。如果一个广播式网络(以太网,令牌环网等)上的路由器数量较多的话,每个路由器都和的其他每个路由器建立了相邻关系,从而交换其链路状态数据库的内容,那么将导致局域网上的路由信息数据流总量指数增长。为了解决这一问题,OSPF协议规定在每个广播式网络上,选取一个指定路由器(DR)和一个备份指定路由器(BDR,用于冗余)。在网段上的所有路由器都与本区域的DR建立邻接关系,并与它交换链路状态信息。DR从所有路由器收集到本广播式网络内所有链路状态信息,然后再把收集到的信息反向分布到本网络所有路由器上。使用这种方法可将链路状态更新的信息量指数下降。,(3)构建链路状态数据库在构建链路状态数据库的过程中,需要五种报文协议,它们分别是:Hello报文:发现并维持邻居关系,并在广播式网络中选举DR和BDR;DD报文:描述本地链路状态数据库(LSDB)的情况,即通告邻居路由器自己有哪些链路状态信息;LSR报文:向邻居路由器发送请求,要求获得本路由器没有的链路信息或对端更新的链路信息;LSU报文:向邻居路由器更新链路状态通告;LSAck报文:收到LSU报文后,进行确认。构建链路状态数据库的过程如图5.15所示:,3.SPF算法计算路由,SPF(最短路径优先)算法通常称为Dijstra算法,该算法会累积每条路径从源到目的地的开销。运行OSPF协议的每台路由器通过LSA构建了一个完整的网络拓扑,并使用SPF算法计算通过每个目的网络的最佳路径,就如同每个路由器拥有了地图一样,如图5.16所示,图5.16 SPF算法的网络拓扑,每台路由器根据LSDB的内容运算,都会得到一个带权(链路的度量值)矢量拓扑,如图5.18所示。,图5.18 路由器生成的矢量拓扑图,最后,每个路由器独立运行SPF算法,得到一个以自己为根节点的最小生成树,这个最小生成树就是生成路由表的基础,通往每个目的网络的数据包都会以此生成树为依据进行转发。每台路由器的最小生成树,如图5.19所示。,图5.19 每台路由器的最小生成树,4.DR与BDR的选择,在多路访问网络(广播网络和NBMA网络)中,OSPF定义了指定路由器(designated router),简称为DR。同一网段内所有路由器都只将LSA发送给DR,由DR将该网段的链路状态通告出去,这样就大大减少了多路访问网络上各路由器之间邻接关系的个数,并且有效解决了LSA泛洪的问题。除了DR外,OSPF协议规定还应该选举出一个备份指定路由器(BDR),以防止指定路由器发生故障。当DR失效后,BDR会立即成为DR,此时不需要重新选举,当然这时还需再重新选举出一个新的BDR,虽然需要一段时间,但不会影响到路由的计算。这样一个网段内其他运行OSPF协议的路由器仅与网段内的DR和BDR发生完全邻接关系,所以其他路由器无需向网络中的所有路由器通告LSA,只需使用组播地址(所有DR路由器地址)将其LSA发送给DR和BDR即可。最终结果是一个网段内仅有一个DR负责通告LSA。,(1)DR/BDR选择依据 DR/BDR的选择不会发生在点对点式网络,在多路访问式网络中,DR/BDR选择必须遵循以下条件:1)具有最高OSPF接口优先级的路由器为DR;2)具有次高OSPF接口优先级的路由器为BDR;如果OSPF接口优先级相等,则取路由器ID最高者。其中,路由器ID在cisco路由器中是根据以下三个条件来确定:1)使用通过router-id命令配置的IP地址;2)如果未配置路由器ID,则路由器会选择其环回接口的最高IP地址;3)如果未配置环回接口,则路由器会选择其所有活动物理接口中最高IP地址。,5.3.4 OSPF协议的配置,比较RIPv2协议配置,OSPF协议配置中增加的主要内容是:AS内能够分成更小的区域,每个区域都编了号,而且必须存在区域0,它就是主干区域。所有的其他区域都直接或通过虚链路连接到主干区域上。为了优化操作,各区域内所包含的路由器个数不应超过50-100个。例5.12 OSPF协议基本配置示例(网络拓扑如图5.20所示),OSPF配置示例如下所示:routerA(config)#router ospf 1/以下是宣告直连网络,这些网络均属于主干区域routerA(config-router)#network 192.168.2.0 0.0.0.255 area 0 routerA(config-router)#network 172.16.4.8 0.0.0.3 area 0 routerA(config-router)#network 172.16.4.4 0.0.0.3 area 0routerA(config-router)#exitrouterB(config)#router ospf 1/以下是宣告直连网络,这些网络均属于主干区域routerB(config-router)#network 172.16.4.4 0.0.0.3 area 0routerB(config-router)#network 172.16.4.12 0.0.0.3 area 0routerB(config-router)#network 172.16.4.12 0.0.0.3 area 0routerB(config-router)#network 192.168.1.0 0.0.0.255 area 0routerB(config-router)#exitrouterC(config)#router ospf 1/以下是宣告直连网络,这些网络均属于主干区域routerC(config-router)#network 192.168.3.0 0.0.0.255 area 0routerC(config-router)#network 172.16.4.8 0.0.0.3 area 0 routerC(config-router)#network 172.16.4.8 0.0.0.3 area 0routerC(config-router)#network 172.16.4.12 0.0.0.3 area 0routerC(config-router)#exit,2.OSPF区域,OSPF是专门为大型网络而设计的一种链路状态路由协议,在大型网络中可能遇到如下问题:1)LSDB非常庞大,占用了路由器大量的存储空间2)路由器计算最小生成树耗时增加,CPU负担沉重3)网络结构经常发生变化,产生网络动荡现象 为了解决以上问题,OSPF协议采用区域概念来创建一个有层次的设计,这种设计将OSPF区域划分成若干个小区域,以降低路由器上内存和计算的负载。每个区域都用一个数字来标识,而且必须存在一个骨干区域(标识为区域0),一些(零个或更多个)附加区域必须连接到主干区域。注意路由器不属于任何区域,而是它的接口被分配到一个特定区域。OSPF协议对所在的不同区域的路由器进行身份标识,规定了种类型的路由器:内部路由器、区域边界路由器、主干路由器以及自治系统边界路由器。1)内部路由器2)主干路由器3)区域边界路由器(ABR)4)自治系统边界路由器(ASBR),例5.13 OSPF多区域配置示例(网络拓扑如图5.21所示),本案例中routerA和routerC均是主干区域与其他区域的连接设备,这两个路由器的角色属于边界路由器。路由器基本配置省略,OSPF多区域配置如下所示:routerA(config)#router ospf 1routerA(config-router)#network 172.16.4.4 0.0.0.3 area 0/宣告主干区域直连网络routerA(config-router)#network 172.16.4.8 0.0.0.3 area 0routerA(config-router)#network接口属于区域2routerB(config)#router ospf 1routerB(config-router)#network 172.16.4.4 0.0.0.3 area 0/宣告主干区域直连网络routerB(config-router)#network 172.16.4.4 0.0.0.3 area 0routerB(config-router)#network 172.16.4.12 0.0.0.3 area 0routerC(config)#router ospf 1routerC(config-router)#network 172.16.4.12 0.0.0.3 area 0routerC(config-router)#network 172.16.4.8 0.0.0.3 area 0routerC(config-router)#network 202.117.67.4 0.0.0.3 area 1/该网段接口属于区域1,routerD(config)#int fa1/0routerD(config-if)#iprouterD(config-if)#no shurouterD(config-if)#exitrouterD(config)#router ospf 1routerD(config-router)#network 202.117.66.4 0.0.0.3 area 2/该网段接口属于区域2routerE(config)#int fa0/0routerE(config-if)#iprouterE(config-if)#no shurouterE(config-if)#exitrouterE(config)#router ospf 1routerE(config-router)#network 202.117.67.4 0.0.0.3 area 1/该网段接口属于区域1,(2)虚链接在OSPF协议网络中,主干区域必须一直维持完全连接状态,所有区域必须连入区域0。所以要确保区域0拥有足够的链路,以避免单条链路故障而引起的主干分割。但有些时候不得不分割开区域0,那么可以配置一个虚链接作为连接主干区域与其他分离区域的链路,这条链路可以看作一条通过其他区域保持区域0连通的隧道。,(3)桩域与完全桩域由于ISP运行的OSPF网络会包含大量的外部路由,所以OSPF规定除主干区域外的附加区域可以配置为具有特殊属性的桩域(sub area)。桩域又被称为残域,该区域的特点是一条缺省路由经过ABR分布到该区域。AS(自治系统)外部的路由信息是通过ASBR将LSA重新发布,并传播到自治系统内部路由器的路由表,同样,ABR将ASBR发布来的外部路由汇总,再向其连接的区域内的路由器按照洪泛法传递。但除了区域0外,很少有区域需要整个外部路由的集合,将所有外部路由信息传递到这些区域是不必要的。在桩区域内,路由器的链路状态数据库不包含AS外部的路由信息。为了保证到自治系统外的路由依旧可达,由该区域的ABR生成一条缺省路由,将所有该区域内的路由器在找不到目的路由时把数据通过ABR转发到AS外部的目的网络。在有许多外部链路的网络中,配置桩域可以减少本区域内路由表和数据库条目,因而其网络性能得到提高。桩域对于非主干区域而言是一种可选的配置,但并不是每个非主干区域都符合桩域的要求,符合桩域的条件为:非主干区域通过ABR连接到主干区域,该区域位于自治系统的外围不能配置任何虚连接不能含有ASBR,因为ASBR导入的外部路由信息不能在桩域内发布以上条件必须全部符合,非主干区域才可以配置成桩域。桩域适合很少几个外部路由和许多区域间路由的情况。根据桩域使用默认路由代替自治系统外部路由的思想,除了AS外部路由,也可以将桩域外的所有域间路由信息用缺省路由替代,那么这个区域称为完全桩域,它和桩区域有同样的配置条件,完全桩域适合较少的外部路由与域间路由的网络。,(4)准桩区域(NSSA)最初的OSPF协议设计有一个拓扑结构限制,除了主干区域外,OSPF协议只允许完全和主干相连的区域以及桩/完全桩域。然而,有些区域虽然类似于桩区域,但它同时还与某个使用其他路由选择协议的外部端网络共享路由信息。比如:一个网络在区域内使用OSPF协议,但在域外的某个端网络上应用RIP协议,那么RIP协议网络的外部路由以一种受限制的方式导入OSPF协议区域(路由重分布)。将这种重分布外部路由的非主干区域称为非桩区域(Not-So-Stubby Area,NSSA),因为它是一个包含导入外部路由的ASBR(AS边界路由器)的桩区域。NSSA的一个重要特性就是主干区域上的外部路由不会被传播进本区域(但AS内的路由可以被传播进NSSA),由于这个原因,NSSA区域的操作很像桩区域,它和桩域的根本区别在于NSSA允许有ASBR的存在,而且NSSA区域内的ASBR可以将接收的外部路由在本区域内传播,但限制主干区域传播来的外部路由。NSSA对于控制连接到AS的其他外部网络很有用,可以使用静态路由或通过重分布导入所选的路由,这样防止