本帖最后由 Vneng 于 2011-5-4 13:01 编辑
********************** * BOOTCAMP---路由篇 * **********************
*************************************************************** 1、浮动静态路由 静态路由的AD值是1或者是0,可以通过手动修改AD 值 配置命令:ip route ip mask 下一跳/出接口 AD 例如: R1(config)#ip route 198.1.1.1 255.255.255.255 197.1.1.1 R1(config)# ip route 198.1.1.1 255.255.255.255 197.1.1.1 50 注意:正常情况下浮动静态路由不会出现在路由表中,只有当上一条路由失效时候,才会出现在路由表中。 如图如果不使用浮动静态路由,使用两条静态路由在会负载均衡,负载均衡最多可以配置8条。 *************************************************************** 2、IP SLA 应用场合
如图2所示,当右边路由器的接口down掉时,左边路由器并没有办法检测到而更换成备用链路,此时数据包会使用原本的路由发送出去,造成无法通讯。此时,就需要使用IP SLA来检测链路的存活,来切换链路,保证通信正常。 配置SLA的语法如下: hostname(config)#ip route des_ip mask source_ip track track_id
/*定义需要跟踪的路由*/ hostname(config)# track track_id rtr sla_id /*打开跟踪功能,并在路由后指定该路由是需要被跟踪的*/ hostname(config)# sla monitor sla_id hostname(config-sla-monitor)# type echo protocol ipIcmpEcho des_ip interface if_name/ source-ipaddress /*设置的这个des_ip地址必须是一个可达的地址,当这个地址不可达时,被跟踪的路由就会被删除,从而备份路由放进路由表中*/ hostname(config)# sla monitor schedule sla_id[life {forever | seconds}] [start-time {hh:mm[:ss] [month day | day month] | pending | now | after hh:mm:ss}] [ageout seconds] [recurring] /*在这里必须要填写时间表,不然被跟踪的备份路由不能被放进路由表*/ 配置实例:(以上图2为例子) R1(config)#ip route 3.3.3.0 255.255.255.0 1.1.1.2 track 1 /*加入跟踪*/ R1(config)#ip route 3.3.3.0 255.255.255.0 2.2.2.2 R1(config)#track 1 rtr 2 R1(config-track)#ip sla monitor 2 (SLA号码)/*启用跟踪进程*/ R1(config-sla-monitor)#type echo protocol ipIcmpEcho 1.1.1.2 source-ipaddress 1.1.1.1 /*指定使用icmp包来检测链路是否存活,目的是1.1.1.2,也就是需要追踪的下一跳地址,源地址是数据包的出接口IP*/ R1(config-sla-monitor-echo)#timeout 100
/*设置超时时间*/ R1(config-sla-monitor-echo)#frequency 10 /*在上述超时时间内发送几个包*/ R1(config-sla-monitor-echo)#exit R1(config)#ip sla monitor schedule 1 life forever start-time now /*有效时间和马上开启追踪*/ *************************************************************** 3、OSPF 3.1 OSPF知识点 3.1.1 OSPF路由协议 1.
报文封装:IP 协议号:89
AD值:110 2.
组播地址:224.0.0.5——所有ospf路由器,224.0.0.6——DR、BDR。 3.1.2术语 1.
ospf的AS号:有,但不可配置 2.area:用以区分所属区域,同一个区域内的所有路由器都有相同的链路状态数据库,所有非area 0区域都必须连接到area 0区域。 3.Route ID 1、可以手动指定:router ID X.X.X.X (可以是不存在的地址,但是必须全网唯一) 2、自动选举:有Loopback接口时,选择最高的Loopback IP地址,否则选举最高的活跃物理接口的IP地址 3、一般手动指定 4、ospf接口:边界在接口上 5、邻居、邻接 6、邻居是指DR和直连的非DR之间形成的关系 7、邻接是任意路由器直连即成邻接 8、进程:只具有本地意义,即router ospf X /*这个X就是进程号*/ 3.1.3
三张表的建立: 非DR发送LSA给DR BR集合这些数据形成LSDB BR将LSDB发送给每个路由器,达到LSDB的统一 每个路由器以自己为根,运用LSDB形成自己的路由表 3.1.4 DR的选举,以及整个OSPF运行过程: (1) OSPF路由器接口up,发送Hello包,(NBMA模式时将进入Attempt状态)。 (2) OSPF路由器接口收到Hello包,进入Init状态;并将该Hello包的发送者的Router ID,添加到Hello包(自己将要从该接口发送出去的Hello包)的邻居列表中。 (3) OSPF路由器接口收到邻居列表中含有自己Router ID的Hello包,进入Two-way状态,形成OSPF邻居关系,并把该路由器的Router ID添加到自己的OSPF邻居表中。 (4) 在进入Two-way状态后,广播、非广播网络类型的链路,在DR选举等待时间内进行DR选举。点对点没有这个过程。 (5) 在DR选举完成或跳过DR选举后,建立OSPF邻接关系,进入exstart(准启动)状态;并选举DBD交换主从路由器,以及由主路由器定义DBD序列号,Router ID大的为主路由器。目的是为了解决DBD自身的可靠性。 (6) 主从路由器选举完成后,进入Exchange(交换)状态,交换DBD信息。 (7) DBD交换完成后,进入Loading状态,对链路状态数据库和收到的DBD的LSA头部进行比较,发现自己数据库中没有的LSA就发送LSR,向邻居请求该LSA;邻居收到LSR后,回应LSU;收到邻居发来的LSU,存储这些LSA到自己的链路状态数据库,并发送LSAck确认。 (8) LSA交换完成后,进入FULL状态,所有形成邻居的OSPF路由器都拥有相同链路状态数据库。 (9) 定期发送Hello包,维护邻居关系。 3.2优化OSPF 3.2.1手动指定Router-Id Router(config)#router ospf x (进程号)
/*开启OSPF进程*/ Router(config-router)#router-id x.x.x.x
/*这个地址可以是不存在的地址,但必须全网唯一*/ 注意:在重新配置过router-id时,要用全局模式下面clear ip ospf process来重新应用新的router-id 3.2.2接口优先级:在默认情况下,接口IP越大越优先 Router(config-if)#ip ospf priority 100
/*修改接口优先级为100,默认是1,优先级为0的不参与DR选举*/ 3.2.3修改OSPF网络类型 Router(config-if)ip ospf network point-to-point/ broadcast/ non-broadcast/point-to-multipoint show ip ospf interface
/*查看ospf网络类型*/ 3.2.4手动修改cost值 Router(config-router)#auto-cost reference-bandwidth 1000 /*修改cost为1000Mb*/ 接口模式改 Router(config-if)ip ospf cost x (1-65535) show ip ospf interface
/*查看ospf cost值*/ 3.2.5路由条目优化 区域间路由汇总,在ABR上面汇总 Router(config-router)#area x range 汇总地址 汇总掩码 区域外路由汇总,在ASBR上面汇总 Router(config-router)#summary-address 汇总地址 汇总掩码 3.2.6创建默认路由 Router(config-router)#default-information originate Router(config-router)#default-information originate always 注意:第一条命令是路由表中存在默认路由,第二条命令是路由表中不存在默认路由。 3.2.7虚链路 现实中存在两个主骨干区域即两个area 0(如图3所示)但是不是相连在一起的,第二种是普通区域没有连接到骨干区域,(如图4所示)为保证OSPF可以正常运行,需要用虚链路,虚链路使它们逻辑相连,并通过链路泛洪相关LSA。 配置命令: Router(config-router)#area area-num virtual-link remote-RID 注意:area-num是就是路由器两端传递分组时分组穿越的中转区域,如图所示就是area 1。remote-RID就是R1和R2的RID 配置实例:(以图3图4为例) R4(config-router)area 1 virtual-link 1.1.1.1(R1的router-ID) R3(config-router)area 1 virtual-link 2.2.2.2(R2的router-ID)*************************************************************** 4、路由重分布 4.1 需要路由重分布的场合,外部路由导入 (1)直连 (2)静态 (3)其他路由协议的路由 4.2 重发布直连路由 配置命令: Router(config-router)#redistribute connected subnets 4.3重发布静态路由 Router(config-router)# redistribute static subnets 4.4其他协议路由重发布 4.4.1 OSPF和EIGRP重发布到RIP OSPF重发布到RIP Router(config-router)# redistribute ospf x(OSPF进程号) EIGRP重发布到RIP Router(config-router)# redistribute eigrp x(EIGRP进程号) 4.4.2 OSPF和RIP重发布到EIGRP Router(config-router)# redistribute ospf x(OSPF进程号)1000 100 255 1 1500 注意:这五个是EIGRP中的默认参数,保证和EIGRP中一样,保证可达,不加参数重发布进去后路由变成不可达,这些参数也可以依需要定义。 RIP重发布到EIGRP Router(config-router)# redistribute rip subnets 1000 100 255 1 1500 4.4.3EIGRP和RIP重发布到OSPF RIP重发布到OSPF Router(config-router)# redistribute rip subnets EIGRP重发布到OSPF Router(config-router)# redistribute eigrp x(EIGRP进程号) *************************************************************** 5、路由策略 路由策略:路由过滤的策略 应用场合:重分布和路由过滤 配置命令: Router(config)#route-map <name1> Router(config-route-map)#match ip address prefix-list <name2> Router(config-route-map)#exit Router(config)#ip prefix-list <name2> seq <number> permit x.x.x.x/ x ge value le vlaue Router(config-router)#redistribute connected subnets route-map <name1>
/*匹配A.B.C.D/掩码位数E路由才被允许发布*/ 注意:在重发布时候可以调用router-map,这边用直连来举例。
prefix-list默认是阻止一切的,所以如果配置的是deny命令,记得在最后加上permit any 前缀列表:ip prefix-list list-name seq_num deny/permit prefix/prefix_lenth ge ge_value le le_value,ge表示大于等于,le表示小于等于,匹配路由的速度会比ACL快。 例:ip prefix-list spoto 10 permit 10.1.1.0/24 ge 24 le 32 *************************************************************** 6、策略路由 配置命令: Router(config)#route-map <name1> Router(config-route-map)#match ip address ACL_num Router(config-route-map)#set ip <default> interface <fastethernet 0/0>或者是:Router(config-route-map)#set ip <default> next-hop A.B.C.D
/*可选参数default,有default的先查路由表找不到精确匹配的路由条目时候,才转发数据包到default语句指定的下一跳IP或者出接口,没有default先不查路由表直接是否匹配然后转发数据包,不匹配才用路由表*/ 在数据的入接口下: Router(config-if)#ip policy route-map name1 注意事项:1、在接口下应用route-map必须是数据的进入接口2、不匹配策略路由的数据包将以正常路由转发3、在策略路由中加入跟踪Router(config-route-map)#set ip next-hop verify-availability 10.10.10.10 <next-hop表号码> track <num> *************************************************************** 7、ACL 标准ACL:access-list x num(1-99) permit/deny <source-ip> <wild-mask> 扩展ACL:access-list x num(100-199) permit/deny <protocol> <soucre-ip> <wildmask> eq <port-num> <destination-ip> <wildmask> eq <port-num> 7.1时间的ACL 用time-range 命令来指定时间范围的名称,然后用absolute命令或者一个或多periodic命令来具体定义时间范围。 time-range time-range-name
/*用来标识时间范围的名称*/ absolute [start time date] [end time date]
/*指定绝对时间范围*/ periodic days-of-the week hh:mm to [days-of-the week] hh:mm /*以星期为单位来定义时间范围的一个参数*/ 配置说明: 1、我们要表示每周一到周五的早9点到晚10点半,就可以用:
periodic weekday 9:00 to 22:30;
2、每周一早7点到周二的晚8点就可以用:
periodic Monday 7:00 to Tuesday 20:00
3、我们要使一个访问列表从2008年7月20日早0点开始起作用,直到2008年7月31日晚0点停止作用,语句如下: absolute start 00:00 20 July 2008 end 00:00 31 July 2008 注意:如果省略Start及其后面的时间,那就表示与之相联的Permit或Deny语句立即生效,一直作用到End时间为止;如果省略End及其后面的时间,那就表示与之相联的Permit或Deny语句在Start处时间开始生效,并且永远发生作用。 access-list x num(100-199) permit/deny <protocol> <soucre-ip> <wildmask> eq <port-num> <destination-ip> <wildmask> eq <port-num> time-range name(ACL上面要调用刚才配置的time-range) 接口子模式下面 Router(config-if)#ip access-group x in/out (接口调用) show ip interface interface-type x /*查看是否在接口上面调用Policy routing is disabled表示没有调用成功,enable表示调用成功*/ 注意:配置时间ACL时候注意系统查看系统时间,特权模式下面 Router#show clock查看系统当前时间。 Router #clock set HH:MM:SS <day> <month—用英文单词> <year> 在全局配置模式下配置时区: R1(config)#clock timezone name x 7.2指定NTP服务器,以保证时间的正确性 Router (config)#ntp server
Hostname / A.B.C.D 带established的ACL access-list x num(100-199) permit/deny <protocol> <soucre-ip> <wildmask> eq <port-num> <destination-ip> <wildmask> eq <port-num> established 作用:只有本路由器发出去的包,回包才会被正常接收并转发。外部发起的包到达本路由器后,直接丢弃。 注意:ACL可能会过滤路由更新包,所以要配置ACL允许更新包,保证路由正常。 *************************************************************** 8、NAT Router (config-if)#ip nat inside
/* 指明内网接口*/ Router (config-if)#ip nat outside
/* 指明外网接口*/ Router (config)#ip nat inside source static x.x.x.x x.x.x.x
/*静态NAT*/ 动态NAT Router (config)#access-list x permit any Router (config)#ip nat pool word first-ip last-ip mask Router (config)#ip nat inside source list x pool word 复用出接口IP的PAT Router (config)#access-list x permit any Router (config)#ip nat inside source list x interface x overload 复用某个公网IP的PAT Router (config)#access-list x permit any Router (config)#ip nat pool word first-ip last-ip mask Router (config)#ip nat inside source list x pool word overload 8.2端口映射 Router (config)#ip nat inside source static source-ip internet-ip (公网的ip) 8.3轮询NAT ip nat pool name source-ip source-ip(源地址范围) netmask x.x.x.x type rotary *************************************************************** 9、PPP 在PPP协议中,可以将多个PPP链路捆绑起来,形成一条宽更大的PPP链路,成为PPP Multilink,即多链路PPP。 多链路PPP通常应用在用户原有的PPP链路带宽要够,然后又申请看一条新PPP链路的情况下。为了达到不对原有的配置进行的更改,而且两条PPP链路均能被利用的目的,可以使用多链路PPP技术。 当在路由器上配置了多链路PPP之后,相当于在路由器上形成了一个新的PPP多链路接口(Multilink-group Interface)。此接口包含看其他的普通PPP接口,关于PPP协议的各种配置。如IP地址等均在此PPP模板接口上配置即可。这样,对于路由器来说就相当于有人一个大带宽的PPP接口。 虽然目前数据链路的带宽越来越大,多链路PPP使用的范围也越来越窄,但多链路PPP还有自己的一些有点:
(1)增加带宽
多条PPP链路捆绑起来,能够增加原有的PPP链路带快,同时使用一个IP地址,而不需要每条PPP链路都进行配置。如果同动态拨号结合起来,多链路PPP可以做到动态增加或减小带宽
(2)负载分担
多链路PPP能够实现报文在不同PPP链路上的负载分担。对于想、速率高的PPP链路,传输的报文就要多谢,对于速率低的PPP链路,传输的报文就要小些。
(3)利用分片降低时延
当报文在多链路PPP上传输时,通常会被划分成多个分片在多链路上同时传输。这样对于比较大的报文,。就可以降低传输的时延。 9.1 PAP Router(config)#username x password x /*定义PAP 认证所需的用户名及密码*/ Router(config)#interface seria x Router(config-if)#encapsulation ppp Router(config-if)#ppp authentication pap(有配这个说明这个是服务器)/*接口上启用PAP认证*/ 9.2 CHAP Router(config)#username x password x /*定义CHAP 认证所需的用户名及密码*/ Router(config)#interface seria x Router(config-if)#encapsulation ppp Router(config-if)#ppp authentication chap(有配这个说明这个是服务器)/*接口上启用chap认证*/ 注意:配置认证时候大家注意是配置双向认证还是单向认证 PPP多链路捆绑 PPP Multilink协议(MP)是PPP(点对点协议)的扩展,它具有绑定两条或多条同步并行连接的能力。所产生的虚拟连接拥有的带宽等于各条独立连接的带宽的总和。PPP Multilink协议它的最好的一个功能是,他可以多链路冗余,也就是说一条物理链路down或是损坏的话,不影响数据的传输。 Router(config)#interface multilink 1 Router(config-if)#ip address ip-address mask Router(config-if)#ppp multilink Router(config-if)#ppp multilink group 1 Router(config)#interface serial x Router(config-if)#no ip address Router(config-if)no shutdown Router(config-if)encapsulation ppp Router(config-if)ppp multilink Router(config-if)ppp multilink group 1 ***************************************************************
该贴已经同步到 Vneng的微博 |