糖心vlog新闻资讯
糖心vlogTXAPP.TV:HCIE RS面试题目(很长
发布时间:2024-12-20
  |  
阅读量:
字号:
A+ A- A

HCIE RS面试题目

01以太网交换

1.1VLAN

1、交换机接口类型。Hybrid什么时候使用,什么时候打tag,什么时候不打tag。QinQ接口。

在802.1Q中定义VLAN帧后,设备的有些接口可以识别VLAN帧,有些接口不能识别VLAN帧。根据对VLAN帧的识别情况,将接口分为4类:

Access接口:

Access接口是交换机上用来连接用户主机的接口,它只能连接接入链路。仅仅允许唯一的VLAN ID通过本接口,这个VLAN ID与接口的缺省VLAN ID相同,Access接口对发往对端设备的以太网帧永远是不带标签的帧。

Trunk接口:

Trunk接口是交换机上用来和其他交换机连接的接口,它只能连接干道链路,允许多个VLAN的帧(带tag标记)通过。

Hybrid接口:

Hybrid接口是交换机上既可以连接用户主机,又可以连接其他交换机的接口。Hybrid接口既可以连接接入链路,也可以连接干道链路。Hybrid接口允许多个VLAN的帧通过,并可以在出接口方向将某些VLAN帧的tag剥掉。

QinQ接口:

QinQ(802.1Q-in-802.1Q)接口是使用QinQ协议的接口。QinQ接口可以给帧加上双重tag,即在原来tag的基础上,给帧加上一个新的tag,从而可以支持多达4094*4094个VLAN(不同的产品支持不同的规格),满足网络对VLAN数量的需求。

QinQ帧的格式如下图所示。外层的标签通常被称作公网tag,用来存放公网的VLAN ID。内层标签通常被称作私网tag,用来存放私网的VLAN ID。

糖心vlogTXAPP.TV:HCIE RS面试题目(很长(图1)

2、画图说明原始以太网Ⅱ的数据帧和802.1Qtag帧的数据结构和tag中个字段的作用

Type

长度为2字节,表示帧类型。取值为0x8100时表示802.1Q Tag帧。如果不支持802.1Q的设备收到这样的帧,会将其丢弃。

PRI

Priority,长度为3比特,表示帧的优先级,取值范围为0~7,值越大优先级越高。用于当交换机阻塞时,优先发送优先级高的数据帧。

CFI

Canonical Format Indicator,长度为1比特,表示MAC地址是否是经典格式。CFI为0说明是经典格式,CFI为1表示为非经典格式。用于区分以太网帧、FDDI(Fiber Distributed Digital Interface)帧和令牌环网帧。在以太网中,CFI的值为0。

CFI:用来表示MAC地址在不同的传输介质中是否以标准格式进行封装,长度为1比特。取值为0表示MAC地址以标准格式进行封装,为1表示以非标准格式封装。在以太网中,CFI取值为0。(H3C手册描述)

VID

VLAN ID,长度为12比特,表示该帧所属的VLAN。在Huawei AR2200系列中,可配置的VLAN ID取值范围为0~4095,但是0和4095协议中规定为保留的VLAN ID,不能给用户使用

1.2STP

1、Edge Port

1)请举例说明STP的Edge Port的作用,并且使用Edge Port会碰到什么问题,怎么解决和防止?

Edge Port的作用:快速进入转发状态;端口状态的变化不会引起整个拓扑的变化。

Edge Port的问题1: 使用Edge Port可能会碰到端口被用户私自连接到一个存在环路的交换网络,此时端口将不停接收到泛洪流量。

解决方法:

在端口启用Loopback detection。当用户开启以太网端口的环路检测功能后,设备便定时检测各个端口是否被外部环回。如果发现某端口有环回,设备会将该端口设置为处于环路检测工作状态,并可根据配置发送告警、或者阻塞接口、或者禁止接口MAC学习、或者关闭接口,减轻网络环路对整网设备和本设备的冲击。

Edge Port的问题2:使用Edge Port可能会碰到端口被用户私自连接到一个交换网络,导致根交换机被抢占。

解决方法:

在根交换机与接入层交换机的端口上配置根保护。

2)什么情况下一定使用Edge Port?

当上行链路不稳定时一定要将连接用户主机、SERVER等单个设备的的端口配置为Edge Port。因为上行链路在恢复连接之后,会进行P/A协商处理,在进行P/A协商的同步过程中,将会把所有非Edge Port的指定端口阻塞,从而导致用户主机失去30s的连接。

3)两个交换机Edge Port互联环路后,没有保护机制怎么办?

两个交换机的Edge Port互联环路后,生成树仍然运行,并在Edge Port端口之间发送或接收,依然可以避免环路

2、STP

1)介绍RSTP比STP的优势,RSTP优势的本质?

STP的不足:

(1)STP没有细致区分端口状态和端口角色,不利于初学者学习及部署。

(2)STP算法是被动的算法,依赖定时器等待的方式判断拓扑变化,收敛速度慢。

(3)STP的算法要求在稳定的拓扑中,根桥主动发出配置BPDU报文,而其他设备进行处理,传遍整个STP网络。

RSTP对STP的改进

(1)通过端口角色的增补,简化了生成树协议的理解及部署;

(2)端口状态的重新划分;

(3)配置BPDU格式的改变,充分利用了STP协议报文中的Flag字段,明确了端口角色。

(4)配置BPDU的处理发生变化(每台设备自主发送BPDU、更短的BPDU超时、处理次等BPDU)

(5)快速收敛(P/A机制、根端口快速切换、边缘端口的引入)

(6)保护功能(BPDU保护、根保护、环路保护、防TC-BPDU攻击)

(7)RSTP在拓扑改变的检测上的优势:

STP一个端口从不转发状态过渡到转发状态和从转发状态过渡到不转发状态,都认为拓扑发生了改变,都向上游指定交换机发送TCN;在RSTP中检测拓扑是否发生变化只有一个标准:一个非边缘端口迁移到Forwarding状态。

(8)STP与RSTP在拓扑改变的处理机制上优势:

STP检测到拓扑改变的交换机会将产生的TCN一直发送根网桥,由根网桥发送TC位置位的配置BPDU,其它交换机在收到TC位置位的配置BPDU之后,将MAC地址表的老化时间从300s减少到15s;

RSTP检测到拓扑改变之后直接产生TC位置位的RST BPDU,其他交换设备接收到RST BPDU后,清空所有端口学习到MAC地址,除了收到RST BPDU的端口。并且在网络泛洪该TC位置位的RST BPDU。

RSTP优势的本质是通过尽量避免使用定时器来加快收敛速度。

2)STP为什么要等Max Age,STP为什么要逐跳去传TCN?

STP需要确认从该端口无法接受到最佳BPDU,所以需要等待Max Age。在华为交换机上不需要等待这个Max Age,在其他厂商设备上需要等待。

因为在STP中只有指定端口才能发送配置BPDU,根端口只能接收配置BPDU。

3)P/A协商有没有从头到底协商的(从根向下传P,一直传到低端,然后从低向上依次回A)?如果AP端口可以发A置位BPDU并且还是阻塞端口会不会加快收敛,有什么影响。

P/A没有从头到底协商,每个网段分别P/A协商。如果AP端口可以发A置位BPDU并且还是阻塞端口,可以加快对端DP端口的收敛速度。

如果AP端口可以发A置位BPDU并且还是阻塞端口,无影响。因为该链路不转发数据。

4)RSTP和MSTP配合为什么有问题

由于RSTP/MSTP的指定端口快速迁移机制,即接收到下游的agreement报文才能进行快速迁移。引发这样的问题:上游桥运行RSTP,下游运行MSTP,此时,RSTP不向下游发agreement报文,MSTP的根端口没有接收到agreement报文,则表示MSTP没有同步,这就意味着根端口不向上游RSTP指定端口发agreement。所以,MSTP域内的agreement被抑制,上游RSTP指定端口只能在2倍的Forward Delay延时后Forwarding。

RSTP 和MSTP 均要求上游设备的指定端口在接收到下游设备的agreement 报文后才能进行快速迁移。不同之处如下:

对于MSTP,上游设备先向下游设备发送agreement 报文,而下游设备的根端口只有在收到了上游设备的agreement 报文后才会向上游设备回应agreement 报文。

对于RSTP,下游设备无需等待上游设备发送agreement 报文就可向上游设备发送agreement 报文。

解决办法

将运行MSTP协议的桥作为上游,运行RSTP的桥做下游。因为RSTP的同步不要求根端口接收到上游的agreement,所以在这种情况下上游MSTP指定端口可以接收到下游RSTP根端口发送的agreement,就可以快速迁移了。

3、谈谈你对生成树协议的见解

1)生成树协议的作用是什么,控制使用好生成树协议对我们的网络能带来哪几个好处;

消除环路:通过阻塞冗余链路消除网络中可能存在的网络通信环路。

链路备份:当前活动的路径发生故障时,激活冗余备份链路,恢复网络连通性。

2)STP/RSTP/MSTP的区别是什么?

3)利用生成树协议实现用户流量负载均衡的条件有哪些;

用户必须被划分到不同的VLAN;

不同VLAN需要被放入不同的生成树实例;

不同生成树实例需要使用不同汇聚层交换机作为根交换机;

4)MSTP相比STP和RSTP有什么优点,在工程实施的时候要注意什么问题;

MSTP相比STP收敛更快,相比RSTP可以实现负载匀衡。

在工程实施中要注意以下问题:

(1)根据Region(区域)的规划配置Region-Name、Revision-Level、Instance映射;

(2)在需要使用负载匀衡的场景中使用时,需要使用不同的汇聚层交换机作为不同生成树实例的根交换机;

(3)在与STP/RSTP兼容时,需要运行MSTP的交换机作为上游交换机。

6)配置交换机MST参数时哪几个条件匹配相同这些交换机才属于同一个MST域。

Region-Name、Revision-Level、Instance映射;

02广域网互联

2.1PPP

1、PPP的协商过程

Dead阶段(链路不可用阶段)

Establish阶段(链路建立阶段)

Authenticate阶段(验证阶段)

Network阶段(网络层协商阶段)

Terminate阶段(网络终止阶段)

2、PPP CHAP认证过程:

认证方和被认证方通过LCP协商链路连接,并且被认证方同意使用CHAP认证,CHAP

认证将经历以下三次握手(Three-way Handshake)过程:

(1)认证方向被认证方发送CHAP Challenge(挑战)消息(包括ID、随机数、用户名(默认使用主机名));

(2)被认证方接收到该挑战信息之后,会向认证方发送CHAP Response(响应)、消息(包括ID(与接收到挑战消息ID相同)、HASH值(由ID、随机数、共享认证口令产生)、用户名(默认使用主机名))

(3)认证方接收到响应消息之后,根据响应中的用户名查找验证数据库中该用户名对应的口令,并将该口令、ID、随机数产生Hash值。然后再将该HASH值与收到的响应中的HASH值进行匹配,如果HASH值匹配成功,则认证成功,向被认证方发送SUCCESS(成功)消息;如果HASH值匹配不成功,则认证失败,向被认证方发送FAILURE(失败)消息。

3、PPP协议协商成功之后,如果端口频繁Up/Down怎么办

出现此现象,一般是由于流量过大,PPP协议链路检测报文无法正常收发导致的。

解决方法:在配置PPP业务的接口下通过timer hold 0命令去使能PPP协议发送链路检测报文。

4、PPP链路两端的设备配置的IP地址不在同一网段,是否可以Ping通

可以。PPP的NCP协议可以获取对端设备的IP地址,即使两端的IP地址不在同一网段,也可以互相Ping通。

5、LCP的作用,协商哪些东西(字段)。SP、MP理解。PAP/CHAP认证,ID值来源,用户名和密码分析。PPP协议的LCP有哪些功能?

建立、拆除和监控PPP链路;

检测是否存在环路;

认证机制协商(PAP,CHAP);

MLP协商;

压缩机制协商;

LCP协议协商的过程?

链路两端交互config-request

同意对方的链路层参数则回config-ack

不同意对方的链路层参数则回config-nak

连续10次没有收到config-request的回应,则认为对方不可用。

6、LCP是如何检测环路的?

收到一个Configure-Request报文之后,其包含的魔术字需要和本地产生的魔术字做比较,如果不同,表示链路无环路,则使用Confugure-Ack报文确认(其他参数也协商成功),表示魔术字协商成功。在后续发送的报文中,如果报文含有魔术字字段,则该字段设置为协商成功的魔术字,LCP不再产生新的魔术字。

如果收到的Configure-Request报文和自身产生的魔术字相同,则发送一个Configure-Nak报文,携带一个新的魔术字。然后,不管新收到的Configure-Nak报文中是否携带相同的魔术字,LCP都发送一个新的Configure-Request报文,携带一个新的魔术字。如果链路有环路,则这个过程会不停的持续下去,如果链路没有环路,则报文交互会很快恢复正常。

2.2PPPoE

1、PPPoE Client侧端口频繁Up/Down,怎么办

(1)PPPoE Server分配的IP地址和Client其他端口的IP地址相同。

解决方法:在Client侧修改有冲突的端口IP地址或者在Server侧通过remote address命令修改Client侧IP地址。

(2)PPPoE Server端地址池已经都给Client分配完了。

解决方法:在IP地址池视图下执行network(IP地址池视图)命令扩大IP地址池分配IP地址的范围。

2、设备作为PPPoE Client时,下接局域网用户上网网速慢

PPPoE侧接口MTU值为1492字节,当从这个接口上送的三层转发报文大于MTU值且报文被设置为不可分片时就会导致报文无法发送出去,出现用户上网网速慢的情形。此时可以在拨号口下配置tcp adjust-mss value命令修改TCP协商阶段协商出的MSS(Max Segment Size)的大小,使报文长度小于拨号口的MTU值,保证报文能被正常处理,解决上网网速慢的问题。

2.3Frame Relay

1、帧中继二层内容(LMI?)LMI协议有哪些标准?用户端设备是如何知道PVC状态信息的?

ITU-T的Q.933 Annex A,ANSI的T1.617 Annex D和非标准兼容协议;

DTE端定时发送状态查询消息(Status Enquiry)。DCE端收到询问消息后,用状态消息(Status)应答状态询问消息(Status Enquiry)。DTE解析收到的应答消息(Status),以了解链路状态和PVC状态。当两端设备LMI协商报文收发正确的情况下,链路协议状态变为Up状态,PVC状态变为Active状态。帧中继LMI协商通过。

帧中继环境下逆向地址解析协议(Inverse ARP)是怎么工作的?

以上图为例说明帧中继环境下逆向地址解析协议(Inverse ARP)的工作过程。当帧中继LMI协商通过,PVC状态变为Active后,PVC开始InARP协商过程。InARP协商过程如下:

a)如果本地接口上已配置了协议地址,那么设备就在该虚电路上发送Inverse ARP请求报文给对端设备。该请求报文包含有本地的协议地址。

b)对端设备收到该请求后,可以获得本端设备的协议地址,从而生成地址映射,并发送Inverse ARP响应报文进行响应。

c)本端收到Inverse ARP响应报文后,解析报文中的对端地址,也生成地址映射。

d)RouterA端生成地址映射(10.1.1.2<--->100),RouterB端生成地址映射(10.1.1.1<--->100)。

经过LMI和InARP协商后,帧中继接口的协议状态变为Up状态,并且生成了对端IP地址映射,这样PVC上就可以承载IP报文了

03IP业务

3.1DHCP

1、DHCP报文我们都知道有8中报文,能否具体描述一下DHCP服务器什么时候发送DHCP ACK,什么时候发送DHCP NAK?你能否举出1-2个场景来描述使用DHCP NAK报文?

糖心vlogTXAPP.TV:HCIE RS面试题目(很长(图2)

DHCP DISCOVER:这是DHCP客户端首次登录网络时进行DHCP过程的第一个报文,用来寻找DHCP服务器。

DHCP OFFER:DHCP服务器用来响应DHCP DISCOVER报文,此报文携带了各种配置信息。

DHCP REQUEST:此报文用于以下三种用途。

客户端初始化后,发送广播的DHCP REQUEST报文来回应服务器的DHCP OFFER报文。

客户端重启初始化后,发送广播的DHCP REQUEST报文来确认先前被分配的IP地址等配置信息。

当客户端已经和某个IP地址绑定后,发送DHCP REQUEST报文来延长IP地址的租期。

DHCP ACK:当DHCP服务器收到DHCP客户端的DHCP REQUEST报文后,DHCP服务器会根据DHCPREQUEST报文中携带的MAC地址来查找有没有相应的租约记录。如果有,则向客户端发送包含它所提供的IP地址和其它设置的DHCP ACK确认报文

DHCP NAK:如果DHCP服务器收到DHCP REQUEST报文后,没有找到相应的租约记录,或者由于某些原因无法正常分配IP地址,则发送DHCP NAK报文作为应答,通知DHCP客户端无法分配合适IP地址。DHCP客户端需要重新发送DHCP DISCOVER报文来申请新的IP地址。

DHCP DECLINE:当客户端发现服务器分配给它的IP地址发生冲突时会通过发送此报文来通知服务器,并且会重新向服务器申请地址。

DHCP RELEASE:客户端可通过发送此报文主动释放服务器分配给它的IP地址,当服务器收到此报文后,可将这个IP地址分配给其它的客户端。

DHCP INFORM:客户端已经获得了IP地址,发送此报文的目的是为了从服务器获得其他的一些网络配置信息,比如网关地址、DNS服务器地址等。

以上8种类型报文的格式相同,只是某些字段的取值不同。DHCP报文格式基于BOOTP的报文格式。

DHCP客户端重用曾经分配的IP地址时会使用DHCP ACK或DHCP NAK

重新登录网络是指客户端曾经分配到可用的IP地址,再次登录网络时IP地址还在相应的租期之内。客户端不需要再发送DHCP DISCOVER报文,而是直接发送包含前一次分配的IP地址的DHCP REQUEST请求报文,即报文中的Option50(请求的IP地址选项)字段填入曾经使用过的IP地址。

DHCP服务器收到DHCP REQUEST报文后,如果客户端申请的地址没有被分配,则返回DHCP ACK确认报文,通知该DHCP客户端继续使用原来的IP地址。

如果此IP地址无法再分配给该DHCP客户端使用(例如已分配给其它客户端),DHCP服务器将返回DHCP NAK报文。客户端收到后,重新发送DHCP DISCOVER报文请求新的IP地址。

2、DHCP Server主动发送的DHCP OFFER,ACK和NAK报文,里面主要包含什么信息和参数,是广播还是单播发送?为什么这样设计?(也就是在问广播和单播你觉得哪种好?好在哪里?为什么这样设计?华为是怎么设计的?)。举出一个场景来阐述DHCP OFFER,ACK和NAK设计成广播和单播有什么差异?

DHCP OFFER报文和DHCP ACK报文里面包含的内容除了DHCP消息类型不同外,其他的内容相同。包含为客户端分配的IP地址、客户端的MAC地址、消息类型、服务器ID、子网掩码、租期、域名、网关、DNS服务器等内容。以单播方式发送。

OFFER消息和ACK消息是发送给客户端的,提供以及确认为客户端分配的IP地址糖心vlog。此时服务器可以认为客户端的IP地址为自己分配给客户的IP地址,二层封装为单播。

DHCP NAK报文里面包含DHCP消息类型为DHCP NAK;客户端的MAC地址等内容。以广播发送。NAK消息是发送给客户端的,拒绝客户端请求的IP地址。此时服务器不知道客户端的IP地址,用255.255.255.255代替,二层封装为广播地址。

DHCP OFFER报文和DHCP ACK报文是发送给客户端的,如果设计成广播,会让同一个广播域不需要收到该报文的设备处理这些报文。

DHCP NAK报文是发送给客户端的,但是是拒绝客户端请求的IP地址。如果此时设计成单播,在IP封装的目的IP地址写那个IP地址都不合适。

3、DHCP客户端从首次启动到获取IP地址要经历的四个步骤是以什么通信方式传输信息的,如果客户端与服务器处于不同IP网段,我们必须用什么技术来解决客户端获取IP地址的问题。(结合实际场景画图说明)。

1)DHCP客户端从首次启动到获取IP地址要经历的四个步骤:

(1)发现阶段

即DHCP客户端寻找DHCP服务器的阶段。客户端以广播方式发送DHCP DISCOVER报文,只有DHCP服务器才会进行响应。

(2)提供阶段

即DHCP服务器提供IP地址的阶段。DHCP服务器接收到客户端的DHCP DISCOVER报文后,从IP地址池中挑选一个尚未分配的IP地址分配给客户端,向该客户端发送包含出租IP地址和其它设置的DHCP OFFER报文。根据请求消息中的广播标示位来判断是广播还是单播。

(3)选择阶段

即DHCP客户端选择IP地址的阶段。如果有多台DHCP服务器向该客户端发来DHCP OFFER报文,客户端只接收第一个收到的DHCP OFFER报文,然后以广播方式向各DHCP服务器回应DHCP REQUEST报文,该信息中包含向所选定的DHCP服务器请求IP地址的内容。

(4)确认阶段

即DHCP服务器确认所提供IP地址的阶段。当DHCP服务器收到DHCP客户端回答的DHCP REQUEST报文后,便向客户端发送包含它所提供的IP地址和其它设置的DHCP ACK确认报文。DHCP客户端收到该确认报文后,会以广播的方式发送免费ARP报文,探测是否有主机使用服务器分配的IP地址,如果在规定的时间内没有收到回应,客户端才使用此地址。否则,客户端会发送DHCP DECLINE报文给

DHCP服务器,通知DHCP服务器该地址不可用,并重新申请IP地址。根据请求消息中的广播标示位来判断是广播还是单播。

flags:第一个比特为广播响应标识位,用来标识DHCP服务器响应报文是采用单播还是广播方式发送,0表示采用单播方式,1表示采用广播方式。其余比特保留不用。

2)如果客户端与服务器处于不同IP网段,我们必须用什么技术来解决客户端获取IP地址的问题。

由于在IP地址动态获取过程中采用广播方式发送请求报文,因此DHCP只适用于DHCP客户端和服务器处于同一个子网内的情况。为进行动态主机配置,需要在所有网段上都设置一个DHCP服务器,这显然是很不经济的。

DHCP中继功能的引入解决了这一难题:客户端可以通过DHCP中继与其他网段的DHCP服务器通信,最终获取到IP地址。这样,多个网络上的DHCP客户端可以使用同一个DHCP服务器,既节省了成本,又便于进行集中管理。

DHCP中继的工作过程为:

(1)具有DHCP中继功能的网络设备收到DHCP客户端以广播方式发送的DHCP-DISCOVER或DHCP-REQUEST报文后,将报文中的giaddr字段填充为DHCP中继的IP地址,并根据配置将报文单播转发给指定的DHCP服务器。

(2)DHCP服务器根据giaddr字段为客户端分配IP地址等参数,并通过DHCP中继将配置信息转发给客户端,完成对客户端的动态配置。

4、DHCP snooping和DHCP option 82的原理和作用分别是什么?(结合实际场景画图说明)

1)DHCP Snooping工作原理和作用:

DHCP Snooping的信任功能,能够保证客户端从合法的服务器获取IP(Internet Protocol)地址。

网络中如果存在私自架设的伪DHCP服务器,则可能导致DHCP客户端获取错误的IP地址和网络配置参数,无法正常通信。DHCP Snooping信任功能可以控制DHCP服务器应答报文的来源,以防止网络中可能存在的伪造或非法DHCP服务器为其他主机分配IP地址及其他配置信息。

DHCP Snooping信任功能允许将接口分为信任接口和非信任接口:

信任接口正常转发接收到的DHCP应答报文。

非信任接口在接收到DHCP服务器响应的DHCP Ack、DHCP Nak和DHCP Offer报文后,丢弃该报文。

管理员在部署网络时,一般将与合法DHCP服务器直接或间接连接的接口设置为信任接口,其他接口设置为非信任接口,从而保证DHCP客户端只能从合法的DHCP服务器获取IP地址,私自架设的伪DHCP服务器无法为DHCP客户端分配IP地址。

开启DHCP Snooping功能后,设备能够通过分析DHCP的报文交互过程,生成DHCP Snooping绑定表,绑定表项包括客户端的MAC地址、获取到的IP地址、与DHCP客户端连接的接口及该接口所属的VLAN(Virtual Local Area Network)等信息。

DHCP Snooping绑定表根据DHCP租期进行老化或根据用户释放IP地址时发出的DHCP Release报文自动删除对应表项。

出于安全性的考虑,管理员需要记录用户上网时所用的IP地址,确认用户申请的IP地址和用户使用的主机的MAC地址的对应关系。在设备通过DHCP Snooping功能生成绑定表后,管理员可以方便的记录DHCP用户申请的IP地址与所用主机的MAC地址之间的对应关系。

为了保证设备在生成DHCP Snooping绑定表时能够获取到用户MAC等参数,DHCP Snooping功能需应用于二层网络中的接入设备或第一个DHCP Relay上。

由于DHCP Snooping绑定表记录了DHCP客户端IP地址与MAC地址等参数的对应关系,故通过对报文与DHCP Snooping绑定表进行匹配检查,能够有效的防止攻击者构造合法用户报文对网络进行的攻击。

2)DHCP Option82工作原理和作用:

在传统的DHCP动态分配IP地址过程中,DHCP Server不能够根据DHCP请求报文感知到用户的具体物理位置,以致同一物理网络的任何用户得到的IP地址所拥有的权限是完全相同的。由于网络管理者不能对同一物理网络中特定的用户进行有效的控制,即不能够控制客户端对网络资源的访问,这将给网络的安全控制提出了严峻的挑战。

RFC 3046定义了DHCP Relay Agent Information Option(Option 82),该选项记录了DHCP Client的位置信息。DHCP Snooping设备或DHCP Relay通过在DHCP请求报文中添加Option82选项,将DHCP Client的精确物理位置信息传递给DHCP Server,从而使得DHCP Server能够为主机分配合适的IP地址和其他配置信息,实现对客户端的安全控制。

Option82包含两个常用子选项Circuit ID和Remote ID。其中Circuit ID子选项主要用来标识客户端所在的VLAN、接口等信息,Remote ID子选项主要用来标识客户端接入的设备,一般为设备的MAC地址。

设备作为DHCP Relay时,使能或未使能DHCP Snooping功能都可支持Option82选项功能,但若设备在二层网络作为接入设备,则必须使能DHCP Snooping功能方可支持Option82功能。

Option82选项仅记录了DHCP用户的精确物理位置信息并通过DHCP请求报文中将该信息发送给DHCP Server。而如果需要对不同的用户部署不同的地址分配或安全策略,则需DHCP Server支持Option82功能并在其上已配置了IP地址分配或安全策略。

Option82选项携带的用户位置信息与DHCP Snooping绑定表记录的用户参数是两个相互独立的概念,没有任何关联。Option82选项携带的用户位置信息是在DHCP用户申请IP地址时(此时用户还未分配到IP地址),由设备添加到DHCP请求报文中。DHCP Snooping绑定表是在设备收到DHCP Server回应的DHCP Ack报文时(此时已为用户分配了IP地址),设备根据DHCP Ack报文信息自动生成。

3.2NTP

1、NTP的工作方式有哪几种?

设备可以采用多种NTP工作模式进行时间同步:

1)单播服务器/客户端模式

单播服务器/客户端模式运行在同步子网中层数较高层上。这种模式下,需要预先知道服务器的IP地址。

2)对等体模式

对等体模式运行在同步子网中层数较低处。这种模式下,主动对等体和被动对等体可以互相同步,等级低(层数大)的对等体向等级高(层数小)的对等体同步。

3)广播模式

广播模式应用在有多台工作站、不需要很高的准确度的高速网络。典型的情况是网络中的一台或多台时间服务器定期向工作站发送广播报文,广播报文在毫秒级的延迟基础上确定时间。

4)组播模式

组播模式适用于有大量客户端分布在网络中的情况。通过在网络中使用NTP组播模式,NTP服务器发送的组播消息包可以到达网络中所有的客户端,从而降低由于NTP报文过多而给网络造成的压力。

5)多播模式

多播模式适用于服务器分布分散的网络中。客户端可以发现与之最近的多播服务器,并进行同步。多播模式适用于服务器不稳定的组网环境中,服务器的变动不会导致整网中的客户端重新进行配置。

用户可以根据需要选择合适的工作模式。在不能确定服务器或对等体IP地址、网络中需要同步的设备数量很多的情况下,可以通过广播或组播模式实现时钟同步;服务器和对等体模式中,设备从指定的服务器或对等体获得时间同步,增加了时钟的可靠性。

3.3FTP

1、说明FTP主动模式和被动模式的工作过程。做NAT时如果有DNS和FTP的时候需要注意什么。

1)主动模式的FTP连接建立连接主要步骤:

糖心vlogTXAPP.TV:HCIE RS面试题目(很长(图3)

(1)FTP SERVER启动FTP进程并开始监听TCP端口21,等待连接。FTP CLIENT使用一个随机的TCP端口(端口号大于1024,在这里,我们称它为x)向FTP SERVER的TCP 21号端口发起连接;此时完成控制连接建立。

(2)FTP CLIENT在控制连接上使用Port命令将一个随机端口(x+1)发送到FTP SERVER,

同时FTP CLIENT开始监听端口(x+1)

(3)FTP SERVER主动使用TCP端口20与FTP CLIENT Port命令中的端口(x+1)建立数据连接;

(4)数据连接成功之后,双方进行数据传输。传输完毕后发送数据的一方主动关闭数据连接。

2)被动模式的FTP连接建立连接主要步骤:

糖心vlogTXAPP.TV:HCIE RS面试题目(很长(图4)

(1)FTP SERVER启动FTP进程并开始监听TCP端口21,等待连接。FTP CLIENT使用一个随机的TCP端口(端口号大于1024,在这里,我们称它为N)向FTP SERVER的TCP 21号端口发起连接;此时完成控制连接建立。

(2)FTP CLIENT在控制连接上向FTP SERVER发送PASV命令,FTP SERVER对PASV命令回应,其中包含用于数据传输的临时TCP端口号P(P>1024);

(3)FTP CLIENT使用一个随机端口(N+1)与FTP SERVER选定的TCP端口P建立数据通道的TCP连接;

(4)数据连接成功之后,双方进行数据传输。传输完毕后发送数据的一方主动关闭数据连接。

3)做NAT时如果有DNS和FTP的时候需要注意,因为连接过程中需要启用一个临时端口,所以需要启用ALG(Application Layer Gateway,应用层网关)功能。

3.4ARP

1、描述ARP协议作用和操作过程?

地址解析协议ARP(Address Resolution Protocol)是用来将IP地址解析为MAC地址的协议。

ARP通过以ARP请求和ARP应答这两个过程完成地址解析。

ARP请求过程:

糖心vlogTXAPP.TV:HCIE RS面试题目(很长(图5)

如上图所示,HOSTA和HOSTB在同一网段,HOSTA要向HOSTB发送信息。

首先,HOSTA查看自己的ARP表,确定其中是否包含有HOSTB对应的ARP表项。如果找到了HOSTB对应的MAC地址,则HOSTA直接利用ARP表中的MAC地址,对IP数据包进行帧封装,并将数据包发送给HOSTB。

如果HOSTA在ARP表中找不到对应的MAC地址,则将缓存该数据报文,然后以广播方式发送一个ARP请求报文。ARP请求报文中的发送端IP地址和发送端MAC地址为HOSTA的IP地址和MAC地址,目标IP地址为HOSTB的IP地址,目标MAC地址为全0的MAC地址。由于ARP请求报文以广播方式发送,该网段上的所有主机都可以接收到该请求,但只有被请求的主机(即HOSTB)会对该请求进行处理。

ARP响应过程:

糖心vlogTXAPP.TV:HCIE RS面试题目(很长(图6)

HOSTB比较自己的IP地址和ARP请求报文中的目标IP地址,当两者相同时进行如下处理:将ARP请求报文中的发送端(即HOSTA)的IP地址和MAC地址存入自己的ARP表中。之后以单播方式发送ARP响应报文给HOSTA,其中包含了自己的MAC地址。如上图所示,HOSTB向HOSTA发出一个包含其MAC地址的ARP响应报文。

HOSTA收到ARP响应报文后,将HOSTB的MAC地址加入到自己的ARP表中以用于后续报文的转发,同时将IP数据包进行封装后发送出去。

2、ARP欺骗的操作过程和怎么样对付ARP病毒(结合实际场景画图说明),你知道的厂家方案中防止ARP病毒、攻击的解决方案和技术有哪些?

ARP欺骗攻击,是指攻击者通过发送伪造的ARP报文,恶意修改设备或网络内其他用户主机的ARP表项,造成用户或网络的报文通信异常。

ARP安全针对欺骗攻击的解决方案:

1)ARP表项固化

建议在网关设备上部署本功能。使能ARP表项固化功能后,设备在第一次学习到ARP之后,不再允许用户更新此ARP表项或只能更新此ARP表项的部分信息,或者通过发送ARP请求报文的方式进行确认,以防止攻击者伪造ARP报文修改正常用户的ARP表项内容。

设备提供三种ARP表项固化模式:fixed-all模式、fixed-mac模式和send-ack模式。

2)动态ARP检测

建议在接入设备上部署本功能

使能动态ARP检测DAI(Dynamic ARP Inspection)功能后,当设备收到ARP报文时,将此ARP报文的源IP、源MAC、收到ARP报文的接口及VLAN信息和DHCP Snooping绑定表的信息进行比较,如果信息匹配,则认为是合法用户,允许此用户的ARP报文通过,否则认为是攻击,丢弃该ARP报文。

本功能仅适用于DHCP Snooping场景。

3)ARP防网关冲突

建议在网关设备上部署本功能

通过ARP防网关冲突功能,可以防止用户仿冒网关发送ARP报文,非法修改网络内其他用户的ARP表项。

4)发送免费ARP报文

建议在网关设备上部署本功能

使能发送免费ARP报文功能后,设备作为网关,主动向用户发送以自己IP地址为目标IP地址的ARP请求报文,定时更新用户ARP表项的网关MAC地址,防止用户的报文不能正常的转发到网关或者被恶意攻击者窃听。

5)ARP报文内MAC地址一致性检查

建议在网关设备上部署本功能

通过ARP报文内MAC地址一致性检查功能,可以防止以太网数据帧首部中的源、目的MAC地址和ARP报文数据区中的源、目的MAC地址不一致的ARP欺骗攻击。

6)ARP报文合法性检查

建议在网关设备或接入设备上部署本功能

使能ARP报文合法性检查功能后,设备会对以太网数据帧首部中的源MAC地址和ARP报文数据区中的源MAC地址不一致的ARP报文进行过滤。

7)ARP表项严格学习

建议在网关设备上部署本功能

使能ARP表项严格学习功能后,只有本设备主动发送的ARP请求报文的应答报文才能触发本设备学习ARP,其他设备主动向本设备发送的ARP报文不能触发本设备学习ARP。这可以防止设备因收到伪造的ARP报文,错误地更新ARP表项,导致合法用户的通信流量发生中断。

3.6PING和Traceroute

1、说说Ping和traceroute的工作原理以及作用(结合实际场景画图说明)。

1)PING的工作过程

糖心vlogTXAPP.TV:HCIE RS面试题目(很长(图7)

Ping会发送echo request message到某个地址,然后等待应答(reply),当echo request到达目标地址以后,在一个有效的时间内(timeout之前)返回echo reply message给源地址,则说明目的地可达。如在有效时间内,没有收到回应,则在发送端显示超时。

Ping命令是把ICMP报文中的标示符置为发送该ICMP报文的进程,这样在对端可以区分出从本端运行的多个Ping实例。

Ping命令每发送一个ICMP回显请求报文,顺序号就加1,顺序号从1开始,不同的系统发送回显请求的数量不同,默认情况发送5个回显请求报文。也可以通过命令行参数设置发送回显请求报文的个数,如果对端可达,则在对端会相应回应5个和请求端同样序号的ICMP回应报文。

报文在转发过程中,如果TTL字段的值减为0,报文到达的设备就会向源端发送ICMP超时报文,表明远程设备不可达。

2)Tracert的工作过程

糖心vlogTXAPP.TV:HCIE RS面试题目(很长(图8)

源端首先发送3个TTL字段的值都为1的UDP数据报给远程设备,使用随机的任何大于32768的端口地址作为目标设备的接受报文端口,TTL为1的数据报到达某个路由器以后随即超时,路由器响应源设备一个ICMP的超时报文,之后源端再发送3个UDP数据报,这次更改TTL值为2,即经过2个路由器以后,响应源端ICMP超时报文,依次类推,直到这些UDP报文到达了目标设备。

由于发送的报文中的目的端口,目标设备接收到ICMP报文后,由于报文的端口是一个在目标设备没有应用的端口,目标设备就会响应ICMP port unreachable信息给源端,表示目标端口不可达,同时说明Tracert执行完毕。从而可以从源端显示的结果中,看到到目标设备所经过的路径。

Tracert发送数据报的TTL值最大可以到30,每一次发送如果在指定的时间的内没有回应报文,在发送端就会显示超时,如果发送30跳的值后,仍然显示为超时,表明无法达到目标设备,测试失败。默认情况没有发送报文的超时时间为5秒,可以在0ms~65535ms之间进行设置。

阐述IP包经过一台多层交换机时的转发原理和过程。

04IP单播路由

4.1RIP

1、RIP有哪些计时器,分别有什么作用?RIP的防环机制。

更新定时器(update timer):它定时触发更新报文的发送,更新周期默认为30秒。

老化定时器(Age timer):RIP设备如果在老化时间内没有收到邻居发来的路由更新报文,

则认为该路由不可达。

垃圾收集定时器:如果在垃圾收集时间内不可达路由没有收到来自同一邻居的更新,则

该路由将被从路由表中彻底删除。

抑制定时器(Suppress timer):当RIP设备收到对端的路由更新,其cost为16,对应路由进入抑制状态,并启动抑制定时器。为了防止路由震荡,在抑制定时器超时之前,即使再收到对端路由cost小于16的更新,也不接受。当抑制定时器超时后,就重新允许接受对端发送的路由更新报文。TXAPP.TV

定时器之间的关系:

RIP的更新信息发布是由update定时器控制的,默认为每30秒发送一次。每一条路由

表项对应两个定时器:老化定时器和垃圾收集定时器。当学到一条路由并添加到路由表中时,老化定时器启动。如果在默认180秒后没有收到邻居发来的更新报文,则把该路由的度量值置为16(表示路由不可达),并启动垃圾收集定时器,如果在默认120秒内仍然没有收到更新报文,垃圾收集定时器超时后在路由中删除该表项。

2、RIP的防环机制

1)水平分割

水平分割(Split Horizon)指的是RIP从某个接口学到的路由,不会从该接口再发回给邻居设备。这样不但减少了带宽消耗,还可以防止路由环路。

糖心vlogTXAPP.TV:HCIE RS面试题目(很长(图9)

如图1所示,RouterB目的地址是10.0.0.0的路由信息通告给RouterA后,RouterA不会再把到网络10.0.0.0的路由发回给RouterB。

2)毒性逆转

毒性逆转(Poison Reverse)指的是RIP从某个接口学到路由后,将该路由的开销设置为16(即指明该路由不可达),并从原接口发回邻居设备。利用这种方式,可以清除对方路由表中的无用路由。RIP毒性逆转可以防止产生路由环路。

糖心vlogTXAPP.TV:HCIE RS面试题目(很长(图10)

如图1所示,在不配置水平分割的情况下,RouterB会向RouterA发送从RouterA学到的路由,并且RouterA到网络10.0.0.0的路由开销值为1。如果RouterA到网络10.0.0.0的路由变成不可达,同时RouterB没有收到RouterA的更新报文,而继续向RouterA发送到达网络10.0.0.0路由信息,则会导致路由环路。

如果RouterA在接收到从RouterB发来的路由后,向RouterB发送一个这条路由不可达的消息,这样RouterB就不会再从RouterA学到这条可达路由,因此就可以避免上述环路的发生。

如果毒性逆转和水平分割都配置了,简单的水平分割行为(从某接口学到的路由再从这个接口发布时将被抑制)会被毒性逆转行为代替。

3)触发更新

触发更新的原理是,路由信息发生变化时,立即向邻居设备发送触发更新报文,通知变化的路由信息。

触发更新缩短了收敛时间,触发更新可以缩短网络收敛时间,在路由表项变化时立即向其他设备广播该信息,而不必等待定时更新。

糖心vlogTXAPP.TV:HCIE RS面试题目(很长(图11)

如图1所示,网络11.4.0.0不可达时,RouterC最先得到这一信息。通常,更新路由信息会定时发送给相邻Router(RIP 协议每隔30秒发送一次)。但如果在RouterC等待更新周期到来的时候,RouterB的更新报文传到了RouterC,RouterC就会学到RouterB的去往网络11.4.0.0的错误路由。这样RouterB和RouterC上去往网络11.4.0.0的路由都指向对方从而形成路由环路。如果RouterC发现网络故障之后,不再等待更新周期到来,就立即发送路由更新信息给路由器B,使路由器B的路由表及时更新,则可以避免产生上述问题。

4)路由毒杀

触发更新还存在另外一种方式:当下一跳不可用之后(如因为链路故障)需要及时通告给其它设备,此时要把该路由的cost设置为16然后发布出去,此更新也叫做路由毒杀。

3、RIPv2比RIPv1有哪些优势。

支持VLSM;

支持认证;

携带下一跳(类似于ICMP重定向);

携带tag值;

组播更新;

RIPv2报文携带下一跳的优化场景:

糖心vlogTXAPP.TV:HCIE RS面试题目(很长(图12)

R1、R2、R3之间连接在同一网段中。R1与R2之间运行RIP,R2与R3之间运行OSPF。

当R2将OSPF引入RIP时,R1得到3.3.3.3/32的下一跳不是123.1.1.2,而是123.1.1.3。因为R2发送到R1的RIPv2信息中携带了R2自己到达3.3.3.3的下一跳是123.1.1.3,R1将使用该RIPv2报文中的下一跳(123.1.1.3)作为自己的到达3.3.3.3的下一跳。

4.2OSPF

1、OSPF邻居无法建立有哪些原因,怎么解决?

1)OSPF报文头部的合法性;

(1)Router-ID不能相同;

(2)Area-ID必须相同;

(3)Authentication-Type必须相同;

(4)Authentication-Data

2)OSPF Hello报文的合法性;

(1)在BROADCAST和NBMA网络类型中需要相同的Network Mask;

(2)Option中E和NP位;

(3)Hello Interval Timer必须相同;

(4)Router Dead Interval Timer必须相同;

3)其它因素

(1)物理接口是否UP

(2)接口是否加入OSPF进程或被配置为Silent-Interface

(3)在BROADCAST和NBMA网络类型中主地址的网络地址必须相同;

(4)在NBMA网络类型中必须使用在OSPF进程中使用Peer命令手工指定邻居;

2、如果MTU不检查会怎么样,MTU不一致怎么让邻接关系起来?

MTU不一致可以配置成一致或忽略MTU检查。

3、邻接到FULL以后,那种情况路由会有问题?

需要选择DR和BDR的网络类型与不需要选择DR和BDR网络类型到FULL之后,路由会有问题。

4、OSPF怎么设计成没有环路的?

1)区域内使用SPF算法构建以自己的根的最短路径树;

2)区域间使用水平分割防止环路(即从一个区域发出的路由不能再发回原区域)。

3)VLINK的中转区域不接受其他区域的汇总路由。

4、当两端的网络类型不一致时.通过修改HELLO及DEAD值,能否建立邻接关系

可以

5、OSPF VLink的几种使用场景?Vlink有什么缺点?virtual-link中间隔了好几个路由器,怎么检测状态 ?

OSPF VLINK可用于一个非骨干区域未与骨干区域直接连接的场景;还可以应用于骨干区域被一个非骨干区域分离的场景。

虚连接的另外一个应用是提供冗余的备份链路,当骨干区域因链路故障不能保持连通时,通过虚连接仍然可以保证骨干区域在逻辑上的连通性。

Vlink是一条工作在Area 0的逻辑链路,在OSPF网络中部署Vlink,将增加网络的复杂性。

Vlink使用通过向Vlink的对等体发送单播的Hello包来检测状态的。

虚连接的两个端点需要相互交换协议报文,但是虚连接的邻居使用邻居的ROUTER ID来标识的,不能作为协议报文的目的IP地址。

如何确定协议报文的目的IP地址呢?

每个虚连接的端点都要计算两个最短路径树,一个是本地最短路径树,而另一个是虚连接邻居的最短路径树。

计算虚连接邻居的最短路径树之后,在最短路径树上查找如何达到本地路由器(ROUTER ID标识),虚连接邻居到达本地路由器的出发端口的IP地址即为本地路由器发给虚连接的协议报文的目的IP地址。

6、OSPF有哪几种路由过滤的途径?

1)在import方向使用Filter-policy过滤路由;

2)在ABR上使用Filter命令过滤3类LSA;

3)在ABR上聚合时使用not-advertise参数过滤3类LSA;

4)在ASBR上引入外部路由时,使用route-policy过滤外部路由。

7、各种LSA的作用和传递范围?

8、外部路由协议如何过滤?

在ASBR上引入时使用route-policy过滤

9、何时产生4类LSA?

当ABR接收到ASBR的一类LSA时

10、说说OSPF工作流程有哪几个阶段,有哪些协议包,各自的作用是什么?(画图说明)

OSPF共有8种状态机,分别是:Down、Attempt、Init、2-way、Exstart、Exchange、Loading、Full。

Down:邻居会话的初始阶段,表明没有在邻居失效时间间隔内收到来自邻居路由器的Hello数据包。

Attempt:该状态仅发生在NBMA网络中,表明对端在邻居失效时间间隔(dead interval)超时后仍然没有回复Hello报文。此时路由器依然每发送轮询Hello报文的时间间隔(poll interval)向对端发送Hello报文。

Init:收到Hello报文后状态为Init。

2-way:收到的Hello报文中包含有自己的Router ID,则状态为2-way;如果不形成邻接关系则邻居状态机就停留在此状态,否则进入Exstart状态。

糖心vlogTXAPP.TV:HCIE RS面试题目(很长(图13)

Exstart:如果形成邻居关系,则从Init状态转到Exstart状态,开始协商主从关系,并确定DD的序列号。

Exchange:主从关系协商完毕后开始交换DD报文,此时状态为Exchange。

Loading:DD报文交换完成即Exchange done,此时状态为Loading。

Full:LSR重传列表为空,此时状态为Full。

11、OSPF 为什么要划分区域?如何划分区域?有哪些区域?使用各种特殊区域的谜底分别是什么?

OSPF划分区域的目的是为了减少CPU和内存的占用。

可以根据物理位置来划分区域,OSPF区域的分界是在路由器上。

13、为什么思科里面OSPF优先级是110,华为里面一个是10一个是150。

华为里面域内、域间OSPF路由优先级为10,域外OSPF路由优先级为150。可以在某种场景下避免路由导入产生的次优路径。

场景:在RIP和OSPF两种协议环境下配置双点双向路由导入。

(OSPF协议里面如果有其他协议导入的路由,仍然会产生次优路径。)

14、OSPFv3

OSPFv3和OSPFv2协议比较如下:

相同点:

网络类型和接口类型。

接口状态机和邻居状态机。

链路状态数据库(LSDB)。

洪泛机制(Flooding mechanism)。

相同类型的报文:Hello报文、DD报文、LSR报文、LSU报文和LSAck报文。

路由计算基本相同。

不同点:

OSPFv3基于链路,而不是网段。

OSPFv3运行在IPv6协议上,IPv6是基于链路而不是基于网段的。

在配置OSPFv3时,不需要考虑是否配置在同一网段,只要在同一链路,就可以不配置IPv6全局地址而直接建立联系。

OSPFv3上移除了IP地址的意义。

这样做的目的是为了使"拓扑与地址分离"。OSPFv3可以不依赖IPv6全局地址的配置来计算出OSPFv3的拓扑结构。IPv6全局地址仅用于Vlink接口及报文的转发。

OSPFv3的报文及LSA格式发生改变。

OSPFv3报文不包含IP地址。

OSPFv3的Router LSA和Network LSA里不包含IP地址。IP地址部分由新增的两类LSA(Link LSA和Intra Area Prefix LSA)宣告。

OSPFv3的Router ID、Area ID和LSA Link State ID不再表示IP地址,但仍保留IPv4地址格式。

广播、NBMA及P2MP网络中,邻居不再由IP地址标识,只由Router ID标识。

OSPFv3的LSA报文里添加LSA的洪泛范围。

OSPFv3在LSA报文头的LSA Type里,添加LSA的洪泛范围,这使得OSPFv3的路由器更加灵活,可以处理不能识别的LSA:

OSPFv3可以存储或洪泛不识别的报文,而OSPFv2只简单丢弃掉不识别的报文。

OSPFv3允许洪泛范围为区域或链路本地,并且设置U位(报文可按洪泛范围为链路本地来处理)的不识别报文存储或通过stub区域。

例如:R1和R2都可识别某类LSA,它们之间通过R3连接,但R3不识别该类LSA。这样,当R1洪泛此类LSA时,R3虽然不识别,但还是可以洪泛给R2,R2收到后继续处理。

OSPFv3支持一个链路上多个进程。

一个OSPFv2物理接口,只能和一个OSPFv2实例绑定。

但是一个OSPFv3的物理接口,可以和多个OSPFv3实例绑定,并用不同的Instance ID区分。这些运行在同一条物理链路上的多个OSPFv3实例,分别与链路对端设备建立邻居及发送报文,且互不干扰。这样可以充分共享同一链路资源。

OSPFv3利用IPv6链路本地地址。

IPv6使用链路本地地址在同一链路上发现邻居及自动配置等。运行IPv6的路由器不转发目的地址为链路本地地址的IPv6报文,此类报文只在同一链路有效。链路本地单播地址从FE80/10开始。

OSPFv3是运行在IPv6上的路由协议,同样适用链路本地地址来维持邻居,同步LSA数据库。除Vlink外的所有OSPFv3接口都使用链路本地地址作为源地址及下一跳来发送OSPFv3报文。

这样做的好处是:

不需要配置IPv6全局地址,就可以得到OSPFv3拓扑,实现拓扑与地址分离。

通过在链路上泛洪的报文不会传到其他链路上,来减少报文不必要的泛洪来节省带宽。

OSPFv3移除所有认证字段。

OSPFv3的认证直接使用IPv6的认证及安全处理,不再需要其自身来完成认证,使用协议时只需关注协议本身即可。

新增两种LSA。

Link LSA:用于路由器宣告各个链路上对应的链路本地地址及其所配置的IPv6全局地址,仅在链路内洪泛。

Intra Area Prefix LSA:用于向其他路由器宣告本路由器或本网络(广播网络及NBMA)的IPv6全局地址信息,在区域内洪泛。

OSPFv3只通过路由器ID来标识邻居。

OSPFv2在广播网络、NBMA及P2MP网络中是通过IPv4接口地址来标识的。

OSPFv3只通过Router ID来标识邻居,这样即使没有配置IPv6全局地址,或者IPv6全局地址配置都不在同一网段,OSPFv3的邻居还是可以建立并维护的,以达到"拓扑与地址分离"的目的。

4.3ISIS

1、如何理解IS-IS中的DIS?DIS是如何产生的?有何作用?与OSPF中的DR有何区别?

在广播网络中,IS-IS需要在所有的路由器中选举一个路由器作为DIS(Designated Intermediate System)。DIS用来创建和更新伪节点(Pseudonodes),并负责生成伪节点的链路状态协议数据单元LSP(Link state Protocol Data Unit),用来描述这个网络上有哪些网络设备。

伪节点是用来模拟广播网络的一个虚拟节点,并非真实的路由器。在IS-IS中,伪节点用DIS的System ID和一个字节的Circuit ID(非0值)标识。

使用伪节点可以简化网络拓扑,使路由器产生的LSP长度较小。另外,当网络发生变化时,需要产生的LSP数量也会较少,减少SPF的资源消耗。

IS-IS协议中DIS与OSPF协议中DR(Designated Router)的区别:

(1)在IS-IS广播网中,优先级为0的路由器也参与DIS的选举,而在OSPF中优先级为0的路由器则不参与DR的选举。

(2)在IS-IS广播网中,当有新的路由器加入,并符合成为DIS的条件时,这个路由器会被选中成为新的DIS,原有的伪节点被删除。此更改会引起一组新的LSP泛洪。而在OSPF中,当一台新路由器加入后,即使它的DR优先级值最大,也不会立即成为该网段中的DR。

(3)在IS-IS广播网中,同一网段上的同一级别的路由器之间都会形成邻接关系,包括所有的非DIS路由器之间也会形成邻接关系。而在OSPF中,路由器只与DR和BDR建立邻接关系。

IS-IS广播网上所有的路由器之间都形成邻接关系,但LSDB的同步仍然依靠DIS来保证。

2、如何理解IS-IS中的NET?

网络实体名称NET(Network Entity Title)指的是设备本身的网络层信息,可以看作是一类特殊的NSAP(SEL=00)。NET的长度与NSAP的相同,最多为20个字节,最少为8个字节。在路由器上配置IS-IS时,只需要考虑NET即可,NSAP可不必去关注。

4.4BGP

1、BGP RR环境怎么形成环?怎么解决?边说边举例说明

Cluster_List属性

路由反射器和它的客户机组成一个集群(Cluster),使用AS内唯一的Cluster ID作为标识。为了防止集群间产生路由环路,路由反射器使用Cluster_List属性,记录路由经过的所有集群的Cluster ID。

当一条路由第一次被RR反射的时候,RR会把本地Cluster ID添加到Cluster List的前面。如果没有Cluster_List属性,RR就创建一个。

当RR接收到一条更新路由时,RR会检查Cluster List。如果Cluster List中已经有本地Cluster ID,丢弃该路由;如果没有本地Cluster ID,将其加入Cluster List,然后反射该更新路由。

Originator_ID属性

Originator ID由RR产生,使用的Router ID的值标识路由的始发者,用于防止集群内产生路由环路。

当一条路由第一次被RR反射的时候,RR将Originator_ID属性加入这条路由,标识这条路由的发起设备。如果一条路由中已经存在了Originator_ID属性,则RR将不会创建新的Originator_ID属性。

当设备接收到这条路由的时候,将比较收到的Originator ID和本地的Router ID,如果两个ID相同,则不接收此路由。

2、BGP OPEN包影响邻居关系建立参数。

1)版本号,一般来说都是V4;

2)路由器ID,建立邻居时候路由器ID不能一样,否则不可以建立邻居。

3)AS号,建立邻居的时候会检测对端AS号与本端配置的PEER信息里面的AS号是否一致,不一致则建立失败。

3、BGP路由有哪些属性类型?

1)公认必须遵循(Well-known mandatory):所有BGP设备都可以识别此类属性,且必须存在于update报文中。如果缺少这类属性,路由信息就会出错。包括Origin、Next-Hop、AS-PATH。

2)公认任意(Well-known discretionary):所有BGP设备都可以识别此类属性,但不要求必须存在于update报文中,即就算缺少这类属性,路由信息也不会出错。包括Local Preference、Atomic-Aggregate。

3)可选过渡(Optional transitive):BGP设备可以不识别此类属性,如果BGP设备不识别此类属性,但它仍然会接收这类属性,并通告给其他对等体。包括Community、Aggregator。

4)可选非过渡(Optional non-transitive):BGP设备可以不识别此类属性,如果BGP设备不识别此类属性,则会被忽略该属性,且不会通告给其他对等体。包括MED、Originator、Cluster-List。

4、BGP协议选路有多少条?分别是什么?

1)优选协议首选值(PrefVal)最高的路由。

协议首选值(PrefVal)是华为设备的特有属性,该属性仅在本地有效。

2)优选本地优先级(Local_Pref)最高的路由。

如果路由没有本地优先级,BGP选路时将该路由按缺省的本地优先级100来处理。

3)依次优选手动聚合路由、自动聚合路由、network命令引入的路由、import-route命令引入的路由、从对等体学习的路由。

4)优选AS路径(AS_Path)最短的路由。

5)依次优选Origin类型为IGP、EGP、Incomplete的路由。

6)对于来自同一AS的路由,优选MED值最低的路由。

7)依次优选EBGP路由、IBGP路由、LocalCross路由、RemoteCross路由。

PE上某个VPN实例的VPNv4路由的ERT匹配其他VPN实例的IRT后复制到该VPN实例,称为LocalCross;从远端PE学习到的VPNv4路由的ERT匹配某个VPN实例的IRT后复制到该VPN实例,称为RemoteCross。

8)优选到BGP下一跳IGP度量值(metric)最小的路由。在IGP中,对到达同一目的地址的不同路由,IGP根据本身的路由算法计算路由的度量值。

9)优选Cluster_List最短的路由。如果路由携带Originator_ID属性,选路过程中将比较10)Originator_ID的大小(不再比较Router ID),并优选Originator_ID最小的路由。

11)优选Router ID最小的设备发布的路由。

5、BGP的协议包类型及作用。

1)Open消息

是TCP连接建立后发送的第一个消息,用于建立BGP对等体之间的连接关系。对等体在接收到Open消息并协商成功后,将发送Keepalive消息确认并保持连接的有效性。确认后,对等体间可以进行update、Notification、Keepalive和Route-Refresh消息的交换。

2)update消息

用于在对等体之间交换路由信息。update消息可以发布多条属性相同的可达路由信息,也可以撤销多条不可达路由信息。

 一条update消息可以发布多条具有相同路由属性的可达路由,这些路由可共享一组路由属性。所有包含在一个给定的update消息里的路由属性适用于该update消息中的NLRI(Network Layer Reachability Information)字段里的所有目的地(用IP前缀表示)。

 一条update消息可以撤销多条不可达路由。每一个路由通过目的地(用IP前缀表示),清楚的定义了BGP Speaker之间先前通告过的路由。

 一条update消息可以只用于撤销路由,这样就不需要包括路径属性或者NLRI。相反,也可以只用于通告可达路由,就不需要携带撤销路由信息了。

3)Notification消息

当BGP检测到错误状态时,就向对等体发出Notification消息,之后BGP连接会立即中断。

4)Keepalive消息

BGP会周期性的向对等体发出Keepalive消息,用来保持连接的有效性。

5)Route-Refresh消息

Route-Refresh消息用来通知对等体自己支持路由刷新能力(Route-Refresh capability)。

在所有BGP路由器使能Route-Refresh能力的情况下,如果BGP的入口路由策略发生了变化,本地BGP路由器会向对等体发布Route-Refresh消息,收到此消息的对等体会将其路由信息重新发给本地BGP路由器。这样,可以在不中断BGP连接的情况下,对BGP路由表进行动态刷新,并应用新的路由策略。

6、说说BGP常见的属性及在工程实施中一般怎么去使用这些属性。(如果你有做过相关项目中用到了BGP,请简要画图说明你是如何工程规划实施用这个BGP协议的)

1)Origin属性

Origin属性用来定义路径信息的来源,标记一条路由是怎么成为BGP路由的。它有以下3种类型:

IGP:具有最高的优先级。通过network命令注入到BGP路由表的路由,其Origin属性为IGP。

EGP:优先级次之。通过EGP得到的路由信息,其Origin属性为EGP。

Incomplete:优先级最低。通过其他方式学习到的路由信息。比如BGP通过import-route命令引入的路由,其Origin属性为Incomplete。

2)AS_Path属性

AS_Path属性按矢量顺序记录了某条路由从本地到目的地址所要经过的所有AS编号。在接收路由时,设备如果发现AS_Path列表中有本AS号,则不接收该路由,从而避免了AS间的路由环路。

当BGP Speaker传播自身引入的路由时:

当BGP Speaker将这条路由通告到EBGP对等体时,便会在update报文中创建一个携带本地AS号的AS_Path列表。

当BGP Speaker将这条路由通告给IBGP对等体时,便会在update报文中创建一个空的AS_Path列表。

当BGP Speaker传播从其他BGP Speaker的update报文中学习到的路由时:

当BGP Speaker将这条路由通告给EBGP对等体时,便会把本地AS编号添加在AS_Path列表的最前面(最左面)。收到此路由的BGP设备根据AS_Path属性就可以知道去目的地址所要经过的AS。离本地AS最近的相邻AS号排在前面,其他AS号按顺序依次排列。

当BGP Speaker将这条路由通告给IBGP对等体时,不会改变这条路由相关的AS_Path属性。

3)Next_Hop属性

Next_Hop属性记录了路由的下一跳信息。BGP的下一跳属性和IGP的有所不同,不一定就是邻居设备的IP地址。通常情况下,Next_Hop属性遵循下面的规则:

BGP Speaker在向EBGP对等体发布某条路由时,会把该路由信息的下一跳属性设置为本地与对端建立BGP邻居关系的接口地址。

BGP Speaker将本地始发路由发布给IBGP对等体时,会把该路由信息的下一跳属性设置为本地与对端建立BGP邻居关系的接口地址。

BGP Speaker在向IBGP对等体发布从EBGP对等体学来的路由时,并不改变该路由信息的下一跳属性。

4)Local_Pref属性

Local_Pref属性表明路由器的BGP优先级,用于判断流量离开AS时的最佳路由。当BGP的设备通过不同的IBGP对等体得到目的地址相同但下一跳不同的多条路由时,将优先选择Local_Pref属性值较高的路由。Local_Pref属性仅在IBGP对等体之间有效,不通告给其他AS。Local_Pref属性可以手动配置,如果路由没有配置Local_Pref属性,BGP选路时将该路由的Local_Pref值按缺省值100来处理。

5)MED属性

MED(Multi-Exit Discriminator)属性用于判断流量进入AS时的最佳路由,当一个运行BGP的设备通过不同的EBGP对等体得到目的地址相同但下一跳不同的多条路由时,在其它条件相同的情况下,将优先选择MED值较小者作为最佳路由。

MED属性仅在相邻两个AS之间传递,收到此属性的AS一方不会再将其通告给任何其他第三方AS。MED属性可以手动配置,如果路由没有配置MED属性,BGP选路时将该路由的MED值按缺省值0来处理。

6)团体属性

团体属性(Community)用于标识具有相同特征的BGP路由,使路由策略的应用更加灵活,同时降低了维护管理的难度。

7)Originator_ID属性和Cluster_List属性

Originator_ID属性和Cluster_List属性用于解决路由反射器场景中的环路问题

工程中一般使用三个属性:

1)只针对本地BGP路由器进行路径选择,不影响其他BGP路由器时,使用首选值;

2)告诉自己的IBGP邻居如何离开本地AS时,使用Local-Preference

3)告诉自己的eBGP邻居如何到达本地AS时,使用MED

7、解释什么是BGP同步?什么情况下可以关闭同步?

一个iBGP接收到的BGP路由,必须需要同时通过IGP也接收到该路由,BGP路由器才认为该BGP路由已同步,才将该路由作为有效的BGP路由。这样做的目的是为了防止流量进入到本地网络中的路由黑洞。

在建立了全互连的iBGP邻居关系时,或运行了MPLS时,可以关闭同步。缺省是关闭的。


------全文很长---转发+关注+私聊获取该文档。


糖心 糖心vlog