一、路由器
1、作用 为IP数据包路由(选路),尽可能挑选一个最近最优路径将报文发送至目的地
2、路由表 路由器用来记录报文转发路径的一张表
查看路由表的指令: display ip routing-table
二、路由协议
1、直连路由(direct): 与路由器接口直接相连,接口Up后路由器自动生成在路由表里的路由
(如上图中Protocol为Direct的路由)
2、静态路由 (static):静止的路由,即不会被自动修改、不支持学习的路由协议。
命令:ip route-static [Destination] [Mask] [NextHop]
ip route-static 13.1.1.1 24 12.1.1.2
R1:路由代码
ip route-static 13.1.1.0 24 12.1.1.2
ip route-static 192.168.2.0 24 12.1.1.2
R2路由代码:
ip route-static 192.168.1.0 24 12.1.1.1
ip route-static 192.168.2.0 24 13.1.1.2
R3路由代码:
ip route-static 12.1.1.0 24 13.1.1.1
ip route-static 192.168.1.0 24 13.1.1.1
路由器自身在发送ping包时,源IP地址是其出接口的IP地址
缺省(默认)路由企业的边缘路由器在向外网发送报文时,需要手动写每个目标IP地址(如百度、腾讯、淘宝)的路由 ,但由于数量繁多,不可能把每个地址都写上,所以缺省路由就用在这个情况下。只有当路由表中其他所有路由均不符合报文目的地址时,才会选择缺省路由。
命令: ip route-static 0.0.0.0 0 出接口
路由优先级(preference)及度量值(cost)
直连路由默认优先级:0
静态路由默认优先级:60
Ospf默认优先级:10
优先级和度量值代表此路由的优先程度。先比较优先级,优先级小的路由先执行;优先级相同的情况下,比较度量值。度量值小的路由先执行。
此功能用于路由的备份冗余。如下图,平时走的是下面的线的路由,如果突然接口down了,则可以自动切换成上面的路由。如果两条路由的优先级和度量值一模一样,则两条路由都会使用,即负载均衡。路由表中只会显示最优的路由,若最优路由失效,则会显示次优路由。
若大家配置了只有优先级不同的两条路由时,路由表中只显示一条优先级高的路由,不要奇怪或觉得自己写错了。
企业双出口冗余:企业办理了500M电信宽带和50M移动宽带,缺省路由中,则可以这样写:
ip route-static 0.0.0.0 0 出接口(电信宽带的) preference 59
ip route-static 0.0.0.0 0 出接品(移动宽带的)
R1路由命令:
ip route-static 192.168.4.0 24 192.168.2.2
ip route-static 192.168.4.0 24 192.168.3.2 preference 59
R2路由命令
ip route-static 192.168.1.0 24 192.168.2.1
ip route-static 192.168.1.0 24 192.168.3.1 preference 59
3、动态路由协议
大致原理:每个路由器会把自己的路由表发送给上一级路由,使得上一级路由可以学习到自己的路由表。依此类推,使得全网路由的路由表同步。
RIP协议
routing information protocol 路由信息协议,距离矢量类协议,以跳数(经过的三层设备的个数)作为判断到达目标地址的条件。最多15跳,16跳不可达。
缺点:收敛速度慢,已被Ospf取代。
原理:路由器每隔大约30秒钟(收敛速度慢,Ospf只需要10秒就可以更新)会向相邻路由发送与自己直连主类路由的组播,用于宣告自己知道的所有路由。
Rip使用UDP协议,目标地址为224.0.0.9的组播地址,端口号为520.
R1路由命令
rip 1 --------------------------->启动Rip进程 1
version 2 --------------------------->版本号为2 (一个拓扑中,最好版本号相同,版本1和版本2不兼容)
network 192.168.1.0 ------------>宣告与自己直连的主类网络(主类网络:A类:X.0.0.0 B类:X.X.0.0 C类:X.X.X.0)
network 12.0.0.0 ------------------>宣告与自己直连的主类网络
R2路由命令
rip 1 ------------------- ---->启动Rip进程 1
version 2 ------------------------>版本号为2
network 12.0.0.0 ----------------->宣告与自己直连的主类网络
network 13.0.0.0 ------------------>宣告与自己直连的主类网络
network 14.0.0.0 ------------------>宣告与自己直连的主类网络
R3路由命令
rip 1 --------------------------->启动Rip进程 1
version 2 --------------------------->版本号为2
network 192.168.2.0 ------------>宣告与自己直连的主类网络
network 13.0.0.0 ------------------>宣告与自己直连的主类网络
若R1和R3直接拉一根网线相连,R1和R3分别宣告相连的主类网络,则rip会自动判断并以这条网线所处的路由为优先路由。
如图,rip的优先级为100,若想改优先级,可以进入rip线程中,输入preference <1-255>即可。
OSPF协议
Open shortest Path First,开放最短路径优先协议,由IETF定义的一种基于链路状态的内部网关协议,默认优先级为10
OSFP层次化结构:骨干区域和常规区域。
配置命令中,
ospf 1 router-id x.x.x.x 启动进程为1的ospf协议,router id 是x.x.x.x, router id是ospf协议给路由器的一种标识。
area 0 区域号
network 【直连网络】 【反掩码】或者 network 【接口网络】 【0.0.0.0】
R1
ospf 1 router-id 1.1.1.1
area 0
network 192.168.1.0 0.0.0.255
network 12.1.1.0 0.0.0.255
R2
ospf 1 router-id 2.2.2.2
area 0
network 12.1.1.0 0.0.0.255
network 15.1.1.0 0.0.0.255
network 13.1.1.0 0.0.0.255
R3
ospf 1 router-id 3.3.3.3
area 0
net 13.1.1.0 0.0.0.255
net 192.168.2.0 0.0.0.255
net 14.1.1.0 0.0.0.255
R4
ospf 1 router-id 4.4.4.4
area 0
network 14.1.1.0 0.0.0.255
network 16.1.1.0 0.0.0.255
上图为ospf在路由表中的显示
组播地址224.0.0.05
ospf 在邻居刚建立的时候会发送路由信息(路由信息使用DBD、LSR、LSU、LSack四种报文来发送),路由同步以后,后面仅发送hello包来维持邻居关系即可。
ospf 常见的五种报文:
hello 包 :10s 发送一次 ,该报文仅用作邻居的建立和维持。并不携带任何路由信息。报文小巧。
DBD 数据库描述报文
LSR 链路状态请求
LSU 链路状态回应
LSack链路状态确认