网工面试问题之路由交换技术部分

说明:大部分面试问题出自数据中心和金融行业,转载自鸿鹄论坛。

OSPF问题

问题1

OSPF邻居故障,你认为是哪些原因?或者邻居建立的条件是什么?(几乎每家公司都会问)

答:

OSPF邻居故障:

  1. route id冲突
  2. 接口所属区域ID不一致
  3. 认证不一致
  4. hello/dead时间不一致
  5. MA网络中互联接口掩码不一致
  6. 如果开启了MTU检测则需要两端MTU检测值一直(华为默认不开启,默认值为0;思科默认开启,默认值为1500)
  7. 接口不能配置静默模式(不发不收hello报文)

问题2

什么情况下OSPF邻居会卡在2-way?

答:

这个题目没什么好回答的,Drother的邻居状态就是2-way,只有Drother和DR、BDR之间才会是邻接full状态。

问题3

OSPF引入外部路由有哪几种类型?默认是什么类型的?

答:

ASE有两种类型,type1和type2,默认是type2。

  1. Type1:选路是直接比较内部cost+外部cost,数值一样则进行负载分担,如果不一样则谁小谁优先。
  2. Type2:选路是先比较外部cost,谁小谁优先,在比较内部cost,谁小谁优先,如果两者cost相同,则进行负载分担。

问题4

思科和华为的OSPF对接需要注意什么?

答:

需要检查OSPF的邻居关系建立条件中的要素一:MTU值检查,要么在华为侧配置MTU值检查(华为接口下配置ospf mtu-enable命令开启检测),要么在思科侧配置MTU值不检查(思科接口下配置ip ospf mtu-ignore)。

BGP问题

问题1

BGP选路,常用的是哪几个?(除运营商会问的比较细,会问到集群Clusert list等等,其他数据中心大部分使用MED和本地优先级)

答:

  1. 优选local-pref本地优先级值(默认为100)最高的路由,不能传出IBGP,仅在本AS内有效(EBGP邻居接收到的路由除非自己在入方向加上策略,否则从EBGP邻居学习到的路由不会带有local-pref),命令为:default local-preference(如果收到的路由存在local-pre优先级则不会修改,如果路由不存在local-pre优先级则修改为本地路由器设置的local-pre值,默认为100)。
  2. 优选MED值最低的路由(默认情况下不比较来自不同AS邻居的路由信息的MED值,只比较相同AS传递的路由信息MED值),可以传给EBGP邻居,只能传递一个EBGP邻居,如果接收到的EBGP邻居未做针对其他EBGP邻居的出向MED策略,则其他EBGP邻居接收到的路由信息无MED值。如果都未做MED值的策略,则A传递路由给B时MED值为0,B传递路由给C时MED值为null。

问题2

BGP的本地优先级和MED有什么使用特点和区别?

答:

  1. 优选local-pref本地优先级值(默认为100)最高的路由,不能传出IBGP,仅在本AS内有效(EBGP邻居接收到的路由除非自己在入方向加上策略,否则从EBGP邻居学习到的路由不会带有local-pref),命令为:default local-preference(如果收到的路由存在local-pre优先级则不会修改,如果路由不存在local-pre优先级则修改为本地路由器设置的local-pre值,默认为100)。
  2. 优选MED值最低的路由(默认情况下不比较来自不同AS邻居的路由信息的MED值,只比较相同AS传递的路由信息MED值),可以传给EBGP邻居,只能传递一个EBGP邻居,如果接收到的EBGP邻居未做针对其他EBGP邻居的出向MED策略,则其他EBGP邻居接收到的路由信息无MED值。如果都未做MED值的策略,则A传递路由给B时MED值为0,B传递路由给C时MED值为null。

问题3

双PE下发同样的路由给CE,如何控制CE优先选择其中一个PE?(站在运营商的角度)

答:

我能想到的答案就是调整接收到的路由优先级,有其他答案欢迎各位大佬补充。

IS-IS问题

问题1

ISIS用过没有?和OSPF有什么不同?为什么运营商会使用ISIS?

答:

没在生产环境中用过,仅在模拟环境中使用过,和OSPF的区别如下:

  • 封装

    • IS-IS协议直接在链路层上使用,报文直接封装在链路层报文中,支持IP、OSI CLNP多种协议。
    • OSPF协议封装在IP中,只支持IP协议。
  • 生存时间

    • IS-IS的LSP生存时间是从20分钟(默认时间,可配置)往下计算到0来清除旧的LSP报文。
    • OSPF协议的LSA信息的生存时间是从0往最大值涨到60分钟(不可配置)来清除旧的LSA信息。
  • 区域

    • IS-IS协议中整个路由器只能全部属于一个区域,路由器的LSDB按级别来维护。
    • OSPF协议中是按接口来划分区域,一个路由器可以属于多个区域,每个区域维护一个LSDB数据库。
  • 骨干区域

    • 对骨干区域的类型定义不同,OSPF通过区域0来定义骨干区域,而IS-IS是通过链路的L2路由器来组成骨干区域
  • DIS/DR

    • IS-IS协议的DIS(DR)选举比较简单,是抢占式可预见的,优先级最高的成为DIS(DR)。
    • OSPF协议DR选举比较复杂,优先级最高的不一定是DR,并且有BDR的概念,而IS-IS没有BDR。
  • 网络类型

    • IS-IS只支持P2P和广播网络类型。
    • OSPF可以很好的支持各种网络模型,支持P2P、P2MP、BMA、NBMA。
  • 运营商使用ISIS的原因猜测如下:

    • ISIS比OSPF的效率更高,建立邻居和算法更快速,扩展性强(OSPF不支持扩展IPv6,ISIS协议可直接扩展IPv6),可以支持非IP协议(IPX)。

问题2

ISIS有哪些类型?一般用哪些类型?

答:

3种类型

  1. L1路由器。
  2. L2路由器。
  3. L1/L2路由器。

一般使用默认类型L1/L2类型。

问题3

ISIS的DIS和OSPF的DR有什么不同?

答:

  • IS-IS协议的DIS(DR)选举比较简单,是抢占式可预见的,优先级最高的成为DIS(DR)。

    ISIS选举DIS:

    1. 选举基于接口优先级(华为设备默认为64)
    2. 如果所有接口的优先级一样,具有最大的subnetwork point of attachment(SNPA子网连接点)的路由器将当选DIS
    3. 在LAN中,SNPA指的是MAC地址
    4. 在帧中继网络中,SNPA是local data link connectionidentifier(DLCI)
    5. DIS的选举是抢占式,没有规定不能参与选举的机制,当优先级为0的时候仍可以参加DIS的选举
    6. 与OSPF不同,它的选举是抢占式,IS-IS中不存在备份DIS,当一个DIS不能工作时,直接选举另一个
    7. DIS发送hello数据包的时间间隔是普通路由的1/3,这样可以保证DIS失效可以被快速检测到
  • OSPF协议DR选举比较复杂,优先级最高的不一定是DR,并且有BDR的概念,而IS-IS没有BDR。

NAT问题

问题1

NAT用过哪几种?做什么用的?

答:

NAT用过源目NAT

作用:

  1. 源NAT,可以做互联网出口NAT也可以做专线内网源NAT转换,还可以做域内NAT转换,将内网源地址转换后可以解决域内NAT的问题。
  2. 目的NAT,一般是做静态映射,也就是外网访问内网时做的NAT 映射转换。

生成树问题

问题1

在现网中你使用哪种生成树的版本?

答:

现网中华为或华三设备使用的是RSTP生成树版本,思科设备使用rapid-pvst版本。

问题2

RSTP生成树的端口角色有哪些?你在部署核心时用了生成树的哪些技术?

答:

DP指定端口、RP根端口、BP备份端口、AP交替端口、EP边缘端口。

使用了以下4个技术:

  1. EP边缘端口
  2. stp no-agreement-check #用于将端口改为使用普通P/A协商机制,主要用于不同厂家之间对接使用,例如华为与思科,如果是同厂家则不需要使用。
  3. stp bpdu-protection #华为交换机全局模式下配置,开启BPDU报文防护
  4. error-down auto-recovery cause bpdu-protection interval 间隔时间(最少30秒) #由BPDU-protection原因关闭的端口,会经过配合的间隔时间后自动恢复UP状态

问题3

各个不同厂家异构情况下,生成树对接有什么问题?(思科和华为生成树对接会有问题,我虽然遇到过,但是没有深入了解和解决,这个问题被两次问到,都没回答出来)

答:

华为交换机与思科交换机使用MSTP(思科为MST)对接时:

在域名、修订级别、VLAN实例映射表全都一致的情况下,由于双方BPDU报文密钥不一致,会导致两台设备不能正常互通。在这种情况下,需要在华为交换机对接的端口上使能摘要侦听功能,实现华为交换机的BPDU报文密钥与思科设备的BPDU报文密钥一致,来完成与对端的协商。

命令:

  • stp config-digest-snoop #使能域摘要侦听功能,华为交换机端口下执行,该命令又名强制域内,当收到其他厂商发送的MSTP协议报文域内摘要信息不一致时,学习对端的域摘要信息,强制为域内。
  • display stp region-configuration digest #华为交换机上查看域摘要信息
  • show spanning-tree mst digest #思科交换机上查看域摘要信息

华为交换机与思科交换机使用VBST(思科为PVST+)对接时:

华为交换机在V2R5及后续版本中可以通过VBST协议与思科PVST+协议进行对接,其原理一致,均使用保留的组播MAC地址01-00-0C-CC-CC-CD进行报文交互。

命令:

  • stp mode vbst #华为交换机全局模式下使用
  • spanning-tree mode pvst #思科交换机config模式下使用

华为交换机与思科交换机使用RSTP(思科为rapid-pvst)对接时:

首先STP、RSTP协议的收敛概念和PVST+、RPVST不同,STP与RSTP的收敛是基于整个端口的,而PVST+与RPVST的收敛是基于VLAN实例,原理上来说,STP、RSTP与PVST+、RPVST无论怎么混合组网,都是可以进行收敛,收敛结果有以下两类:

  • Block端口在华为设备上,因为标准STP与RSTP是基于端口阻塞的,所有数据报文(不区分VLAN)在Block端口被丢弃,包括思科的PVST报文,所以这时候一个环只有一个阻塞端口,在华为设备上。
  • Block端口在思科设备上,思科交换机上标准STP报文是VLAN 1所在的PVST实例发出的,所以STP Block端口只会阻塞VLAN 1实例(不阻塞整个端口),其他PVST报文正常通过该端口处理并转发,并在其所在VLAN内计算收敛,这时候一个环上会存在多个Blcok端口(与端口上VLAN实例数相等)。

命令:

  • stp mode rstp #华为交换机全局模式下使用
  • spanning-tree mode rapid-pvst或rstp #思科交换机config模式下使用

链路聚合问题

问题1

链路聚合中配置LACP和不配置有什么区别?LACP主要为了解决什么问题的?

答:

  1. 不配置LACP的话,华为和华三设备默认使用手工负载分担模式,手工负载分担模式下所有接口都处于转发状态,平均分担流量。

  2. LACP模式下,接口处于活动状态与非活动状态,也就是冗余模式。

  3. 不配置LACP的话,可能会导致厂家之间对接出现问题,例如思科默认使用PAGP模式,如果不配置LACP的话,思科与华为等厂家对家会导致无法协商成功从而无法对接成功。

  4. LACP主要解决冗余问题,手工负载分担模式下所有接口都处于转发状态,而LACP的话,会有备份链路的存在,所以当某条活动链路出现故障时,备份链路可以顶上。而手工负载分动模式则没有备份链路的概念。

DHCP问题

问题1

你部署的网络中用过DHCP吗?是怎么部署的?(设备上部署和服务器上部署,客户需求点不同)

答:

在Windows服务器端和交换机端都部署过,交换机端部署DHCP会减少DHCP报文传递,不用配置dhcp relay或者help-addree等配置,缺点是当配置N条IP与MAC绑定时会导致接口下的配置增加导致影响配置检查工作,配置热备操作比较繁琐,热备的操作依赖于VRRP,如果无VRRP协议则无法完成热备。

在Windows服务器端上配置则可以进行图形化的操作,并且各个功能模块分开,方便查看,同时域内多台DC设备存在可以配置故障转移热备。