前言✨✨✨
⛴️新的征途从这里开始⛴️
Route base💺
路由介绍:
什么是路由:⛵
路由就是寻径
路由信息就是去往目的地的一条信息,它指明了去往的目的地
要完成数据包的传输,路由器必须知道并处理哪些信息:
- 目的地址。
- 相邻路由器,并且能够从邻居处获得远程网络的信息。
- 到远程网络的所有可能路径。
- 能计算出到达远程网络的最佳路径。
- 要能够维护并验证路由信息,在路径发生改变时,要能很快的知道
什么是路由表:🚏
路由器使用一个路由器来保存去往目的地的路由信息,路由表中的信息描述了如何到达远程网络。
路由器根据路由器中的路由信息来进行数据包的转发,如果来路由表中找不到去往目的地的路由,数据包将会被丢弃。
路由表默认只有直连路由信息
路由表的基本元素:🏎️
目标网络
去往目的地的下一跳地址(直连的邻居地址)
出接口
管理距离值
metric值 描述了去往目的地的路线的好坏
管理距离:🛻
当不同的路由协议学到去往同一目的地路由的时候,用于在路由协议之间进行比较,以确定把从哪一种路由协议学到的路由放入路由表。
路由分两类:🚆
静态路由 – 手工配置的路由
动态路由 – 由动态路由协议学到的路由
默认路由 – 是一种特殊的形式,它指明了如果在路由表内找不到去往目的地的路由时,可以将数据从哪个方向转发出去。
配置静态路由:🛰️
实验一:在R2和R3上配置静态路由,实现互访。
R2#configure terminal Enter configuration commands, one per line. End with CNTL/Z. R2(config)#ip route 13.1.1.0 255.255.255.0 12.1.1.1
R3#configure terminal Enter configuration commands, one per line. End with CNTL/Z. R3(config)#ip route 12.1.1.0 255.255.255.0 serial 1/1 R3(config)#ip route 172.16.0.0 255.255.0.0 10.1.1.1 ? <1-255> Distance metric for this route name Specify name of the next hop permanent permanent route tag Set tag for this route track Install route depending on tracked item <cr> R3(config)#ip route 172.16.0.0 255.255.0.0 10.1.1.1 50 修改管理距离 R3(config)#ip route 172.16.0.0 255.255.0.0 10.1.1.1 permanent 默认当下一跳不可达时。此路由就会从路由表删除。加了这个参数就是无论下一跳是否可达。都保留在路由表中。(用这个参数时不能写接口,只能用下一跳。)
默认路由:🚨
默认路由是一条特殊的路由,可以用来代表所有的网络。
通常可以在存根网络上只配置默认路由:存根网络是指与外界只有一个输出连接的网络。
R2#configure terminal Enter configuration commands, one per line. End with CNTL/Z. R2(config)#ip route 0.0.0.0 0.0.0.0 s1/1 R2(config)#ip classless 如果想使用默认路由,就必须打上这一命令,否则数据包会被丢弃。现已默认配置。 R2(config)#
什么是路由协议:🚂
路由协议从工作范围来分类:
内部路由协议 IGP – 工作在自治系统之内
外部路由协议 EGP – 工作在这种系统之外
从工作原理分为:⛺
- 距离矢量协议 例如:RIP距离矢量协议通过判断离查找到达远程网络的最佳路径。数据包每通过一个路由器,称为一跳。使用最少跳数到达目的网络的路由被认为是最佳路由。距离矢量路由协议发送完整的路由表到相邻的路由器,一个传一个,所以被戏称为传言路由。周期为30秒
- 链路状态协议 例如:OSPFLSA(Link state)链路状态信息
- 混合型协议 例如:EIGRP
还可以分为:
- 有类协议 RIP-V1 、IGRP 通告时不带掩码,在主类边界自动汇总,不以手工汇总
- 无类汇总 RIP-V2 、EIGRP 、OSPF
置浮动静态路由:🚦
这是一种用来进行利用备份的方法,可以在动态路由发生改变,不再可用的情况下去启用一个备份路径。
其实就是写一条静态路由,但是将它的管理距离值设得比动态路由协议要大,这样平常这条静态路由就不会起作用,一旦动态路由不可用,消失了,这条静态路由就生效了。
实验三:
R1和R2之间有两条链路,在R1与R2的E0/0口之间运行RIP,并且将2.2.2.0 宣告进RIP,这样R1就可以学到2.2.2.0的路由,R1和R2之间还有一条链路是用s1/0口相连,现在要求在E0/0口down掉之后,R1还能通过S1.0的接口访问2.2.2.0网
R1#configure terminal Enter configuration commands, one per line. End with CNTL/Z. R1(config)#ip route 2.2.2.0 255.255.255.0 s1/0 150 只要在R1上设置这样一条静态路由就可以了
距离矢量路由协议🗺️
- 距离矢量名称是因为路由以协议的矢量(距离,方向)的方式被通告出去的,其中距离是根据度量定义的,方向是根据下一跳路由器定义的。
- 定期更新、广播更新、路由表更新;依照传说;距离矢量路由协议并不了解网络拓扑。定义一个最大值:
- 定义跳数的最大值15跳,16跳为不可达,以避免路由选择环路
- 通过水平分割消除选择环路简单水平分割的规则是,从某接口发送的更新消息不包含从该接口收到的更新所包含的网络,就是我从这个接口收到的路由就不会再发回去。
- 路由毒化
当10.4.0.0挂掉的时候,C会立即发送一条中毒消息(10.4.0.0 16跳)然后通告出去;B收到这条中毒消息后将10.4.0.0从路由表抹去,但仍存在在rip database里,状态是possible down,垃圾收集时间(Garbage colletion Cisco 默认60S)到后,路由被从B的database抹去。
- 毒性逆转同上图,4.0挂掉后,C会发送中毒消息消息,理论上4.0的路由是C通告给B的,根据水平分割原则,B不能向C通告4.0的信息,但是带毒性逆转的水平分割打破了这个原则, B会定期向C发送4.0的毒性逆转消息,以让C知道,他的邻居晓得了4.0挂掉的消息并且在眼巴巴的等着4.0原地满血复活,这样做的另一个好处是避免环路,至少C不会从B再去访问4.0了。
- 用触发更新避免环路新的路由表一般是定期发送给邻居路由器的,而触发更新(triggered update)则是立即发送以响应路由表的变化。
- 用抑制定时器(hold-down timer)防止路由选择环路当一个router从邻居roter收到一条更新,指示以前可达的网络现在不可达了,或有一个更大的跳数的路由,则这个router标该路由为不可达并启动一个抑制定时器,如果在定时器满以前收到该路由又可达的更新,或者比以前的记录有更好的度量值,则该router标识这个路由可达并删除定时器。
🌌总结🌌
美好的时光总是过得很快:
距离向量路由协议(distance-vector routing protocol),为路由协议中的两大分类之一,这类协议采用距离向量(distance-vector,缩写为DV)算法来决定报文交换的路径。本文主要总结了距离矢量路由协议的基础