13 路由原理和协议实施(ospf、静态路由)

  1. 路由器
  • 路由器(以及三层交换机)具有最基本的决策功能(路由决策依据路由表RIB,路由是指导IP报文发送的路径信息,如果没有目标地址的路由,只能丢弃)和转发功能(转发引擎,按照路由把数据转发到对应的接口或者线路上去)【先决策后转发】
  • 种类:直连路由、静态路由和动态路由(RIP、EIGRP、OSPF、IS-IS、BGP)
  • 度量值(Metric):表示到达这条路由所指目的地址的代价(cost,开销)。通常影响路由度量值的因素有线路延迟、带宽、线路使用率、线路可信度、跳数、最大传输单元。不同路由协议参考的因素不同:静态路由为固定值0,ospf依据带宽,rip依据跳数,is-is依据10的累加(缺省度量为10),eigrp和bgp为综合度量。
  • 优先级:不同协议比较优劣的一个标准(同一路由多种协议竞争路由表的标准)。优先级0-255,可配置范围为1-255,越小越优先,优先级最高的路由被添加进路由表。
    各厂商的优先级AD

问题:有一条路由,该路由会如何放入路由表呢?
前提:必须是同一条路由(10.1.1.1/32和10.1.1.0/24不是同一条路由)

1.如果从多个协议(方式)得到该路由,首先需要使用优先级或者管理距离来比较,优先级值数据越小越优先(如果2种协议的优先级相同,比如华为设备上OSPF的优先级改为了10,静态路由也改为了10,此时会比较协议最原始的优先级即内部优先级,OSPF的10优于静态的60,所以终选OSPF)
2.如果已经确定了某种路由来放入路由表,接下来会比较该路由协议多条路径中综合度量值较小的放入路由表
3.还需要注意同一种路由协议可能会具有路由优先级(OSPF、BGP和中间系统到中间系统协议),比如OE1(不比较开销值)一定会优于OE2

  1. 静态路由
    广泛应用于企业网的边缘,静态路由中最常用的方式为静态默认路由
  • 优势:不需要报文的支持,实施简单,小型的网络,精准的控制路由
  • 劣势:不会自动调整,实施过多会造成排错的困扰,无法支持大型网络,扩展性比较差
  1. 结合ARP以及讲解流量转发
    3.1 直连路由和静态路由的区别
    **直连路由:**直连路由是由链路层协议发现的,一般指去往路由器的接口地址所在网段的路径,直连路由无需手工配置,只要接口配置了网络协议地址同时管理状态、物理状态和链路协议均为UP时,路由器能够自动感知该链路存在,接口上配置的IP网段地址会自动出现在路由表中且与接口关联,并动态随接口状态变化在路由表中自动出现或消失。
    **静态路由:**静态路由是由网络管理员根据网络拓扑,使用命令在路由器上配置的路由,这些静态路由信息指导报文发送,静态路由方式也无需路由器进行计算,但它完全依赖于网络管理员的手动配置。默认路由是一种特殊的静态路由,网络管理管理员手工配置了默认路由后,当路由表中与目的地址之间没有匹配的表项时路由器将把数据包发送给默认网关。
    **区别:**直连路由只能使用于直接相连的路由器端口,非直连的路由器端口是没有直连路由的。静态路由信息在缺省情况下是私有的,不会传递给其他的路由器。当然,网络管理员也可通过对路由器设置使之成为共享的。网络管理员易于清楚地了解网络的拓扑结构,便于设置正确的路由信息。静态路由一般适用于较简单的网络环境。
    3.2 数据转发流程
    (本实验中配置静态路由使用的不是下一跳,而是出接口,其他配置和静态路由配置一样)
  • ARP表::源发现目的不是同一网络,此时需要发送到达自身网关的ARP(目的IP和目的MAC的映射,基本ARP)请求(源自自身,目的是全F的广播,封装网关的MAC),拥有该IP的设备会单播回送一个响应(含有对应的MAC);免费ARP,请求自身IP对应的MAC(广播),如果得到回应,那么说明IP地址冲突;代理ARP(思科默认开启,华为默认关闭,此试验需要早g0/0/0上arp-proxy enable),一个中间设备代理目的IP回送IP对应的MAC。ARP的2层帧不能跨越网络,所以在每个IP子网MAC地址都是重写,而源目IP不变化。关于ARP,参考预习
  • MAC地址表::和交换机的转发原理有关(收到广播帧或者未知单播帧会泛洪)
  • 路由表::查找路由表,发送数据到达目标地址(也会有ARP查询)。
  1. 静态默认路由和浮动路由
    4.1 静态默认路由
  • 默认路由0.0.0.0/0,目的网络是任意、掩码也是任意,代表所有未知网络。(已知网络是指明细(deitail)路由)
  • 转发原则:最长匹配原则,找到一条最精准到达目标地址的路由(即同一网络中最精准的网段)。
  • 实施:华为:ip route-static 0.0.0.0 0 g0/0/0 202.100.1.2;思科:ip route 0.0.0.0 0 e0/0 202.100.1.2;配置路由优先级华为:ip route-static 0.0.0.0 0 g0/0/0 202.100.1.2 preference 59;思科:ip route 0.0.0.0 0 e0/0 202.100.1.2 5【如果指配置出接口而不配置出口IPip route 0.0.0.0 0 e0/0(不推荐如此配置),则会出现“错误的配置,影响性能”(PPPoE除外)】
    4.2 浮动路由
    实施下面的命令之前需要去掉之前设置的8.8.8.8的路由"undo ip route-static 8.8.8.8 32",同时需要给串行接口配置IP
  • 两条默认路由--负载均衡(ECMP,等价开销多路径):
    第1条高速接口,接口和地址必须都配置:ip route-static 0.0.0.0 0 g0/0/0 202.100.1.2
    第2条串行接口,可以只配置接口(备用):ip route-static 0.0.0.0 0 s1/0/0
    验证:dis ip routing-table protocol static
    浮动路由-负载均衡
  • 两条默认路由--主备,高速线路为主,串行线路为备:
    华为设备静态路由优先值默认为60,通过修改优先值来影响路由是否写入路由表。
    第1条高速接口,(主)接口和地址必须都配置:ip route-static 0.0.0.0 0 g0/0/0 202.100.1.2
    第2条串行接口,(备)可以只配置接口:ip route-static 0.0.0.0 0 s1/0/0 preference 61
    验证:
    dis ip rou pro sta
    ping 8.8.8.8
    关闭接口g0/0/0:int g0/0/0 && shutdown
    ping 8.8.8.8
    ![浮动路由-主备线路]
  1. 黑洞路由
    配置黑洞路由后,相应网段数据被丢弃
    例如:ip route-static 8.8.8.8 32 null 0,则去往8.8.8.8的数据被丢弃
# .....................................静态路由
# R1去访问互联网上的8.8.8.8(R2的loopback0的地址)
# >>>>华为
# R2
int loop 0
ip addr 8.8.8.8 32
int g0/0/0
un ip addr 202.100.1.2 25 #去掉之前测试的地址
ip addr 202.100.1.2 30
# R1
int g0/0/0
un ip addr 202.100.1.1 25 #去掉之前测试的地址
ip addr 202.100.1.1 30
ping 202.100.1.2   # 测试直连路由能够通信之后才能进行下面的步骤
ip route-static 8.8.8.8 32 202.100.1.2
dis ip routing-table # 查看路由表
dis ip routing-table protocol static
ping 8.8.8.8  # 测试通信,发送用的静态路由,接收用的是直连路由