面试问题:
1. 简述OSI 七层模型主要功能
OSI是开放式系统互联参考模型。主要的作用是解决数据传输的不兼容性。
七层主要分:
应用层---人机交互,提供各种应用服务,将抽象语言转化成编码
表示层---数据格式的转换,将编码转化成二进制
会话层---建立、管理、维持会话—虚链路
传输层---建立、维持端对端的连接---应用到应用之间的传输—端口号
网络层---通过IP地址进行逻辑寻址
数据链路层---将二进制转化为电信号,控制物理层
物理层---处理或传输电信号
2. 描述TCP 和 UDP 协议的主要区别
- TCP是面向连接(需要三次握手)的传输层协议,UDP是无连接(直接传输)的传输层协议
- TCP的传输是一种可靠的四个机制(排序、确认、重传、流控),UDP的传输是不可靠的
- TCP可以进行流控(滑动窗口机制),而UDP 不行
- TCP可以进行分段,而UDP 不行
- TCP消耗资源较大,而UDP资源消耗较小,其次TCP传输速率较低,UDP传输速率高
TCP如何做到可靠传输?
依靠确认机制
重传输机制
3. 介绍TCP三次握手机制? 为什么TCP握手需要三次?
两次不够、四次多余
4. 什么是DHCP ? 描述工作过程?
DHCP---动态主机配置协议---典型的 C/S架构模式----客户端 68;服务器端67。
首次获取DHCP:
- DHCP客户端---服务端---DHCP-discover包--寻找这个网络中存在的所有DHCP服务器---广播发送
- DHCP服务端---客户端---单播/广播(华为默认单播发送,思科默认广播发送)---DHCP-offer包--会携带一个可用的IP地址--预留地址--选择标准:先后顺序,客户端只选择我最先收到的offer包中含的IP地址
- DHCP客户端---服务端---DHCP-request包-会携带客户端选择的IP地址---广播发送:
- 告知这个网络环境中他做出选择的服务器,我选择了你提供给我的IP地址
- 告知这个网络环境中其他的服务器我已经有选择了--那么这些DHCP服务器就会把原本预留的IP地址收回,当有主机想要IP地址时,继续分配
- DHCP服务端(选择的服务端)---DHCP-ACK包,告知客户端你可以使用这个IP地址
再次获取DHCP:(计算机本身具有存储和记忆功能)
直接从三次步骤开始
5. 什么是ARP ? 谈谈ARP协议主要功能
ARP---地址解析协议---作用是映射IP地址和MAC地址
分类及原理:
-
-
- 正向的ARP——记录的是IP地址和MAC地址的转化
- 反向ARP——通过MAC地址寻找IP地址---无盘工作站
- 免费地址——按照正向ARP的工作原理,只不过请求的IP是自己本地的IP地址。主要用于通过自我介绍来检测地址冲突,(一般在DHCP后使用)
- 逆向ARP---用于帧中继
- 代理ARP--
-
6. 什么是广播域?什么是冲突域?
广播域:广播传播的区域(同一个网段)
冲突域:网络产生冲突的区域
CSMA/CD---带冲突检测的载波侦听多路访问网络----发送数据之前——先侦听(排队:线路中是否在收发数据)——一旦数据中没有数据收发,再收发(避免碰撞)
7. 什么是NAT? 有哪些NAT ?
NAT---网络地址转换
分类:
静态NAT----一对一NAT—保护服务器
动态NAT---一对多NAT
NAPT---网络地址端口转换---可以实现多对多、一对多的转换(easy-ip)以及一对一端口映射
8. 路由器 交换机 网桥 集线器的区别是什么?
路由器---三层设备—基于IP 地址转发的
网桥---二层设备 ---基于软件转发MAC地址---接口少---接口共享设备的转发资源
交换机---交换机的每一个接口就是一个冲突域,所有的接口在同一个广播域---基于硬件转发MAC地址---接口多、端口密度大---接口的转发资源独立
集线器---一层---泛洪---基于比特流转发
9. 简述IP数据包结构?并解释相对应内容?
共6行,每一行是32个bit,也就是4个字节。
Version:版本 所占空间4bit 默认值为0100
IHL: ip header length ip头部长度 4bit ip包头一般来说是20字节 最后一行options和padding在默认的ipv4数据包中是空的
Ihl中每一个数值的单位是32bit 默认值0101 对应的十进制数是5 (532bit)/8=4字节
一个ipv4的数据包包头最大值是60字节 因为IHL中最大的二进制为1111 换算成十进制为15 (1532bit)/8=60字节
一个ip数据包的大小在20—60字节之间,是以4字节为间隔进行增加或者减少的
Service type: 服务类型 默认8bit 作用:标记流量 可以用于QOS策略
packet length: 总长度 包含ip包头和data数据 占16个bit 单位bit
identification: 标识符 占16bit 0—65535 在3层ip包头中用来标识或区分不同的流量
Flag: 标记位 占3bit
第一位保留位 R 一般是空的
第二位D-F位 不分片位 没有分片则不分片位为1,被分片了则不分片位为0
第三位 MF位 more fragment 更多分片位
Flag offset: 分片偏移 占13bit 本数据包距离完整数据包头部的偏移值 单位:字节
Time to live: 生存时间 占8bit 数值范围0—255 三层防环机制
每经过一台路由器TTL值减一 当减为0时路由器直接丢弃
protocol: 协议 8bit 用于描述上层协议
header checksum:头部校验和 16bit 计算数据包头部完整性
Source address: 源ip地址 32bit
Destination address: 目标ip地址 32bit
options: 可选项 完成一些特殊功能:严格路由 松散路由 记录路由 时间戳只能在options 里面做
padding: 填充项
10. RIP 协议的防环机制有哪些?
- 触发更新机制:当一条路由条目消失,RIP会直接发送一个cost值为16 的路由。但只能避免大部分情况,不能完全解决。
- RIP的水平分割机制------从此口进,不从此口出--默认开启
- RIP的毒性逆转机制----从这个接口进入,会进行转发,但是转发的路由条目会直接表明cost值为16
11. RIP协议的计时器有哪些?
- 周期更新计时器-----30s ,当更新计时器为0时,则向周围发送响应报文。
- 无效计时器------180s---6倍的周期更新时间---每台路由器上的每一个RIP路由项都有一个失效计时器。当失效计时器做到0,路由表会删除该路由条目,但会在缓存中保留,当周期更新时,会把该路由条目加上并把cost改为16-------RIP的带毒传输。
- 垃圾回收计时器----120s---4倍更新周期,-----彻底删除该路由条目【无效计时器为0时垃圾计时器才会开始计时】
12. OSPF 协议邻居关系建立的条件是?
1、Router-ID必须唯一
①、相邻路由器的router-id 不能相同,相同不能建立邻居
②、同一个区域不相邻设备的router-id可以相同,但是影响路由学习
③、不同区域不相邻的设备的router-id可以相同,不会影响路由学习
2、接口区域ID:相邻的直连接口区域ID必须相同,区域 ID 包含在 ospf 头部,双方不一致时无法建立邻居
3、认证类型必须一致
4、MA网络掩码必须一致(为什么 p2p 中掩码可以不一致):
MA 网路中掩码必须一致,因为 MA 网络中所有路由器共用一个网段,只有一个 2L 的 Network
来描述当前的网络拓扑和网络号,所以当掩码不一致时,无法通过一个 2LSA 描 述不同的掩码。P2P 网络中掩码之所以可以不一致是因为 P2P
中有 1LSA 的 stub 类型来 描述每一个网络的掩码信息,并且在 PPP 链路中 NCP 阶段,两台路由器会互推自己的 IP
地址,并且以 32 位主机路由的方式加入自己的路由表,所以 P2P 网络中建立邻居不需要 掩码一致。
①.接口网络类型如果是Broadcast,MA网络,掩码长度必须一致
②.接口网络类型如果是P2P,P2P网络,掩码长度可以不同
③.接口网络类型如果是P2MP,P2MP网络,掩码长度可以不同(通过在接口下配置ospf p2mp-mask-ignore命令忽略检查掩码长度)
5、MA 网络中优先级不能为零,DR 选举不成功。
6、区域类型(option 字段中的 E 位与 N 位):
E 位代表能处理外部路由,在 OSPF 中外部路由就是指 5lsa,N 位代表 NSSA 区域
7、hello-dead 间隔(区别网络类型)
8、 MTU必须一致(默认不检查,不一致时会停留 在哪种状态)
如果开启了 MTU 检查,如果双方 MTU 不一致,则MTU值小的一方停留在 Exstart 状态, 另一方停留在 Exchange 阶段。
9、网络类型(四种,当两边不一致是否一定建立不了邻居,如果能建立会不会有问题, 哪种网络类型发送单播,哪种发送组播)
双方网络类型不一致,不能建立 FULL 的邻接关系,但如果修改 hello,dead 时间, 可以建立 full 的邻居关系(除了 NBMA这种网络类型,NBMA 即使修改时间也无法和其他网络类型建立邻居关系,因为其收发 hello 报文都是单播),MA 与 P2P、P2MP 修改时间 可以建立 FULL 的邻居关系,但不能计算路由。
10、不要设置silence(静默接口)特点:OSPF 的 silence 接口,不收不发
13. 什么是ABR ? 什么是ASBR?
- ABR---区域边界路由器---作用:用于将一个或多个OSPF区域边界上、将这些区域连接到主干网络的路由器
- ASBR---自治系统边界路由器
14. OSPF 协议消息数据包有哪些?
-
- Hello包的作用:周期发现、建立和保活邻居关系。
- DBD包---数据库描述---数据库【LSDB数据库】---存储lsa数据携带的是路径信息的摘要(类似菜单,存储LSA)。---传递lsa之前会先发送DBD用来比对自己本地的LSDB数据库----主从关系选举---
- LSR【Lsrequest】包---链路状态请求包---- 用来请求DBD包比对之后,本地数据库没有的lsa。
- LSU包---链路状态更新包---真正携带LSA信息的数据包。
- LSACK包---链路状态确认包---对链路状态信息作一个确认。---隐形确认
15. 简述OSPF 邻居状态机制
- down状态:启动ospf,发出Hello包之后进入下一个状态。
- init(初始化)状态:收到hello包中携带自己本地的RID,进入下一个状态。
- two-way(双向通信)状态:标志邻居关系的建立。(条件匹配)条件匹配成功,则进入下一个状态;否则,将停留在邻居状态,通过发送hello包进行周期保活。(该状态下进行DR/BDR选举,)
- exstart(预启动)状态:使用未携带数据的DBD包进行主从关系选举,RID大的为主(数值大),优先进入下一个状态。一旦发送DBD报文,进入exstart状态, DBD 协商MTU值(Cisco中默认带MTU需要进行协商,华为中默认不携带mtu值,所以华为中默认不检测mtu值),进行主从关系的选举,
- exchange(准交换)状态:使用携带目录信息的DBD包进行目录共享,同时也会发送LSA数据包。主从关系选举完成
- loading(加载)状态:基于DBD包中的未知的LSA信息,使用LSR包进行请求,邻居使用LSU包回复,需要LSACK进行确认,确认后进入下一个状态。本端的请求列表与重传列表为空时进入下一个状态
- FULL状态:标志着邻接关系的建立。
16. OSPF区域划分的好处是?
- 节省区域中的每一个设备的系统资源------大区域被划分以后,小区域中的数据库内容就会变少同一个区域中的所有的路由器,数据库是完全相同
- 增强OSPF 网络的稳定性------- 一个不稳定链路造成的不良影响仅在同一个区中传播,不会影响到其他区域
17. OSPF 外部路由 1类型和2类型的区别是?
- E位置0 --- 类型1 --- 如果开销值类型为类型1,则所有OSPF网络内设备到达域外目标网段的开销值都等于种子度量值加沿途累加开销值。
- E位置1 --- 类型2 --- 5类LSA默认的开销值类型为类型2。如果开销值类型为类型2,则所有OSPF网络内设备到达域外目标网段的开销值都等于种子度量值
1类型与2类型的比较---类型1永远优于类型2
类型1与类型1比较---种子度量值+沿途累加开销值
类型2与类型2比较---先比较种子度量值,若前者相同;则比较种子度量值+沿途累加开销值
18. OSPF NSSA区域有哪些LSA?
NSSA(not so stub area)中存在1、2、3、7类LSA
19.两台路由器通过直连链路,建立 OSPF 邻居,那么在一边使用 P2P,而一边使用 P2MP 的情况下,能正常建立到邻接状态么?
P2P是点对点,hello时间是10s 死亡时间40s,P2MP是点对多点,hello时间30s,死亡时间120s,不满足邻居关系建立条件,所以不能建立邻接关系。
若果一边是P2P,一边是BMA,能否建立邻接关系?
可以建立邻接、邻居关系,因为hello时间、死亡时间相同。但是P2P不需要DR/BDR选举,BMA需要进行选举,BMA这边会成为DR,无BDR。因为两边类型不一样,路由无法加表。
20. OSPF 邻居关系建立卡在不同的状态可能是什么样的原因导致的?例如init
- down:没有交互。
- init:发送方发送HELLO包等待回应。
- two-way:临济关系建立,进行DR/BDR选举。
- exstart:预启动,建立主从关系,确定DBD包序号。
- exchange:预交互状态,发送本地数据库的DBD,也会发送LSA请求自己没有的更新。
- loading:数据库同步过程,发送LSA请求自己没有的更新。
- FULL:完全简历邻接关系。
21. OSPF NBMA网络类型需要配置些什么?
NBMA需要进行DR/BDR选举,所以需要手工建立邻居关系
NBMA网络类型在hub-spoke中需要做什么配置?
手工指定peer ,指定DR的位置为hub端,不得出现BDR
22. OSPF stub区域的作用?---末梢区域
特点:
- 限制 4、 5类LSA ,stub区域不能进行重发布,不能存ASBR
- stub区域边界ABR会自动产生3类缺省LSA,保证stub区域路由器与外网保持通信。
- 特殊区域不能使用虚链路
- stub区域不能为骨干区域
- 若设置stub区域,存在该区域的所有路由器都必须设置
作用:减少LSA数量
23. OSPF 协议是纯链路状态型协议吗?
不是纯链路状态型协议,ospf在单个区域内属于纯链路状态型,但区域与区域之间传递路由信息。
24. 简述OSPF 几种LSA的主要功能?
- 1类---本路由器针对某个区域产生的路由信息和拓扑信息
- 2类---功能:用于在MA网络中,描述本网络路由器的数量以及本MA网络的网络掩码传播范围:只能在本区域之内传输,终止于ABR。
- 3类---在区域之间传递路由信息
- 5类---用于在整个ospf中传递外部路由
- 4类---除了ASBR所在区域外(因为asbr由1类),用于指定ASBR的位置
- 7类---在NSSA区域中传递外部路由
25.如何限制LSA数量
- 4种特殊区域
- 汇总
- 区域划分
25.OSPF的区域设计原则?
- OSPF网络中必须存在并且唯一的骨干区域(单区域除外)
- 若存在非骨干区域的话,非骨干区域必须与骨干区域直接相连
25. IBGP 为什么采用全互联?不采用全互联怎么部署?
- 原因:由于IBGP的水平分割导致一个路由器收到的一条BGP路由不能传递给其他IBGP的邻居。这样的话,如果要让一个IGP中所有路由器都要可以给别的路由器传递BGP路由的话,就需要建立全互连这样的邻居关系就是每个路由器两两之间都要建立邻居。
- 解决:这样才能解决那个数据层面路由黑洞的问题。可以采用路由反射器和联邦IBGP
26. 如果BGP 加上max-path ,会在那个BGP 选路属性之前应用这个选项?
ROU-ID
27. 谈谈BGP 路由反射的特点?
反射规则: 非非不传(非客户端收到的路由不能传递给其他的非客户端) 在路由反射器中,由于破坏了IBGP水平分割机制,可能导致路由环路,所以引入了起源者属性和簇ID属性 进行防环
28. 什么是IBGP 同步? 为什么现在的BGP默认都是关闭的?
原因:如果一条IBGP路由,没有从IGP学到该路由,则不会把该路由通告给EBGP邻居。同步意味着IGP和BGP路由表中都存在该条路由,因此当数据包转发中间设备时候,不会因为BGP路由表中没有路由而出现黑洞
IBGP同步:当一个路由器从IBGP对等体收到一个目的地的更新信息,在把它通告给其它EBGP对等体之前,要试图验证该目的地通过自治系统内部能否到达(即验证该目的地是否存在于IGP,非BGP路由器是否可传递业务量到该目的地)。若IGP认识这个目的地,才接受这样一条路由信息并通告给EBGP对等体,否则将把这个路由当作与IGP不同步,不进行通告。
29. BGP协议和IGP协议的区别?
IGP是内部网关协议,在AS内部实现路由信息的交换;
BGP是边界网关协议,在AS之间实现路由信息的交换;
30. BGP选路规则?
选路条件: BGP路由必须有效,无环的,不能被惩罚 。
当到达同一目的地存在多条路由时,BGP依次对比下列属性来选择路由:
- 优选协议首选值(PrefVal)最高的路由:
-
- 数值范围: 0-65535 , 越大越优,默认值为0
- 仅仅在本设备上生效,不能传递
- 协议首选值(PrefVal)是华为设备的特有属性,该属性仅在本地有效。
-
- 优选本地优先级(Local_Pref)最高的路由。
-
- 作用: 用于控制离开本AS的流量,离开本AS时使用
- 范围:0-2^32 , 默认值为100 , 数值越大越优;在AS内可以传递,传出AS后失效
- 部署位置: 一般建议在存在EBGP邻居的IBGP邻居之间
-
- 依次优选手动聚合路由、自动聚合路由、network命令引入的路由、import-route命令引入的路由、从对等体学习的路由。
-
- (next-hop为 0.0.0.0 最优先)
- 在思科中,next-hop为0.0.0.0是通过network or import or 路由聚合产生的
- 0.0.0.0整体优于IBGP或EBGP学习的
-
- 优选AS路径(AS_Path)最短的路由。
-
- 作用:代表本路由信息经过了那些AS
- 默认值:无,越短越优
- 注意: 在EBGP联邦中出现的AS号不计入长度的大小, 若出现在大括号时,大括号内无论存在多个少AS号,都只当作一个;
-
- 依次优选Origin类型为IGP、EGP、Incomplete的路由。
-
- 作用:代表着BGP路由的来源
- 默认值: 无, i>e>? i(0) e(1)?(2)
- 部署位置:所有BGP路由器上
- ibgp路由是来自自身的通告,or IBGP or ebgp邻居network通告的路由
- ?是重发布的
-
- 对于来自同一AS的路由,优选MED值最低的路由。
-
- MED:多出口鉴别属性 做在EBGP邻居间
- 作用:用于影响进入某AS的流量控制时使用
- 默认值为空:med 可以当做metric值,med 属性也是只能在某一个AS之内使用,med的比较默认一定是来自于直连相同的AS中路由
- 设置时就是修改cost值 ,越小越优
-
- EBGP邻居学习路由优于IBGP邻居学习路由(联邦EBGP当做普通IBGP路由对待)
- 优选最近的下一跳(下一跳地址在本地路由表中的metric值)
- 可以执行负载均衡---
- 最小的router-id (若存在起源者属性,比router-id时使用起源者属性,若相同则继续比较 )
- 优选 Cluster_List 最短的路由
- 最小的peer IP地址
31. EBGP 邻居的防环机制是?
AS-path防环
32. BGP 路由反射如何防环?
簇ID、起源者属性放环
33. PPP 协议过程是?
PPP---点对点协议---广域网
PPP 协议过程:
LCP协商---检测链路封装均为PPP,同时测试链路的连通性
PPP认证---增加PPP会话的安全性,PAP、CHAP
NCP协商---网络 协议---协商上层使用的协议IPCP,同时在NCP协商中会发送自己的IP地址,将对方的IP地址以主机路由的方式加入路由表中
34. Chap 认证过程?