您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 薪酬管理 > 自由路由软件Zebra基本配置完全攻略
自由路由软件Zebra基本配置完全攻略前言Zebra是一个路由软件包,提供基于TCP/IP路由服务,支持RIPv1,RIPv2,RIPng,OSPFv2,OSPFv3,BGP-4,和BGP-4+等众多路由协议。Zebra还支持BGP特性路由反射器(RouteReflector)。除了传统的IPv4路由协议,Zebra也支持IPv6路由协议。如果运行的SNMP守护进程(需要ucd-snmp)支持SMUX协议,Zebra还能支持路由协议MIBs。由以上可见,Zebra的确是一个很不错的路由系统,但比起真正的路由器就简直是小儿科,所以网络高手就当这文章是小孩子过家家吧,而对于象我这样的初学者(特别是没有真实设备或足够设备进行实验)也不失为一个学习和熟悉路由配置、路由协议的好工具。我没有实际的配置经验,对路由的技术细节也不是十分清晰,完全是在扔破砖头。希望路由高手指正概念错误。安装Zebra目前最新的版本是0.92a,它的安装非常简单,我们只需从下载zebra-0.92a.tar.gz,然后执行以下命令安装(本文环境是RedHat7.2):shelltarxzfzebra-0.92a.tar.gzshellcdzebra-0.92ashell./configureshellmakeshellmakeinstall这样Zebra就安装好了,安装的执行文件:shellls/usr/local/sbinbgpdospfdripdzebra配置文件:shellls/usr/local/etcbgpd.conf.sampleospfd.conf.samplezebra.conf.samplebgpd.conf.sample2ripd.conf.sample运行编译安装完Zebra后,可以看到有4个可执行文件和5个配置样本文件,我们就使用它的配置样本文件:shellcd/usr/local/etcshellcpzebra.conf.samplezebra.confZebra的各进程有各自的终端接口或VTY,如果我们需要给连接到它们的端口设置别名的话,在/etc/services文件添加如下内容:zebrasrv2600/tcp#zebraservicezebra2601/tcp#zebravtyripd2602/tcp#RIPdvtyripngd2603/tcp#RIPngdvtyospfd2604/tcp#OSPFdvtybgpd2605/tcp#BGPdvtyospf6d2606/tcp#OSPF6dvty然后就可以启动Zebra了:shellzebra-d这样,Zebra就以守护进程启动了,其它的参数请参考zebra-h。基本路由配置命令直接用telnet连接:shelltelnetlocalhost2601Trying127.0.0.1...Connectedtolocalhost.Escapecharacteris'^]'.Hello,thisiszebra(version0.92a).Copyright1996-2001KunihiroIshiguro.UserAccessVerificationPassword:Zebra会提示输入口令,我们通过/usr/local/etc/zebra.conf可以看到口令是zebra,enable口令也是zebra。输入口令zebra,得到路由器用户模式提示符:Router进入特权模式:RouterenPassword:Router#输入一个问号,看看Zebra提供了多少路由命令:Router#?configureConfigurationfromvtyinterfacecopyCopyconfigurationdebugDebuggingfunctions(seealso'undebug')disableTurnoffprivilegedmodecommandendEndcurrentmodeandchangetoenablemode.exitExitcurrentmodeanddowntopreviousmodehelpDescriptionoftheinteractivehelpsystemlistPrintcommandlistnoNegateacommandorsetitsdefaultsquitExitcurrentmodeanddowntopreviousmodeshowShowrunningsysteminformationterminalSetterminallineparameterswhoDisplaywhoisonvtywriteWriterunningconfigurationtomemory,network,orterminal提供的命令很少,实际路由器好多命令都没有,我们只能用有限的命令投入到无限的实验中去。Router#shrunCurrentconfiguration:!hostnameRouterpasswordzebraenablepasswordzebra!interfacelo!interfaceeth0!linevty!endZebra把操作系统的网络接口当做路由器的接口,所以在做比较复杂的路由实验,会需要比较多的网卡。进入全局模式,尽可能把实际可用的配置命令都实验一遍:Router#conftRouter(config)#自己取一个路由器名字:Router(config)#hostnamer1r1(config)#Zebra比较简单,登陆口令不是在line下修改,而是直接在全局模式下用password修改r1(config)#password{password}Zebra不支持enablesecret{password}这种MD5加密口令,只能使用enablepassword{password}来修改enable口令:r1#conftr1(config)#enablepassword{password}在路由器配置中加密所有的口令:r1(config)#servicepassword-encryption回到特权模式:r1(config)#exitr1#shrunCurrentconfiguration:!hostnamer1password8alA5.vcyMAwXQenablepassword8ksbxOFN8xcFMcservicepassword-encryption!interfacelo!interfaceeth0!linevty!end我们看到刚才的明文密码都进行加密了,给我们的实验机也提高安全性。Zebra有一点比较恶心,如果我们先设置了servicepassword-encryption,然后再修改口令,shrun就发现口令又都是明文的了,但是由于有servicepassword-encryption,所以就无法登陆了。去掉会话超时,免得10分钟没有动作,就把我们给踢了。但是在实际的路由器配置中,为安全起见我们最好还是设上会话超时。r1#conftr1(config)#linevtyr1(config-line)#exec-timeout00设置日志记录,Zebra可以把日志记录到标准输出、syslog、以及指定输出文件:r1(config-line)#exitr1(config)#logstdoutr1(config)#nologstdoutr1(config)#logsyslogr1(config)#nologsyslogr1(config)#logfile/usr/local/etc/zebra.log配置接口IP地址:r1(config)#intlor1(config-if)#ipaddress127.0.0.1/8r1(config-if)#exitr1(config)#inteth0r1(config-if)#ipaddress192.168.5.121/24Zebra比较奇怪,不能使用ipaddress192.168.5.121255.255.255.0这种形式设置IP。测试一下,就设置成和Linux中使用的一样。保存我们刚才的配置:r1(config-if)#exitr1(config)#exitr1#copyrunstartConfigurationsavedto/usr/local/etc/zebra.confr1#2、用Zebra做简单的RIP实验RIP是应用较早、使用较普遍的IGP,适用于小型同类网络,是典型的距离向量(distance-vector)协议。RIP通过广播UDP报文来交换路由信息,每30秒发送一次路由信息更新。RIP提供跳跃计数(hopcount)作为尺度来衡量路由距离,跳跃计数是一个包到达目标所必须经过的路由器的数目。如果到相同目标有二个不等速或不同带宽的路由器,但跳跃计数相同,则RIP认为两个路由是等距离的。RIP最多支持的跳数为15,即在源和目的网间所要经过的最多路由器的数目为15,跳数16表示不可达。RIPv2支持验证、密钥管理、路由汇总、无类域间路由(CIDR)和变长子网掩码(VLSMs)。Zebra支持RIPv2,使用ripd程序实现RIP路由功能,但ripd程序需要在zebra程序读取接口信息,所以zebra一定要在ripd之前启动。由于条件所限,下面的RIP实验是在两台单网卡的RedHat7.2下做的,所以只是最简单的演示。按照上面基本配置的方法初始化第一台机器:shell_1cd/usr/local/etcshell_1cpzebra.conf.samplezebra.confshell_1cpripd.conf.sampleripd.confshell_1zebra-d进入zebra设置IPshell_1telnetlocalhost2601Password:RouterenPassword:Router#conftRouter(config)#hostnamer1r1(config)#inteth0r1(config-if)#ipaddress192.168.5.121/24r1(config-if)#ctrl+zr1#copyrunstart进入第一台机器的rip设置shell_1ripd-dshell_1telnetlocalhost2602Password:ripdenripd#conftripd(config)#hostnamer1_ripd!改个名字好辨认r1_ripd(config)#routerrip!启动ripr1_ripd(config-router)#network192.168.5.0/24!RIPv1是有类别路由协议,RIPv2是无类别路由协议,Zebra默认支持RIPv2,指定网络需要子网掩码。r1的RIP简单配置这样就可用了,下面来检验一下:r1_ripd#shipprotocolsRoutingProtocolisripSendingupdatesevery30secondswith+/-50%,nextduein3secondsTimeoutafter180seconds,garbagecollectafter120secondsOutgoingupdatefilterlistforallinterfaceisnotsetIncomingupdatefilterlistforallinterfaceisnotsetDefaultredistributionmetricis1Redistributing:Defaultversioncontrol:sendversion2,receiveversion2InterfaceSendRecvKey-chaineth022RoutingforNetworks:192.168.5.0/24RoutingInformationSources:GatewayBadPacketsBadRoutesDista
本文标题:自由路由软件Zebra基本配置完全攻略
链接地址:https://www.777doc.com/doc-2052024 .html