• 路由基础-第一章


    第零层:前言

    路由基础这一节的复习没有看任何老师的讲解视频,而是看了《HNCP路由交换指南》的路由基础这一章节之后的自我梳理。在一年之前看《HCNP路由交换指南》的时候还是一种“不识庐山真面相,只缘身在此山中”的感觉,现在再看时就能够把握住作者想说的话和每一章的结构,能基本上理解每一句话,能大概判断下一句话要讲什么,感觉真的是太棒了!当我写这篇自我梳理的时候,我认为我完全没必要按照作者对这一章节的架构来梳理,完全可以按照自己的方式。

    当看完整个章节之后,发现整个章节都是围绕着路由表扩展开始讲的。

    • 路由表里面有协议这一字段,这一字段扩展来讲其实也没有什么好讲的,无非是直连、静态、动态、而动态又分距离矢量和链路状态路由这两种类型,这一字段其实是概括性的,没什么好说的;
    • 还有目标网络和掩码这一字段,这一字段里面讲了路由匹配和最长掩码匹配这两个重要的知识点。在下一跳接口和下一跳IP这里知识点比较重要,强调了各种路由书写方式导致的不同后果,既然讲到下一跳接口,又扩展到路由黑洞,通过路由黑洞又可以扩展出路由汇总、nat这些知识点;
    • 优先级和度量值也是相对简单的,讲了路由是如何匹配的,当遇到不同的情况路由器是如何处理的,以及利用优先级可以做浮动路由,通过浮动路由双引出了企业双链路负载均衡;最后通过静态路由的缺点又引出了NQA和BFD;
    • 标记位,通过标记引出了FIB和路由表,其实FIB是可以与路由书写那个小节产生联系,可以让我们更好的理解;

    另外,作者这一章节还”抖了两个激灵“,一个是在路由书写时如果书写错误会导致意外,但通过一种手段(arp代理)就能弥补这个错误;另一个是在路由汇总这一个小节当中,如果真的汇总错误之后,我们还可以通过路由黑洞加入弥补。

    作者在最后的环节出了几道题目,有几道题目真的有点意思,我虽然可以答出一些答案,但是无法将这个问题回答完美,比如这个问题有三个答案,我能回答出来两个,但也从侧面反应出我对知识的整合是不足的。

    第一层:路由基础

    • 什么是路由?

    路由就是转发,什么转发呢?就是根据目标IP查找路由表进行转发。

    • 路由表里面有什么内容?

    协议、目标IP和掩码、下一步接口和IP、优先级和度量值、标记

    • 路由条目当中的协议是什么意思?

    代表着通过什么途径得到这个路由协议,比如静态or动态orOSPF

    • 优先级是什么意思?越大越好还是越小越好?

    优先级就是路由匹配时候用到的优先级,路由协议有很多,有的优秀,有的不那么优秀,就是通过优先级来区别,越是优秀的路由协议优先级越小,越小也就意味着越高,使用的几率就会越大。

    • 优先级什么时候会起作用?

    当通过不同的路由协议学到去往同一个目标网段的路由时,优先小的优先使用。

    • 说一下直连、静态、rip、ospf、MPLS、ISIS、BGP各自的优先级是多少

    直连是0,静态是60,ospf内部路由是比较优秀的,仅次于直连是10,ISIS又次于OSPF是15.

    RIP是100,OSPF_ASE和NSSA都是150,BGP的IBGP和EBGP都是255.

    • 直连路由被加载到路由表的前提是什么?

    物理接口状态和协议状态都必须是UP的才可以。

    • cost、度量值是什么意思?

    就是开销的意思,就是从源到目标要用多少开销。

    • cost开销的意义

    优先级是规定死的,不能更改的,但是开销是可以更改的,对于从同一种路由协议学到的路由条目,这时候无法通过比较优先级了,因为优先级是一样的,这时候就得开销出马了。

    像是RIP、OSPF的开销都得是根据实际情况来的,静态和直连的的开销默认都是0.

    第二层:静态路由

    静态路由其实很简单,只要配置的时候稍微注意一点,还要掌握与其关联的三个东西:浮动路由、BFD、NQA

    • 在配置静态路由时,什么时候必须指定下一跳IP?

    广播多路访问(BMA)环境当中,比如以太网环境当中,有很多主机,如果仅指定下一跳接口,设备不知道将数据包交给谁。

    • 在配置静态路由时,什么时候不需要指定下一跳IP?

    在点到点的环境当中,这个时候只需要指定出接口也可以,因为这个接口只对应一台主机,不会出错。

    • 如果一个路由条目的优先级一样、开销也一样,比如两条静态路由优先级都是60,开销也一样,怎么选择呢?

    面对这种一模一样的环境,路由器也会傻眼了,会形成负载分担的结果;

    • 如果想破坏这种负载分担的场景,变成一主一备怎么搞呢?

    其实很简单了,将其中的一条路由的优先级更大一点,让其中一条胜出就可以了,当主的挂了,备的会自动顶上。

    • 什么时候会用到上述这种机制?

    比如说有两个公网出口的时候,这样的备份就会好很多;

    • 静态路由与浮动路由之间有什么关系?

    当有两种等价的静态路由条目,优先级和开销都一样时,会用到修改开销的方式隐藏一条路由,等到正在用的那一条消失后,自动浮出来,这就是两者之间关系

    • 直连和静态路由什么时候会消失?

    当所指向的接口断电之后,路由就会消失。

    • 这种断电消失的机制有什么问题?

    如果我在两个路由器之间加一个交换机,断交换机一个接口,另一个接口所接入的路由器因为感知到路由器的接口还有电,所以路由并不会消失,可是路明明已经断了。

    • 怎样避免这种问题?

    BFD和NQA

    • BFD与NQA与调用它们的路由条目是什么关系?

      是串连关系,我行你才行,我不行你也不行,BFD和NQA行,调用它们的路由条目才生效,如果BFD和NQA不行,静态路由条目也会立马失效;

    • BFD里面最重要的关键词是什么?解释一个这个关键词的意思?

    BFD(bidirectional forwarding detection双向转发检测),最重要的关键词是“双向”,BFD其实有点意思,两端都需要配置,两端相互做为客户端和服务端,平时有规律交互心跳报文,任何一端只要发现对端不通了,就会通知bfd关联的的静态路由消失。

    • NQA是什么?

    NQA(network quality analysis网络质量分析),这个NAQ有点zabbix的意思,能做的事情很多,可以调用很多的探测工具,调用ICMP、DNS、HTTP都是很正常的,我们可以让其调用ICMP,做一个单向的探测,模拟zabbix的简单探测,不需要被监控端做什么。

    同样的,需要关联静态路由,与静态路由关系依然是串行的关系,一旦NAQ探测失败了,就会让静态路由也失效。

    • BFD与NQA有什么区别?

    BFD是双向的,而NQA可以是单向


    这一part知识点在《HCNP路由交换指南当中的29页有描述》

    路由下一跳仅指下一跳接口

    • 我们我们故意在一个广播多路访问环境当中指路由时不指下一跳IP,就要指一个接口,这意味着什么?为什么要指下一跳时尽量不要指接口?

    因为一旦指了接口,就会让路由器偷懒不再计算,认为目标网段就是自己的直连接口,去往目标网段的时候就直接发arp广播!

    • 还有一种情况,下一跳IP和接口都指了,接口指对了,但下一跳IP指错了,这时候数据是怎样转发的?

    在这种情况下,下一跳接口和下一跳IP就是关联关系,路由器在收到目标网段的数据时,会通过下一跳接口arp广播询问下一跳IP的mac,如果询问不到,那就完蛋了。

    • 以后两种情况下,怎样通呢?

    在对端接口上开启了arp代理,这样如果对端设备拥有目标网段的路由时,就会用自己的MAC地址进行回应。


    存在仅指IP

    把IP指对了,就特别正常,下一跳掊会自动被上,如果把IP指错了,这时候就又分为两种情况。

    如果下一跳IP是可以根据已知路由推算出来的,那这时候路由器会纠正下一跳,纠正之后会有FIB表当中体现,如果是静态这么写的:”告诉A设备去往D需要通过C的转发“,经过查询路由表发现去往C需要经过B,这时候A设备会自动将纠正将去往D的流量交由B来转发,下一跳是B的IP,通过B的IP再来计算下一跳接口。

    如果从已知的路由条目当中无法找到去往目标路由的下一跳时,将不会在路由表当中体现出来


    • 如果我们即指了下一跳接口,又指了下一跳IP,对路由来着意味着什么?

    如果两者都皆有,路由器会直接加载,路由器会认为去往目标网段交给此下一跳IP,会在发送者arp广播下一跳的MAC,如果下一跳能收到就还正常,如果因为写错了,就不可到达了,如果通过一些小手段,比如arp代理之类的也能解决。

    第三层:动态路由

    • 距离矢量和链路状态路由最关键的区别

    一个通告的是链路状态,另一个通告的是路由信息,这就导致一个现象,那就是距离矢量路由协议不知道整个网络的拓扑,它只知道去哪里该怎么走、有多远(跳数)

    • 距离矢量路由协议是以什么做为度量值?距离矢量将直连网段的度量值做为多少?通告时怎么做?

    跳数,距离矢量路由协议将直接路由的度量值做为0,但通告给其它路由器的时候要加1。

    最长掩码匹配

    • 路由条目的最长匹配是怎么匹配的?

    所谓的路由匹配最长原则就是拿目标IP与路由条目的掩码做与运算得出目标地址的网络位,与路由条目的网络位做对比,拿哪一个路由条目能匹配的上,如果网络位一样,就按照路由条目的指向进行转发。

    • 什么情况下会匹配到两条路由呢?

    比如目标IP是172.16.2.1,但路由器却有两条这样的路由:

    条目1:172.16.0.0/16  192.168.1.1
    条目2:172.16.2.0/24  192.168.2.1
    

    按照最长匹配原则,这两条都能匹配的上,但用的时候会用条目2,因为条目1前16位和目标IP是网络位是一样的,而条目2,前24位和目标IP的网络位是一样的,24比16要长,所以要用条目2,这就是最长匹配原则。

    • 还可以利用最长匹配原则来做什么?

    利用最长匹配原则其实是可以影响对端路由器的,比如两个路由器都运行RIP,那宣告的时候可以通过改变宣告掩码的长度影响对端路由器的转发。

    • 如果两条带宽用的不是动态的RIP,而是静态的话,那用什么办法呢?

    用优先级做浮动路由就可以

    路由汇总

    • 路由汇总的子网掩码是向哪个方向移动的?

    是向左边移动的

    • 什么情况下会引发路由环路的情况发生?

    比如R1连接三个网段192.168.1.0、192.168.2.0、192.168.3.0,默认网关指向了172.16.0.1这个R2路由器,而R2路由做了错误的汇总,将192.168.0.0/16的下一跳全都回指向了R1路由器,这种情况下,如果有黑客登录到了R1路由器发送目标是192.168.3.x的垃圾报文,这时候R1指向R2,R2又指向了R1,会不断的循环。

    • 如果真的发生上述情况,应该怎么避免呢?

    通过路由黑洞,在R1上配置ip route-s 192.168.0.0/22 null0,这样R1再遇到发往192.168.3.x的报文时会直接丢弃

    • 上述黑洞会不会误伤?为什么?

    还是因为最长匹配的原则

    • 在配置NAT的什么情况下,会用到路由黑洞?

    在用地址池的时候,这个地方在《华为防火墙漫谈》NAT一节有讲解。

    FIB

    • 路由表和FIB表的区别?

    路由表和FIB的信息是同步的,但是FIB表人更难以理解,FIB的转发速度更快,用的是特殊的存储方式,猜是一种键值存储,读取速度非常快,FIB更真。

    • 路由表当中的RD和D是什么意思?

    D是已经下载到FIB表的意思,R是递归的意思。

    • 什么时候会出现R?

    出现R意味着路由表和FIB可能下一跳IP会不一致。

    在这里可以与配置静态路由时的注意事项关联一下

    • 配置了静态路由但是却没有生效,三种原因

      • 接口down
      • 去往同样目标网段的另一条路由优先级更高
      • 下一跳IP没有递归查询成功
    • 说出两种路由负载分担的方法

      • 通过优先级做浮动路由
      • 通过最长掩码的规则影响对端路由
  • 相关阅读:
    测试打印功能
    绘图
    图片验证码
    图片防盗
    图片水印
    surface 译
    ViewManager 译
    WindowId 译
    Display
    LayoutParams
  • 原文地址:https://www.cnblogs.com/yizhangheka/p/15349814.html
Copyright © 2020-2023  润新知