尽量选择路径最短的路由条目。
负载均衡:当路由器访问同一个目标且目标具有多条开销相似的路径时,可以让设备将流量拆分后延多条路径同时进行传输,以达到叠加带宽的作用。
环回接口:路由器上配置的一个虚拟接口,一般用于网络测试,不需要设备支持。
手工汇总:当路由器可以访问多个连续的子网时,若均通过相同的下一跳,则可以将这些网段进行总汇总计算,之后仅编撰汇总的静态路由即可达到减少路由条目,提高转发效率的目的。
路由黑洞:在汇总中若包含实际不存在的网段时,可能会使数据包有去无回,造成链路资源的严重浪费(合理的子网划分可以尽量减少路由黑洞)。
缺省路由:一条不限定目标的路由;查表时,若本地路由均不匹配,则将匹配缺省路由(0.0.0.0/0)。
特征:一旦路由黑洞和缺省路由相遇,将百分百形成路由环路。
空接口路由:在黑洞路由器上,配置一条到达汇总网段指向空接口的路由。
空接口:NULL 0 接口,路由器的一个虚拟接口,如果一条路由条目的出口为空接口,则代表将该条路由直接丢弃。
路由表匹配原则:最长匹配原则 / 精确匹配原则。
浮动静态路由:
定义该条路由条目的优先级为61。
ip route-static 192.168.2.0 24 12.0.0.2 preference 61
查询由静态路由生成的路由表。
display ip routing-table protocol static
进入一个环回接口,后面跟上接口名 。
关闭接口。
定义该条路由条目的优先级
ip route-static 192.168.2.0 24 12.0.0.2 preference 61
查询由静态路由生成的路由表
display ip routing-table protocol static
连通左右路由器并配置静态路由
#基础配置# [R1]interface g 0/0/0 [R1-GigabitEthernet0/0/0]ip address 12.0.0.1 24 #进入环回接口,接口编号为0 [R1]interface LoopBack 0 [R1-LoopBack0]ip address 192.168.0.1 24 #环回接口 1 [R1]interface LoopBack 1 [R1-LoopBack1]ip address 192.168.1.1 24 #配置静态路由,配置完查询路由表 [R1]ip route-static 192.168.2.0 24 12.0.0.2 [R1]ip route-static 192.168.3.0 24 12.0.0.2 [R1]display ip routing-table ###R2同理配置### #将R2 静态路由 进行汇总:192.168.0.0/23 包含了R1 两个网段 [R2]ip route-static 192.168.0.0 23 12.0.0.1 #ping通测试 [R2]ping -a 192.168.2.1 192.168.0.1
#R3 配置 缺省路由,通过它找到 2.2.2.2 网关 [R3]ip route-static 0.0.0.0 0 12.1.1.2 #查询路由表 [R3]display ip routing-table #R4 配置环回接口 [R4-LoopBack0]ip address 2.2.2.2 24 #R4 配置 1.0 和 2.0 的汇总路由,网段为 192.168.0.0/22 #此时 R4 可以通过 汇总网段 到达1.0 和 2.0 [R4]ip route-static 192.168.0.0 22 12.1.1.1
此时两个路由器可以互相 ping通,但是却产生了路由环路;由于环路还未启动,否则不能互通。
其中,对 R2 的 路由汇总 使 R1 产生了路由黑洞,变成黑洞路由器。
若我们此时给 R4 连接一个服务器,对其发送一个包,目标IP如图;
由于黑洞路由的存在,R1 无法识别 目标IP(属于 0.0/24 网段),本来应该将其丢弃,但是 R1 中有 缺省路由,便将目标IP发送给了下一跳,从而造成循环形成 路由环路。
即如果发送的数据包包含 0.0 或者 3.0 的网关,则一定会形成路由环路。
#将 汇总网段 指向 空接口 [R3]ip route-static 192.168.0.0 22 NULL 0
此时若 目标IP 发送过来,R1 路由表发现其属于黑洞,检测出是由 汇总网段 发送,触发 NULL 0,直接将其丢弃,直接解决了路由环路的问题。
若又有一个 目标IP 192.168.1.1/24 发送过来,同样属于汇总网段,也应该直接丢弃,但是 R3 路由表中包含 1.0/24 网段,根据最长匹配原则,掩码 24 比 汇总网段的掩码 22 长, 所以直接将其发送给 1.0 网段。
以上操作虽然没有解决路由黑洞,但是却从根本上解决了路由环路。
### 先进行基础配置 ### #给 R8 配置 静态路由 [R7]ip route-static 192.168.2.0 24 12.0.0.2 [R7]ip route-static 192.168.2.0 24 21.0.0.2 #此时有两条相似路径,优先级相同,出现 负载均衡 #所以先删除一条路由 12 [R7]undo ip route-static 192.168.2.0 24 12.0.0.2 #重新调整 静态路由 优先级 [R7]ip route-static 192.168.2.0 24 12.0.0.2 preference 61 #由于优先级数值越大,优先级就越低 #此时查看路由表只显示优先级高的路由 - 60 #查询由 静态路由 生成的路由表 [R7]display ip routing-table protocol static
此时可以查看静态协议的路由,分别是活跃和不活跃。
### 同理配置 R8 静态路由 ### #此时进行 互ping 发现成功 ping 通 [R8]ping -a 192.168.2.1 192.168.1.1
此时我们将高优先级的接口关闭,路由器应使用优先级低的备用接口。
#关闭 R8 0/0/1 接口,拓扑图对应的接口变红 [R8]interface g 0/0/1 [R8-GigabitEthernet0/0/1]shutdown #再进行 互ping 仍能 ping通 [R8]ping -a 192.168.2.1 192.168.1.1 #正常查询路由表 [R8]display ip routing-table
此时发现路由表只显示 优先级低 - 61 的路由条。
配置量大
不能基于拓扑的变化进行实时更新
可以基于拓扑的变化实时更新。
额外占用硬件资源
安全风险
选路错误的风险
AS :自制系统 标准编号:0 ~ 65535
其中:公有 1 ~ 64511 私有 64512 ~ 65535
AS 之间运行的 IGP 内部网关协议:
RIP OSPF EIGRP ISIS
AS 之间运行的 EGP 外部网关协议:
BGP
基于更新时是否携带子网掩码
有类别 -- 不携带子网掩码 无类别 -- 携带子网掩码
距离矢量协议(DV):RIP EIGRP 邻居间共享路由表
算法:贝尔曼福特算法
链路状态协议(LS):OSPF ISIS 邻居间共享拓扑
算法:SPF 算法
按通过路径上的路由器跳数来进行判断最优路径。
如图,本应是 1000M 的路径更快,但是由于下路只通过一个路由器,所以判断为下路更快。
使用跳数作为开销,周期更新和触发更新;存在 V1/V2/NG 版本,其中 NG 版本适用于 IPV6,已经被完全淘汰。
V1 为 有类别路由协议 ---- 不携带子网掩码;不支持子网划分和子网汇总。
V2 为 无类别路由协议 ---- 携带子网掩码
V1 为 广播更新 255.255.255.255
V2 为 组播更新 224.0.0.9
V2 拥有 手工认证
保活:每隔 30s 发送一次周期更新包,一共发 6 次
没有确认机制
水平分割 ---- 从此口进,不从此口出
仅在直线型拓扑中可以避免环路,主要作用是避免大量重复更新。
最大跳数 ---- 15 跳
触发更新:毒性逆转水平分割(从此口进,从此口出),并将该路由条带毒,要跳出就要16跳,不可能跳出。
30s 更新,发送6个更新包后,同时触发 180s 失效 和 180s 抑制
开始发送 4个待读路由后,300s 刷新
除 R5 的环回地址固定以外,整个其他所有网段基于 192.168.1.0/24 进行合理的IP地址划分
R1 ~ R4 每个路由器存在两个环回接口,用于模拟连接 PC 网段;地址也在 192.168.1.0/24 这个网络范围内
R1 ~ R4 上不能直接编写到达 5.5.5.0/24 的静态路由,但依然可以访问
全网可达,尽量减少每台路由器、路由表的数量,避免环路出现
R4 与 R5 相同,正常 1000M 链路通信,故障时自动改为 100M
骨干链路 192.168.1. 0/25 环回链路 192.168.1.128/25
我们先 借1位/25 将整体分为 21= 2 个链路,骨干链路给主网段用,环回链路给环回用。
然后 环回链路 借2位/27 分给4个路由器,再各个路由器 借1位/28 分成两个环回。
---- 借 6 位 /30
128 64 32 16 8 4 2 1
192.168.1.000000 00 / 255.255.255.240
借了几位,那每个网段的 间隔 就是位数的 顺序对应;这里顺数第6位,间隔就是 4。
网关 | 二进制展开 |
---|---|
192.168.1.0/30 | 192.168.1.000000 00 |
192.168.1.4/30 | 192.168.1.000001 00 |
192.168.1.8/30 | 192.168.1.000010 00 |
192.168.1.12/30 | 192.168.1.000011 00 |
192.168.1.16/30 | 192.168.1.000100 00 |
192.168.1.20/30 | 192.168.1.000101 00 |
这里原本应该借 3 位分成 23= 8 个网段,但是这样划分的话,每个网段就有 30 个可用 IP,从而造成 IP地址浪费;
所以这里选择借 6 位/30 划分为 64 个网段,每个网段刚好有 2 个 可用IP地址。
路由器 | 环回接口地址 |
---|---|
R1 | 192.168.1.128/28 |
192.168.1.144/28 | |
R2 | 192.168.1.160/28 |
192.168.1.176/28 | |
R3 | 192.168.1.192/28 |
192.168.1.208/28 | |
R4 | 192.168.1.224/28 |
192.168.1.240/28 |
由题知 R1 ~ R4 各有两个环回接口,所以我们在环回链路的基础上 借 3 位/28,将 环回链路 分成 23= 8 个网段。
###R1 配置 静态路由 [R1]ip route-static 192.168.1.4 30 192.168.1.2 [R1]ip route-static 192.168.1.12 30 192.168.1.10 [R1]ip route-static 192.168.1.16 30 192.168.1.2 [R1]ip route-static 192.168.1.16 30 192.168.1.10 #配置 环回接口路由# [R1]ip route-static 192.168.1.160 28 192.168.1.2 [R1]ip route-static 192.168.1.176 28 192.168.1.2 [R1]ip route-static 192.168.1.192 28 192.168.1.10 [R1]ip route-static 192.168.1.208 28 192.168.1.10 [R1]ip route-static 192.168.1.224 28 192.168.1.2 [R1]ip route-static 192.168.1.224 28 192.168.1.10 [R1]ip route-static 192.168.1.240 28 192.168.1.2 [R1]ip route-static 192.168.1.240 28 192.168.1.10 ###R4 配置 静态路由 [R4]ip route-static 192.168.1.0 30 192.168.1.13 [R4]ip route-static 192.168.1.8 30 192.168.1.13 #配置 环回接口路由# [R4]ip route-static 192.168.1.160 28 192.168.1.5 [R4]ip route-static 192.168.1.176 28 192.168.1.5 [R4]ip route-static 192.168.1.192 28 192.168.1.13 [R4]ip route-static 192.168.1.208 28 192.168.1.13 [R4]ip route-static 192.168.1.128 28 192.168.1.5 [R4]ip route-static 192.168.1.128 28 192.168.1.13 [R4]ip route-static 192.168.1.144 28 192.168.1.5 [R4]ip route-static 192.168.1.144 28 192.168.1.13###R2 配置 静态路由 [R2]ip route-static 192.168.1.8 30 192.168.1.1 [R2]ip route-static 192.168.1.12 30 192.168.1.6 [R2]ip route-static 192.168.1.16 30 192.168.1.6 #配置 环回接口路由# [R2]ip route-static 192.168.1.128 28 192.168.1.1 [R2]ip route-static 192.168.1.144 28 192.168.1.1 [R2]ip route-static 192.168.1.224 28 192.168.1.6 [R2]ip route-static 192.168.1.240 28 192.168.1.6 [R2]ip route-static 192.168.1.192 28 192.168.1.1 [R2]ip route-static 192.168.1.192 28 192.168.1.6 [R2]ip route-static 192.168.1.208 28 192.168.1.1 [R2]ip route-static 192.168.1.208 28 192.168.1.6 ###R3 配置 静态路由 [R3]ip route-static 192.168.1.0 30 192.168.1.9 [R3]ip route-static 192.168.1.4 30 192.168.1.14 [R3]ip route-static 192.168.1.16 30 192.168.1.14 #配置 环回接口路由# [R3]ip route-static 192.168.1.128 28 192.168.1.9 [R3]ip route-static 192.168.1.144 28 192.168.1.9 [R3]ip route-static 192.168.1.224 28 192.168.1.14 [R3]ip route-static 192.168.1.240 28 192.168.1.14 [R3]ip route-static 192.168.1.160 28 192.168.1.9 [R3]ip route-static 192.168.1.160 28 192.168.1.14 [R3]ip route-static 192.168.1.176 28 192.168.1.9 [R3]ip route-static 192.168.1.176 28 192.168.1.14#配置 R5 静态路由# [R5]ip route-static 192.168.1.0 30 192.168.1.17 [R5]ip route-static 192.168.1.4 30 192.168.1.17 [R5]ip route-static 192.168.1.8 30 192.168.1.17 [R5]ip route-static 192.168.1.12 30 192.168.1.17
# 配置 R1 ~ R4 缺省路由 # #R1 有两条,其余 都是一条 [R1]ip route-static 0.0.0.0 0 192.168.1.2 [R1]ip route-static 0.0.0.0 0 192.168.1.10 [R2]ip route-static 0.0.0.0 0 192.168.1.6 [R3]ip route-static 0.0.0.0 0 192.168.1.14 [R4]ip route-static 0.0.0.0 0 192.168.1.18
将 R1 ~ R4 的 /28网段 进行汇总,均属于/27 网段。
# 配置 R1 ~ R4 空接口路由 # [R1]ip route-static 192.168.1.128 27 NULL 0 [R2]ip route-static 192.168.1.160 27 NULL 0 [R3]ip route-static 192.168.1.192 27 NULL 0 [R4]ip route-static 192.168.1.224 27 NULL 0
#配置 R1 ~ R4 优先级 [R1]ip route-static 0.0.0.0 0 192.168.1.2 preference 61 [R2]ip route-static 0.0.0.0 0 192.168.1.6 preference 61 [R3]ip route-static 0.0.0.0 0 192.168.1.14 preference 61 [R4]ip route-static 0.0.0.0 0 192.168.1.22 preference 61