欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

网络面试的100问

程序员文章站 2022-04-22 21:49:53
...

目录

1、介绍TCP 连接的三次握手?追问:为什么TCP 握手需要三次?

​ 三次握手即TCP连接的建立。这个连接必须是一方主动打开,另一方被动打开的。
网络面试的100问
​ 握手之前主动打开连接的客户端结束Closed阶段,被动打开的服务器端也结束Closed阶段,并进入Listen阶段。之后开始“三次握手”。

​ 1、客户端向服务端发送一段TCP报文,其中包含:

标记位SYN,用于请求建立新的TCP连接;

***seq=x;

​ 发送该报文之后,客户端进入SYN-SENT阶段

​ 2、服务端接收到客户端发送的TCP报文后,结束Closed阶段,并向客户端回复一段TCP报文,其中包含:

标志位SYN和ACK,用于确认客户端的报文seq有效,服务器能正常接收客户端发送的数据,并同意创建新的连接。

***seq=y;

确认号ACK=x+1,用于表示收到客户端的***seq并将其+1作为自己确认号ACK的值,

​ 之后服务端进入SYN-RCVD阶段

​ 3、客户端接收到来自服务端的确认报文后,得知了从客户端到服务端的数据传输是正常的,结束SYN-SENT阶段,并返回最后一段TCP报文。其中包含:

标志位SYN和ACK,用于确认收到服务端同意连接的信号。

***seq=x+1,表示收到服务端的确认号ACK,并将该值作为自己的seq值。

确认号ACK=y+1,表示收到服务器端的***seq,并将该值+1作为自己的ACK值。

​ 之后服务端结束SYN-RCVD阶段,进入Established阶段

注:在三次握手过程中seq和ack值都是在彼此ack和seq值的基础上进行计算的,这样保证了TCP报文传输的连贯性。一旦某一方的TCP报文丢失,就无法继续“握手”,以此来确保“三次握手”的顺利完成。

为什么要“三次握手”?

​ 1、防止服务器端开启一些无用连接增加服务端开销。

​ 开启无用连接的端口过多造成服务器资源的浪费。

​ 2、防止已经失效的连接请求报文段突然又被传送到服务端而导致产生错误。

​ 已经失效的客户端发出的请求信息,由于某些原因传输到了服务端,服务端会以为是客户端发送的有效请求,接受后产生某些错误。

2、介绍TCP 断开的四次挥手,追问:为什么TCP 的挥手需要四次?

​ 四次挥手即TCP连接的释放。连接的释放必须是某一方主动释放,另一方被动释放。

网络面试的100问

​ 四次挥手之前主动释放连接的客户端结束Established阶段,之后开始“四次挥手”。

​ 1、客户端主动释放连接,向服务端发送一段TCP报文,其中包含:

标记位FIN,用于请求释放连接。

***seq=u。

​ 之后客户端进入FIN-WAIT-1阶段,即半关闭阶段。且停止向服务端方向发送数据,但客户端仍然能接收从服务端传输的数据。(ACK确认报文正常发送)

​ 2、服务端接收到从客户端发出的TCP报文后,确认客户端要释放连接。之后服务端结束Established阶段,进入Close-WAIT阶段(半关闭状态)并回复一段报文,其中包含:

标记位ACK,用于表示接收到客户端发送的释放连接请求。

***seq=v

确认号ACK=u+1,在收到客户端报文后在其***seq值加1来作为本段报文确认号ack的值。

​ 之后客户端收到服务器端发出的TCP报文后,确认了服务器收到客户端发出的释放连接请求。然后客户端结束FIN-WATI-1阶段,进入FIN-WAIT-2阶段

​ 3、服务端从发出ACK报文后,经过Closed-WAIT阶段,做好了释放服务器端到客户端方向的连接准备,再次向客户端发出一段TCP报文,其中包含:

标记位FIN、ACK,用于表示已经准备好释放连接了。这里的ACK并不是确认收到服务端报文的确认报文。

***seq=w。

确认号ACK=u+1。表示在收到客户端报文的基础上将其seq值加1作为本段报文确认号ack的值。

​ 之后服务端结束Close-WAIT阶段,进入Last-ack阶段。并停止服务端向客户端方向上发送数据,但服务端仍然能够接收从客户端传输过来的数据。

​ 4、客户端收到从服务端发出的TCP报文,确认服务端已经做好了释放连接的准备,结束FIN-WAIT-2阶段,进入TIME-WAIT阶段,并向服务端发送一段报文,其中包含:

标记位ACK,表示确认接收到服务端准备好释放连接的信息。

***seq=u+1,表示在收到服务端报文的基础上,将其确认号ack值作为本段报文的***值。

确认号ack=w+1,在收到服务端报文的基础上,将其***seq值加1作为本段报文的ack值。

​ 之后客户端开始在TIME-WAIT阶段等待2MSL

​ 服务端收到客户端发出的TCP报文后结束Last-ack阶段,进入Closed阶段,由此正式确认关闭服务端的连接。

​ 客户端等待2MSL之后,结束TIME-WAIT阶段,进入Closed阶段,由此完成“四次挥手”。

为什么要等待2MSL?

​ 为了确认服务端是否收到客户端发出的ACK确认报文。

​ 客户端在发出最后的ACK确认报文时并不能确定服务端会收到该段报文,因此在发送ACK确认报文后会设置一个时长为2MSL的计时器,MSL指一段TCP报文在传输过程中的最大生命周期。2MSL是服务端发出FIN报文和客户端发出ACK报文能保持有效的最大时长。

​ 若服务端在1MSL内未收到客户端发出的ACK确认报文,就会重新向客户端发送FIN报文。

​ 若客户端在2MSL内收到了服务端的FIN报文说明服务端由于各种原因未收到客户端的ACK报文,客户端重新向服务端发送ACK报文,计时器重置并重新计时。

​ 若在2MSL内未收到服务端的FIN报文,说明服务端收到了ACK确认报文,客户端可以进入Closed阶段,完成“四次挥手”。

为什么TCP 的挥手需要四次?

​ 被动方服务器突然收到主动方客户端释放连接的请求时并不能立即释放连接,因为还有必要的数据要进行处理,所以服务器先返回ACK确认报文,经过Close-WAIT阶段的准备后,才能返回FIN释放连接的报文。

3、 TCP 的syn攻击的过程?追问:怎么防御?

​ SYN攻击又称半开攻击。是在TCP三次握手的时候使用大量的主机向服务器发送正常的SYN请求,服务器在收到正常的SYN请求的之后会回复一个SYN和ACK的报文段,之后等待对端主机回复ACK报文段来确认连接的建立。

​ 服务器在等待主机回复ACK报文段时存在两种情况:

​ 1:等到了主机回复的ACK报文段则连接建立成功。

​ 2:等不到主机回复的ACK报文段则释放该连接的资源。

​ 等待这个过程需要时间,所以系统需要建立一个等待缓存。

​ 通过向服务器发送大量的SYN报文来占满服务器的TCP连接资源,导致其他正常主机不能连接到该服务器的现象称为SYN攻击。

防御

sudo vim /etc/sysctl.conf  //编辑文件 
net.ipv4.tcp_syncookies = 0 设置为0 放弃syn防御 1视为开启防御

4、 为什么连接的时候是三次握手,关闭的时候却是四次握手?

5、 TCP 是如何通过滑动窗口协议实现流量控制和拥塞控制的?

滑动窗口协议

滑动窗口是什么?

​ 滑动窗口是类似于一个窗口的东西,用来告诉发送端可以发送数据的大小或说是窗口标记了接收端缓冲区的大小。

​ 注:窗口是指一次批量发送数据的大小。

为什么会出现滑动窗口?

​ 在确认应答策略中,对每一个发送的数据段,都要给ACK确认应答,收到ACK后在发送下一个数据段,这样做有一个较大的缺点就是性能很差,尤其是数据往返时间长的时候使用滑动窗口就可以一次发送多条数据,从而提高了性能。

滑动窗口的一些知识点

​ 1:接收端将自己可以接收的缓冲区大小放入TCP首部中的“窗口大小”字段,通过ACK来通知发送端。

​ 2:窗口大小字段越大,说明网络的吞吐率越高。

​ 3:窗口大小是指无需等待确认应答而可以继续发送数据的最大值,即不需要接收端的应答就能一次连续发送数据的大小。

​ 4:操作系统内核为了维护滑动窗口,需要开辟发送缓冲区来记录当前还有哪些数据没有应答,只有确认应答过的数据,才能从缓冲区中删掉。(注:缓冲区如果太大,会有空间开销)

​ 5:接收端一旦发现自己的缓冲区快满了,就会将窗口大小设置成一个更小的值通知给发送端,发送端收到该值后,就会减慢自己的发送速度。

​ 6:如果接收端发现自己的缓冲区满了,就会将窗口的大小设置为0,此时发送端将不再发送数据,但是需要定期发送一个窗口探测数据段,让接收端把窗口大小告诉发送端。(注:TCP首部有一个16位的窗口字段,该字段用来存放窗口大小信息)

​ 滑动窗口中的数据类型:已发送但未确认的;可以发送但未发送的。

流量控制

防止对方发送过快,耗尽接收方的资源,从而导致接收方来不及处理。

​ 1:接收端抑制发送端的依据:接收端缓冲区的大小

​ 2:流量控制的目标是接收端,怕接收端来不及处理。

​ 3:流量控制的机制是丢包

拥塞控制

防止发送方发送过快导致网络来不及处理,从而引起网络拥塞。

​ 拥塞控制使用的机制:加法增加乘法减少\慢启动

加法增加:执行拥塞避免算法后,收到对所有报文段的确认后(经过一个往返时间),就把拥塞窗口cwnd增加一个MSS大小,使拥塞窗口缓慢增大,防止网络过早出现拥塞。

乘法减少:出现一次超时(即一次网络拥塞),就把慢启动门限值ssthresh设置为当前拥塞窗口值的一半。

注:当网络频繁拥塞时,ssthresh值下降的很快,用来减少注入到网络中的分组数。

发送端如何知道要进行丢包的?

​ 1:定时器超时。

​ 2:收到三个重复的ACK报文。

为什么会有拥塞控制?

虽然流量控制可以高效可靠的传递大量的数据,但如果一开始就进行大量的流量数据传输,网络就很可能出现网络拥塞(网络中计算机数量庞大)。拥塞控制的表现为丢包、延时大。

网络面试的100问

拥塞控制的工作过程

​ 1:初始时cwnd值为1,随着发送方收到接收方发送的确认报文,cwnd开始呈指数增长,拥塞窗口值逐渐变为1、2、4、8。

​ 2:当到达ssthresh的初始值时,开始实施拥塞避免的加法增大,每次收到确认报文后cwnd加1。

​ 3:假设拥塞窗口的数值增长到24时,网络出现超时,说明网络拥塞。

​ 4:出现网络拥塞则进行乘法减少,ssthresh初值变为拥塞时的一半,cwnd初值为1,并执行慢开始算法。

网络面试的100问

流量控制和拥塞控制的区别和联系

相同点

​ 1:现象都是丢包。

​ 2:实现机制都是让发送方发的慢一点,少一点。

不同点

​ 1:丢包位置不同。

​ 流量控制丢包位置在接收端上。

​ 拥塞控制丢包位置在路由器上。

​ 2:作用的对象不同。

​ 流量控制的对象是接收方。

​ 拥塞控制的对象是网络。

联系

​ 拥塞控制:通常为一个全局性的过程,涉及到网络中的所有主机、路由器以及所有降低网络传输性能的因素。

​ 流量控制:发生在发送端和接收端之间,只是点到点之间的控制。

6、 描述 TCP 和 UDP 的区别?

​ TCP(传输控制协议):是一个面向连接的可靠的传输层的协议,在发送数据之前要和对方建立可靠的连接。

​ UDP(用户数据报协议):是一个非面向连接的不提供可靠性的传输层的协议。只是把应用程序传给IP层的数据包包发送出来,不能保证他们到达目的地,由于UDP在传输前不需要建立连接,也没有超时重传机制,所以速度很快。

区别:

​ 1:基于连接与非连接。

​ 2:对系统资源的要求(TCP需要资源较多,UDP需要资源较少)。

​ 3:UDP程序结构较为简单。

​ 4:TCP是流模(SOCK_STREAM),UDP是数据报模式(SOCK_DGRAM)。

​ 5:TCP保证数据完整性,UDP可能会丢包;TCP保证数据顺序,UDP不保证。

​ 基于TCP的网络协议:Telnet(远程登录协议)

​ FTP(文件传输协议)

​ SMTP(简单邮件传输协议)

​ SNMP(简单网络管理协议)

​ HTTP(超文本传输协议)

​ 基于UDP的网络协议:NTP(网路时间协议)

​ TFTP(简单文件传输协议)

7、 TCP 有哪些定时器?

重传定时器

​ 为了控制丢失或丢弃的报文段,也就是对报文段确认的等待时间。当TCP发送报文段时,就创建这个特定报文段的重传定时器。若计时内收到了确认,则撤销计时器;若超时没有收到确认,则重传该报文段并将定时器复位。

坚持定时器

​ 专门应对0窗口通知而设定的。

​ 当发送端收到0窗口的确认时,就启动坚持定时器。当坚持定时器到期时,发送端就向接收端发送一个探测报文段,该报文段只有一个字节的数据并且有序号,但序号不需要确认。探测报文段用来提醒接收端确认报文已丢失,必须重传。

​ 坚持计时器的截止期设置为重传时间的值,若未收到接收端的响应,则发送另一个探测报文段,并将坚持计时器的值加倍并复位,直到这个值增加到阈值为止(通常为60s),之后发送端每60s发送一个探测报文段直到窗口重新打开。

保活定时器

​ 每当服务器收到客户端的信息,就将保活定时器复位,超时通常设置2小时。若超过2小时服务器还没收到客户端的信息就发送探测报文段,若发送了10个探测报文段(每75s发一个)还没收到响应,则终止连接。

时间等待计时器

​ 在连接终止期使用。在TCP关闭连接时,并不认为这个连接真正关闭了。在时间等待期内,连接处于一种过渡的状态。这样就可以让重复的报文段在到达终点后被丢弃。该定时器的值通常设置为一个报文段寿命的2倍。

2MSL定时器。MSL(报文段最大生存时间)。

目的

​ 1:为了测量连接处于TIME-WAIT状态的时间,可以让TCP再次发送最后的ACK来防止该ACK丢失。(若丢失,对端会重传FIN)

​ 2:避免一个TCP连接在断开之前有迷途分节未消逝,若断开该TCP连接后立即重启一个同样的连接(IP和端口均相同),这时之前的迷途分节可能会被新的TCP连接接收,从而造成错误。等待2MSL时间可以保证该连接上的迷途分节完全消逝。

8、 什么是CDN?CDN是如何工作的?

CDN(Content Delivery Network)内容分发网络。

​ CDN是构建在现有网络基础上的智能虚拟网络,依靠部署在各地的边缘服务器,通过中心平台的负载均衡、内容分发、调度等功能模块,让用户就近获取所需内容,降低网络拥塞,提高用户访问的响应速度和命中率。从技术上全面解决网络带宽小、用户访问量大、网点分布不均匀等问题。

​ 通过在现有的Internet中增加一层新的Cache(缓存)层,将网站的内容发布到最接近用户的网络“边缘”节点。Cache层的技术,消除了数据峰值访问造成的结点设备阻塞。Cache服务器具有缓存功能,所以大部分网页对象,如html、htm、php等页面文件,gif、tif、png、bmp等图片文件以及其他格式的文件,在有效期(TTL)内,对于重复的访问,不必从原始网站重新传送文件实体,只需要通过简单地认证,传送几十字节的Header,即可将本地的副本直接传送给用户。由于缓存服务器通常靠近客户端,所以能获得近似局域网的访问速度,并有效减少广域网带宽的消耗,不仅提高响应速度,节约带宽,对于加速WEB服务器,有效减缓服务器的负载非常有效。

CDN网络的组成

内容缓存设备:为CDN网络节点,位于用户接入点。是面向最终用户的内容提供设备,可以缓存静态WEB内容和流媒体内容,实现内容的边缘传播和存储,方便用户访问。

内容交换机:处于用户接入集中点,可以均衡单点多个内容缓存设备的负载,并对内容进行缓存负载平衡和访问控制。

内容路由器:负责将用户的请求调度到适当的设备上。内容路由通常通过负载均衡系统实现,动态均衡各个内容缓存站点的载荷分配,为用户的请求选择最佳的访问站点,同时提高网站的可用性。内容路由器可以根据多种因素定制路由,如站点与用户的临近度、内容的可用性、网络负载、设备状况等。负载均衡系统是整个CDN的核心,负载均衡的准确性和效率决定了整个CDN的效率和性能。

内容管理系统:负责整个CDN的管理,是一个可选部件。作用是进行内容的管理,如内容的注入和发布、内容的分发、审核、服务等。

CDN的功能

​ 1:节约骨干网的带宽,减少带宽需求量。

​ 2:提供服务器端加速,解决由于用户访问量过大引起的服务器过载问题。

​ 3:服务商能使用Web Cache技术在本地缓存用户访问过的Web页面和对象,实现相同对象的访问无需占用主干的出口带宽,并提高用户访问因特网的速度需求。

​ 4:能克服网站分布不均的问题,且能降低网站自身的建设和维护成本。

​ 5:降低“通信风暴”的影响,提高网络访问的稳定性。

CDN的工作过程

传统访问过程(未加速缓存服务)

​ 1:用户输入访问的域名,操作系统向Loacl DNS查询域名的IP地址。

​ 2:Local DNS向ROOT DNS查询域名的授权服务器(假设Local DNS缓存过期)。

​ 3:ROOT DNS将域名授权DNS记录回复给LoaclDNS。

​ 4:Loca lDNS得到域名授权的DNS记录后,继续向域名授权DNS查询域名的IP地址。

​ 5:域名授权DNS查询域名记录后,回复给Local DNS。

​ 6:Local DNS将得到的域名IP地址回复给客户端。

​ 7:用户得到域名IP地址后访问站点服务器。

​ 8:站点服务器应答请求并将内容返回给客户端。

CDN访问过程(使用缓存服务)

​ 1:用户输入访问的域名,操作系统向Local DNS查询域名的IP地址。

​ 2:Local DNS向ROOT DNS查询域名的授权服务器(假设Local DNS缓存过期)。

​ 3:ROOT DNS将域名授权DNS记录回复给Loacl DNS。

​ 4:Loacl DNS得到域名授权DNS记录后,继续向域名授权DNS查询域名的IP地址。

​ 5:域名授权DNS查询域名记录后回复给Local DNS。

​ 6:Local DNS得到域名记录后,向智能调度DNS查询域名的IP地址。

​ 7:智能调度DNS根据一定的算法和策略(静态拓扑、容量等),将最适合的CDN节点IP地址回复给Local DNS。

​ 8:Local DNS将得到的域名IP地址回复给客户端。

​ 9:用户得到域名IP地址后,访问站点服务器。

​ 10:CDN节点服务器应答请求并将内容返回给客户端(缓存服务器一方面在本地进行保存,以备后续使用,另一方面把获取的数据返回给客户端,完成数据服务过程)。

智能调度DNS:当用户访问加入CDN服务的网站时,域名解析请求将最终由智能调度DNS负责处理,它通过一组预先定义好的策略,将当时最接近用户的节点IP地址提供给用户,让用户可以快速得到服务,同时它需要与分布在各地的CDN节点保持通信,跟踪各节点的健康状态、容量等,确保用户的请求分配到就近可用的节点。

缓存功能服务:

​ 1:负载均衡设备(如lvs,F5的BIG/IP)。

​ 2:内容Cache服务器(如squid)。

​ 3:共享存储(根据缓存数据量的多少决定是否需要)。

9、 什么是DNS?说说DNS的解析过程?

DNS

​ DNS是域名系统(Domain Name System)的缩写,是一种组织域层次结构的计算机和网络服务命名系统。它用于TCP/IP网络中,提供的服务是将主机名和域名转换为IP地址的工作。

DNS的解析过程

网络面试的100问

​ 1;在浏览器中输入www.qq.com域名后,浏览器首先会在自己的缓存中查找是否有该域名对应的IP地址映射,若有,则先使用该IP地址映射完成域名解析。

​ 2:若浏览器缓存中没有该域名的映射关系。操作系统会检查自己本地的hosts文件是否有这个网址的映射关系,若有,就先调用该IP地址映射完成域名解析。

​ 3:若hosts文件中没有这个域名映射,则查找本地DNS解析器缓存来看是否有这个网址的映射关系。若有,则直接返回完成域名解析。

​ 4:若hosts文件与本地DNS解析器缓存都没有相应的网址映射关系。首先查找TCP/IP参数中设置的首选DNS服务器,我们称之为本地DNS服务器。该服务器收到查询时,如果要查询的域名在本地配置区域资源中,则返回解析给客户端,完成域名解析。该解析具有权威性。

​ 5:若要查询的域名不在本地DNS服务器区域资源中,但该服务器缓存了该网址的映射关系,则调用这个IP地址映射,完成域名解析。该解析不具有权威性。

​ 6:如果本地DNS服务器的本地区域资源和缓存都解析失败,则根据本地DNS服务器的设置(是否设置转发器)进行查询。若未使用转发模式,本地DNS就会把请求发送给13台根DNS。根DNS服务器收到请求后会判断该域名由谁来管理,并返回一个负责该*域名服务器的IP地址。本地DNS服务器收到IP地址后,将会联系负责.com域的下一级DNS服务器地址(qq.com)给本地DNS服务器。当本地DNS服务器收到这个IP后,就会找qq.com域服务器,重复上面的操作进行查询,直至找到www.qq.com主机。

​ 7:若使用了转发模式,本地DNS服务器就会把请求发送给上一级DNS服务器,由上一级服务器进行解析。若上一级服务器不能解析,就把请求发送给上上级或找到根DNS,以此循环。无论是本地DNS服务器使用转发还是非转发,最终都是把结果返回给本地DNS服务器,由本地DNS服务器再返回给客户端。

10、 什么是DHCP?描述工作过程?

​ DHCP(Dynamic Host Configuration Protocol–动态主机配置协议),通常被应用在大型的局域网络环境中,主要作用是集中地管理、分配IP地址,让网络环境中的主机动态地获取IP地址、Gateway地址、DNS服务器地址等信息,并能提升地址的使用率。

​ DHCP协议采用客户端/服务器模型,主机地址动态地分配任务由网络主机驱动。当DHCP服务器接收到来自网络主机申请地址的信息时,才会向网络主机发送相关的地址配置等信息,以实现网络主机地址信息的动态配置。

DHCP具有以下功能

​ 1:保证任何IP地址在同一时刻只能由一台DHCP客户机使用。

​ 2:DHCP应当可以给用户分配永久固定的IP地址。

​ 3:DHCP应当可以与使用其他方法获得IP地址的主机共存(如手工配置IP地址的主机)。

​ 4:DHCP服务器应当向现有的BOOTP客户端提供服务。

DHCP有三种分配IP地址的方式:

​ 1:自动分配方式–DHCP服务器为主机指定一个永久性的IP地址,一旦DHCP客户端第一次成功从DHCP服务器租用到IP地址后,即可永久性使用该地址。

​ 2:动态分配方式–DHCP服务器给主机指定一个具有时间限制的IP地址,时间到期或主机明确表示放弃该地址时,该地址可以被其他主机使用。

​ 3:手工分配方式–客户端的IP地址是由网络管理员指定的,DHCP服务器只是将指定的IP地址告诉客户端。

​ 注:仅动态分配方式可以重复使用客户端不需要的地址。

DHCP工作过程

​ 1:DHCP客户端以广播的形式发出DHCP Discover报文。

​ 2:所有的DHCP服务器都能够接收到DHCP客户端发送的DHCP Discover报文。所有的DHCP服务器会给出响应,向客户端发送一个DHCP Offer报文。

​ 3:DHCP客户端只能处理其中一个DHCP Offer报文。一般原则是处理最先收到的DHCP Offer报文。

​ 4:DHCP服务器收到DHCP Request报文后,判断选项字段中的IP地址与自己的IP地址是否相同。若不同,DHCP服务器不做任何处理,只会清除相应的IP地址分配记录;若相同,DHCP服务器就会向DHCP客户端响应一个DHCP ACK报文,并在选项字段中增加IP地址的使用租期信息。

​ 5:DHCP客户单收到DHCP ACK报文后,检查DHCP服务器分配的IP地址能否使用。若可以使用,则DHCP客户端成功获得IP地址并根据IP地址使用租期自动启动延续过程;若DHCP客户端发现分配的IP地址被占用,则DHCP客户端向DHCP服务器发送DHCP Decline报文,通知DHCP服务器禁用这个IP地址,然后DHCP客户端开始新的地址申请过程。

​ 6:DHCP客户端成功过去IP地址后,随时可以发送DHCP Release报文来释放自己的IP地址。DHCP服务器收到DHCP Release报文后,会回收相应的IP地址并重新分配给其他客户端。

11、 DHCP有什么安全问题?如何防范?

DHCP饿死攻击

CHADDR:客户端的硬件地址(源MAC地址)。

攻击原理:攻击者持续大量地向服务器申请IP地址,导致服务器地址池地址被耗尽,从而不能正常给客户端分配地址。

利用的漏洞:DHCP服务器无法分辨主机。

防御:使用DHCP Snooping技术防饿死攻击。致性检查(request报文头部的MAC地址和chaddr报文字段是否相同,相同才进行转发)、限制接口允许学习的DHCP Snooping绑定表项的MAC数量。

仿冒服务器攻击

攻击原理:攻击者仿冒服务器,向客户端分配错误的网关地址等参数,导致客户端无法正常访问网络。

利用的漏洞:主机无法分辨合法的DHCP服务器。

防御:使用DHCP Snooping防仿冒服务器攻击。配置信任接口和非信任接口(默认都为非信任接口,需要手动配置)。

中间人攻击

攻击原理:攻击者作为中间人来转发客户端与DHCP服务器之间的通信报文。从而获取到一些客户的隐私信息。

防御:交换机添加DHCP Snooping表,查看映射表,丢弃不符合的报文。

12、 简述FTP协议?如何工作?

简述

​ FTP(File Transfer Protocol,文件传输协议)是TCP/IP协议簇中的协议之一。FTP包括两个组成部分:FTP服务器、FTP客户端。FTP服务器用来存储文件,用户可以使用FTP客户端通过FTP协议访问位于FTP服务器上的资源。在开发网站时,通常利用FTP协议把网页或程序传到WEB服务器上。由于FTP传输效率非常高,在网络上传输大的文件时,一般也使用该协议。

​ 默认情况下FTP协议使用TCP的20和21端口,其中20端口用来传输数据,21端口用来传输控制信息。是否使用20端口与FTP使用的传输模式有关,使用主动模式,则数据传输端口为20;使用被动模式,则数据传输端口需要与客户端协商决定。

传输模式

ASCII传输:假设用户正在拷贝的文件包含简单的ASCII码文本,若远程机器上运行的是不同的操作系统,当传输时FTP通常会自动的调整文件的内容以便于文件解释成对端计算机存储文本文件的格式。

二进制传输:保存文件的位序,一便原始和拷贝的是逐一对应的,即目的机器上包含的位序列的文件是没意义的。 在ASCII方式下传输二进制文件,即使不需要也会被转译,使得传输变慢、损坏数据,导致文件不能使用。(大多数计算机上,ASCII方式下每一个字符第一位是无意义的,因为ASCII字符组合不使用该位。但二进制方式下,每一位都有意义。)若传输的两台机器是同样的,则二进制方式对文本文件和数据文件都有效。

工作方式

主动模式:FTP客户端首先与FTP服务器的21端口建立连接,通过这个通道发送命令,客户端需要接收数据时在该通道发送port命令,port命令包含了客户端使用什么端口接收数据。在传输数据时,服务器通过自己的20端口连接到客户端指定的端口发送数据。FTP的服务器和客户端必须建立一个新的连接来传送数据。

被动模式:在建立控制通道时与主动模式相似,但建立连接后发送的是pasv命令。FTP服务器收到pasv命令后,随机打开一个高位端口(端口号>1024)并通知客户端在这个端口上传输数据,客户端连接FTP服务器的该端口,然后FTP服务器将通过这个端口进行数据的传输,这时FTP服务器与客户端不需要建立新的连接。

​ 很多防火墙在设置时不允许接受外部发起的连接,所以许多位于防火墙后或内网的FTP服务器不支持被动模式,因为客户端无法穿过防火墙打开FTP服务器的高位端口;而许多内网的客户端不能使用主动模式登陆FTP服务器,因为服务器的20端口无法和内网客户端建立新的连接,导致FTP无法工作。

13、 什么是路由器?描述一下工作过程?

路由器

​ 路由器工作于OSI的第三层,主要任务是接收来自一个网络接口的分组,根据其中所包含的目的地址决定转发到哪一个目的地址(路由器自身也可能是目的主机),并决定从哪个网络接口转发出去。

工作过程

​ 由于路由器是三层设备,他在网络中收到任何一个数据包,就会将该数据包的二层信息去掉,查看三层的信息。然后根据路由表来确定数据包的路由,再检查安全访问表。若安全访问表通过,再进行二层信息的封装,最后将该数据包转发。若路由表中查不到对应的MAC地址,则路由器向源地址的站点返回一个信息并将数据包丢弃。

路由器的功能

​ 1:网络分段—根据实际需求将网络划分成不同的网段。

​ 2:地址解析与路径选择–对流经路由器的所有数据包的报头都要拆开来确定数据包的流向;路径选择是指路由器可为跨越不同LAN的流量在网络上选择最佳的路径。

​ 3:隔离广播域—路由器能阻止广播流量从一个LAN到另一个LAN,避免了广播风暴。

​ 4:安全性与防火墙—路由器对网络安全起着很大的作用,能监视每个用户的业务流,并利用动态滤波器保证网络安全性,只有被授权的用户才能拥有相应的数据链路。

​ 5:优先权控制—路由器可以根据预设的方案给不同协议的流量执行不同的优先权。

​ 6:广域网连接

​ 注:路由器对于同一源地址发送到同一目的地址的数据包也要进行重复的解封装和封装的操作,这导致路由器不会具有很高的吞吐量,也是路由器称为网络瓶颈的原因之一。

14、 什么是交换机?描述一下工作过程?

交换机

​ 交换机是一种用于电/光信号转发的网络设备,可以为接入交换机的任意两个网络节点提供独享的电信号通路。最常见的交换机是以太网交换机,工作于OSI参考模型的第二层(数据链路层)。交换机拥有一条高带宽的背部总线和内部交换矩阵,在同一时刻可进行多个端口对之间的数据传输。传输模式有全双工、半双工、全双工/半双工自适应。

工作过程

​ 交换机利用“端口/MAC地址映射表”进行信息交换,并使用“地址学习”法来动态建立和维护端口/MAC地址表。

​ 流量进入交换机后,先识别源MAC地址,若地址映射表中没有记录,则生成映射表项;若地址映射表中存在记录,则更新映射表项。然后关注目的MAC,查询交换机的MAC地址表,若表中存在目的MAC接口记录,将单播基于该接口转发,若目的MAC对应的接口与源MAC接口为同一端口,说明在同一网络,不转发直接丢弃,防止网络风暴产生。若MAC地址表中不存在目的MAC接口记录,则进行未知单播处理方案–洪泛,即除流量进入接口外的所有接口进行拷贝转发。

15、 什么是三层交换机?和二层交换机有什么区别?三层交换机是否可以代替路由器?为什么?

三层交换机

​ 三层交换机就是具有部分路由器功能的交换机,其最重要的目的是加快大型局域网内部的数据交换,能够做到一次路由,多次转发。

​ 对于数据包转发等规律性的过程由硬件高速实现。

​ 路由信息更新、路由表维护、路由计算、路由确定等功能由软件实现。

​ 三层交换技术就是二层交换技术+三层转发技术。三层交换技术是在网络模型中的第三层实现了数据包的高速转发,既可实现网络路由功能,又可根据不同网络状况做到最优网络性能。

​ 三层交换机是为IP设计的,接口类型简单,拥有很强的二层包处理能力,非常适用于大型局域网内的数据路由与交换。既可以工作在三层替代或部分完成传统路由器的功能,又具有几乎二层交换的速度,且价格便宜。

与二层交换机的区别

​ 1:工作方式不同—二层交换机属于数据链路层设备,可以识别数据包中的MAC地址信息,根据MAC地址进行转发,并将MAC地址与端口的对应关系记录下来。三层交换机最重要的目的是加快大型局域网内部的数据交换,所有的路由功能更也是为该目的服务的,能够一次路由,多次转发。对于数据包转发等规律性过程由硬件高速实现。

​ 2:工作模式不同—二层交换机工作于数据链路层,不具备路由功能;三层交换机可以看做是网络层设备,具有路由功能。

​ 3:交换方式不同—二层交换机在数据链路层进行操作,三层交换机在网络层实现数据包高速转发,二层交换技术+三层转发技术。

不能替代路由器

原因

​ 1:交换机的网络打通速度很慢。在没有达到线速转发之前,速度很低且达到线速转发的时间可能很久。路由器的路由表计算是通过CPU的,任何时间都是线速转发(CPU超载除外)。

​ 2:交换机支持的网络类型很少。串行链路、ATM这些接口交换机支持的很差,交换机通常支持以太网口或电口。路由器则带着各种各样的接口,可以更好地支持运营商。

​ 3:路由器可以改造成网关、防火墙。因为所有报文都走CPU,所以CPU有能力记录这些报文。但交换机的交换芯片没有这个能力。路由器也因为该特点被用在许多企业、运营商的网络出口。

​ 4:路由器的转发CPU和控制CPU通常是分开的,对于所有发给路由器的报文,走控制CPU即可,若加防火墙之类的通过软件实现即可,代码可以是一套。但三层交换机的交换芯片控制的防火墙等ACL控制是分成两套代码的,一套代码是控制走芯片转发的部分,另一套是控制走控制CPU的部分。相对路由器多出一套代码。

​ 5:交换机的抗网络震荡能力差。网络一旦开始震荡,路由表不稳定的时候,交换机不能进行线速转发,但路由基本不受影响。

16、 讲一讲什么是ARP?

​ ARP(地址解析协议),是根据IP地址获取物理地址的一个TCP/IP协议。

​ 主机发送信息时将包含目标IP地址的ARP请求广播到网络上的所有主机,并接受返回消息,以此确定目标的物理地址,收到返回消息后将该IP地址和物理地址存入本机ARP缓存中并保留一定时间,下次请求时直接查询ARP缓存以节约资源。

​ 地址解析协议是建立在网络中各个主机相互信任的基础上的,网络上的主机可以自主发送ARP应答消息,其他主机收到应答报文时不会检测该报文的真实性直接将其记入本机ARP缓存。

17、 ARP毒化过程和原理?怎么防御?(终端和交换机)

​ ARP毒化即ARP欺骗

原理

利用ARP缓存机制存在的缺陷:当请求主机收到ARP应答包后,不会去验证自己之前是否向对方发送过ARP请求包,便直接把应答包中IP与MAC的对应关系保存在ARP缓存中,如果ARP缓存中存在相同的IP对应关系,则旧的会被替换。

过程

ARP双向欺骗:攻击者伪造应答包来欺骗攻击目标自己是网关,在攻击目标的ARP缓存表中留下错误的指向信息,以让攻击目标将网关指向自己。 攻击者再伪造应答包来欺骗网关自己是攻击目标,让网关把传输给攻击目标的信息来传输给攻击者自身。 通过双向欺骗,原本网关直接发数据给攻击目标,变成了网关把数据发给攻击者之后经过攻击者再转发给攻击目标。

ARP单向欺骗:攻击者仅欺骗攻击目标自己是网关,网关的ARP缓存表不变。这时攻击目标把数据发给攻击者,而网关会正常把数据发给攻击目标。

防御

​ 1:主机中手动建立静态ARP表。

​ 2:主机中使用ARP防火墙来固化ARP表。

​ 3:交换中使用DAI技术(动态ARP检测技术)。

18、 说明什么是PPPoE协议?如何工作?

PPPoE(Point to Point Protocol Over Ethernet)

​ 是将点对点协议封装在以太网框架中的一种网络隧道协议。由于协议中集成PPP协议,所以实现了传统以太网不能提供的身份验证、加密以及压缩等功能,可用于缆线调制解调器和数字用户线路等以以太网协议向用户提供接入服务的协议体系。

工作过程

​ PPPoE工作过程可以分为Discovery阶段和PPP会话阶段。Discovery阶段是一个无状态的阶段,该阶段主要是选择接入服务器,确定所要建立的PPP会话标识符Session ID,同时获得对方点到点的连接信息;PPP会话阶段执行标准的PPP过程。

Discovery阶段

​ 1:主机主动发送广播包PADI寻找接入服务器,PADI必须至少包含一个服务名称类型的tag,以表明主机所要求提供的服务。

​ 2:接入服务器收到广播包PADI后,发送PADO(有效发现提供包)以响应请求。PADO也必须至少包含一个接入服务器名称类型的tag,以及一个或多个服务名称类型的tag,以表明可以向主机提供的服务种类。

​ 3:主机在收到的多个PADO中选择一个合适的,然后向选择的接入服务器发送PADR(有效发现请求包)。PADR必须包含一个服务名称类型的tag,确定向接入服务器请求的服务种类。当主机在指定的时间内没有收到PADO时,应当重新发送PADI,并且将等待时间加倍,该过程会被重复期望的次数。

​ 4:接入服务器收到PADR后准备开始PPP会话,发送一个PADS(有效发现确认包)。PADS必须包含一个接入服务器名称类型的tag以确认向主机提供的服务。当主机收到PADS后,双方进入PPP会话阶段。

PPP会话阶段

​ PPP会话阶段主要是LCP、认证、NCP这3个协议的协商过程。LCP阶段主要完成建立、配置和检测数据链路连接。认证协议类型由LCP协商(CHAP或PAP)。NCP是一个协议簇,用于配置不同的网络层协议,常用的是IP控制协议(IPCP),负责配置用户的IP和DNS等工作。

PADT是会话终止包,可以由会话双方的任意一方发起,但在会话建立之后才有效。

特点

​ 不仅有以太网的快速简便的特点,同时具有PPP的强大功能,任何能被PPP封装的协议都可通过PPPoE传输。

​ 1:PPPoE很容易检查到用户下线。可通过一个PPP会话的建立和释放来对用户进行基于时长或流量的统计,计费方式灵活方便。

​ 2:PPPoE可以提供动态IP地址分配方式。用户无需任何配置,网管维护简单,无需添加设备就可解决IP地址短缺的问题,同时根据分配的IP地址,可以很好地定位用户在本网内的活动。

​ 3:用户通过免费的PPPoE客户端,输入用户名和密码即可上网,与传统的拨号上网相似,延续了用户的习惯,从运营商角度来看,PPPoE对现存的网络结构变更较小。

19、 交换机是如何转发数据包的?

直通式

​ 该方式可以理解为在各端口间是纵横交叉的线路矩阵电话交换机。在输入端口检测到一个数据包时,检查该包的报头,获取其中的目的地址,启动内部的动态查找表转换成相应的输出端口。在输入与输出交叉处接通,把数据包直通到相应的端口以实现交换功能。优点是不需要存储,延迟低,交换速度快。但无法检查传输的数据是否有误,不能提供错误检测功能,且容易丢包。

存储-转发式

​ 应用最广泛的方式。把输入端口的数据包进行检查,对错误包处理后取出数据包中的目的地址,通过查找表转换成输出端口并发送数据包。缺点是延迟高。优点是可以对数据包进行错误检测,改善网络性能,支持不同速度端口间的转换,保持高端口与低速端口之间的协同工作。

碎片隔离

​ 检查数据包的长度是否够64字节。若小于64字节,说明是假包,直接丢弃;若大于64字节,则转发该数据包。该方式不提供数据校验,数据的处理速度比存储-转发式快,但比直通式慢。

20、 什么是VLAN?

​ VLAN(虚拟局域网)是一组逻辑上的设备和用户,这些设备和用户不受物理位置的限制,可以根据功能、部门及应用等因素将他们组织起来,相互之间的通信就像在一个网段中一样。

​ VLAN工作于OSI参考模型中的第2、3层,一个VLAN就是一个广播域。VLAN技术更加灵活,

​ 优点是网络设备的移动、添加和修改的管理方便;可以控制广播活动;能提高网络的安全性。

21、 如何实现VLAN间通信?有几种方法?

​ 1:使用路由器的不同物理接口与交换机的每个VLAN分别连接。

​ 这种方式的优点是管理简单,缺点是网络扩展难度大。路由器通常不会有太多的LAN接口。

​ 2:使用路由器逻辑子接口与交换机的每个VLAN分别连接。

​ 这种方式要求路由器和交换机端口都需支持汇聚连接,且双方用于汇聚连接的协议也需相同。

​ 3:使用三层以上交换机代替路由器实现VLAN间通信。

22、 什么是广播域?什么是冲突域?

广播域

​ 指网段上所有设备的集合,通常来说一个局域网就是一个广播域。

冲突域

​ 一个站点向另一个站点发出信号,除目的站点外,其余能接收到这个信号的所有站点构成了一个冲突域。


1:冲突域基于物理层广播域基于数据链路层

​ 2:默认情况下交换机所有端口都在同一个广播域内每一个端口就是一个冲突域。所以交换机可以分割冲突域,但不能分割广播域。VLAN技术可以隔离广播域。

​3:路由器的每个端口就是一个广播域

4:HUB(集线器)所有端口都在同一个广播域、冲突域内,不能分割广播域和冲突域。

23、 简述STP(802.1D)的作用及工作原理。RSTP(802.1W)收敛速度为什么比802.1D快?有哪些方面?

STP的作用

​ 应用于计算机网络中树形拓扑结构的建立。主要作用是防止网桥网络中的冗余链路形成环路工作,既能解决核心层网络需要冗余链路的网络健壮性要求,又能解决因冗余链路形成的物理环路导致“广播风暴”问题。

STP的工作原理

​ 通过在交换机之间传递一种特殊的协议报文,网桥协议数据单元(BPDU),来确定网络的拓扑结构。BDPU有两种,配置BPDU、TCN BPDU。前者用于计算无环的生成树,后者用于在二层网络拓扑发生变化时产生用来缩短MAC表项的刷新时间的。

​ 1:选取唯一一个根网桥。比较BID(网桥优先级和MAC地址),小优。

​ 2:在非根网桥上选取唯一一个根端口。比较BPDU的入向cost值,小优;BID小优;PID大优。

​ 3:在每个链路上选取唯一一个指定端口。根网桥端口一般为制定个端口。比较出向cost值,小优;BID小优;PID大优。

​ 4:剩余的端口为阻塞端口。只接收,不转发流量。

STP的缺点

​ 1:收敛速度慢。

​ 2:链路利用率低。

RSTP的加速

​ 1:取消了计时器,在一个状态完成后直接进入下一状态。

​ 2:设备间逐级收敛。

​ 3:集成了端口加速(边缘端口)、上行链路加速、骨干加速。

​ 4:TCN消息出现时,不需要等待根网桥的BPDU,直接刷新本地的CAM表。

MSTP

​ 在RSTP加速的基础上,将多个VLAN放在一个组内,每个组再生成一个生成树。

24、 MSTP原理?

​ 通过MSTP把一个交换网络划分成多个域,每个域内形成多棵树,生成树之间相互独立,每颗生成树叫做一个多生成树实例MSTI,每个域叫做一个MST域。

25、 生成树有什么缺点?你知道有哪些技术可以弥补这些缺点?

缺点

​ 1:收敛速度慢。

​ 2:链路利用率低。

解决办法

​ 使用RSTP来提高收敛速度;使用MSTP提高收敛速度和链路利用率。

26、 简述传统的多层交换与基于CEF的多层交换的区别

传统的多层交换

一次路由,多次交换。

​ 当一个数据包来到三层设备时,设备对该数据包进行原始交换,过程结束后,设备为该数据包的第一个包生成cache(记录出接口,新的MAC封装),之后数据流的第二个包开始基于cache转发,当数据流转发完成后,cache表超时被刷新。 在三层交换设备上二层依然需要基于CAM表进行转发。

CEF的多层交换

无需路由,直接交换。

​ 基于路由表生成FIB(转发信息数据库),已经完成了递归可以被芯片直接使用。

​ 将FIB中的出接口信息与ARP表进行结合,生成转发列表。

​ 当流量进入三层设备后,设备基于目的IP地址,在表中查找记录,表中存放了流量的出接口和新的二层封装参数。 在三层交换设备上二层还需要查看CAM表。

27、 有一台交换机上的所有用户都获取不了IP地址,但手工配置后这台交换机上的同一vlan间的用户之间能够相互ping通,但ping不通外网,请说出排障思路。

IP地址排障

​ 1:检查网关设备的DHCP服务是否正确配置。

​ 2:若为三层交换机设备,查看VLAN和TRUNK服务是否正确配置。

​ 3:查看用户直连的二层交换机上VLAN划分是否正确。

​ 4:交换机之间是否开启了TRUNK服务。

ping不通外网

​ 1:检查交换机到边界出口设备之间的线路情况是否正常。

​ 2:查看边界路由器上是否做了NAT以及ACL是否正确。缺省路由是否下发。

28、 你都知道网络的那些冗余技术,请说明。

​ 1:线路冗余

​ 2:设备冗余

​ 3:网关冗余。VRRP(虚拟路由器冗余协议)、HSRP(热备份路由器协议)

​ 4:交换机的冗余。STP(生成树协议)、端口聚合(Eth-Trunk)

​ 5:UPD(电源)冗余

29、 策略路由和路由策略的区别?

策略路由

​ 通过流量策略来改变选路的转发手段。

​ 策略路由可以根据源、目地址,源、目端口,协议等来做策略提供路由。在数据包转发的时候产生作用,不改表路由表中的内容。

路由策略

​ 通过在控制层面抓取流量、修改流量等影响路由表的生成,来控制选路。

​ 策略路由的优先级比路由策略高。收到数据包并进行转发时,优先根据策略路由的规则进行匹配,若果能匹配上,则根据策略路由转发;否则按照路由表中的转发路径进行转发。

策略路由是数据包的转发规则;路由策略是路由发现规则。转发在底层,路由在高层,所以策略路由的优先级高于路由策略。

30、 说明什么是NAT技术?有哪些NAT?

NAT技术

​ NAT(网络地址转换),当前的Internet面临两大问题:IP地址的短缺和路由表的不断增大,这使得众多用户的接入出现困难。使用NAT技术可以使一个机构内的所有用户通过有限个合法IP地址访问Internet,从而节省了Internet上合法的IP地址。另一方面,通过NAT可以隐藏内网主机的真实IP地址,提高网络的安全性。

NAT种类

​ 1:静态NAT----一对一

​ 2:动态NAT—多对多(携带no-pat:静态多对多;不携带则为动态多对多

​ 3:Easy NAT—一对多

​ 4:NAT服务器—端口映射

31、 当你使用计算机上网浏览 www.baidu.com 网站时,你的计算机可能会依次发送哪些类型的报文?

​ 输入网址后,浏览器首先查看浏览器缓存;若无对应的IP地址映射,则查看计算机上的系统缓存;若依旧没有对应的IP地址映射,则访问网关设备,在网关设备查缓存;若网关设备无对应的映射,则向本地DNS服务器发起请求,查找对应的IP地址映射;若本地DNS服务器上无对应的IP地址映射,则向根DNS服务器请求,根DNS服务器通过*域名服务器获取对应的IP地址,然后将其返回给本地DNS服务器,本地DNS服务器将该映射存入缓存中并返回给主机。主机也将该映射放入缓存中,下次访问时直接匹配最佳节点即可。

32、 当你在浏览器输入 www.baidu.com 并按下回车后发生了什么?(要说出HTTP的工作原理)

总思路

​ 1:浏览器向DNS服务器请求解析该URL中的域名对应的IP地址。

​ 2:解析得到IP地址后,根据该IP地址和默认端口80,与服务器建立TCP连接。

​ 3:浏览器发出读取文件(URL中域名后面部分对应的文件)的HTTP请求,该请求报文作为TCP三次握手的第三个报文数据发给服务器。

​ 4:服务器给出响应,把请求的HTML文本发送给浏览器。

​ 5:释放TCP连接。

​ 6:浏览器将该文本显示出来。

具体实现

​ 1:根据域名查询IP地址:浏览器缓存–>操作系统缓存–>本地DNS服务器缓存–>根DNS服务器

​ 2:三次握手建立TCP连接。

​ 3:HTTP请求报文的方法是GET方式,若浏览器存储了该域名下的Cookies,则HTTP请求头中会携带Cookies发给服务器。

​ 4:HTTP响应报文的头部包含了状态码,三位数字,五大类。HTTP响应报文内容是网页的编码内容。

​ 5:在浏览器没有完整接收全部HTML文档时,就已经开始显示这个页面了。如果是静态页面,那到此基本结束,之后释放TCP连接;如果是动态页面,那么浏览器显示HTML时,会获取嵌入在HTML中的对象,浏览器会发送获取请求来重新获得这些文件。

​ 6:在HTML中若发现网页中引用了其他资源,如:CSS、图片等,浏览器则发起HTTP请求来获得相应资源。

33、 RIP的防环机制

​ 1:水平分割----从此口进不从此口出。

​ 2:毒性逆转水平分割----触发更新。

​ 本地存在断开网段时,需要向邻居发送跳数为16跳的更新包,用来告知邻居该路由不可达,之后邻居打破水平分割将信息发回来表示确认收到。

​ 16跳的毒性更新包发送出去后,需要逆转水平分割来确认邻居收到该毒性更新包。

​ 3:抑制计时器

​ 收到的路由条目在无征兆情况下跳数突然变大,说明环路出现。抑制计时器来抑制这些路由的加表。

​ 4:最大跳数—16跳不可达。

34、 OSPF中承载完整的链路状态的包?

LSU(链路状态更新包)

35、 OSPF中DBD报文是如何进行确认的?

​ 1:DBD(数据库描述包),在Exstart状态发送类似Hello的DBD包,仅比较RID进行主从选举,RID大的为主优先进入下一状态。

​ 2:在Exchange状态时进行真正的拓扑目录共享,需要ACK确认。

​ 3:Loading状态使用LSR、LSU、LSACK来获取未知的LSA信息。

注:在Exstart状态使用隐形确认来保证可靠性,从使用主的***来确认收到了主的DBD,收集完所有邻居的DBD后在本地生成LSDB。

36、 OSPF中既是ABR又是ASBR生成什么类型的LSA?

​ 生成1、3、4、5、7类LSA。

注:ASBR所在区域一般设为NSSA区域,所以有7类LSA产生。

37、 OSPF中NSSA区域里都有哪些LSA?

​ 正常区域存在1、2、3类LSA;存在ASBR的区域有4、5类LSA;NSSA区域还会产生7类LSA。但NSSA区域会干掉4、5类。

​ 所以NSSA区域会产生1、2、3、7类LSA。

38、 LSA5外部路由可以在ABR上做汇总吗?

​ 1:在NSSA区域中的ABR上可以做汇总,因为NSSA区域在ABR上需要做7类转5类。

​ 2:当NSSA区域中存在两个ABR时,在route-id大的ABR上做汇总。

​ 3:也可在ABR上直接引入域外路由。

39、 OSPF有哪几种协议包?作用分别是什么?

​ 1:Hello包—发现、建立、周期保活邻居、邻接关系。

​ 2:DBD包—本地数据库目录(摘要)

​ 3:LSR包—基于DBD包中的未知信息进行查询。

​ 4:LSU包—用于答复对端的LSR,携带各种LSA。

​ 5:LSACK包—确认包,用于保证可靠性。

40、 OSPF区域划分的好处?

​ 1:防止环路(OSPF同区域内无环;区域间使用SPF算法防环)。

​ 2:减少LSA更新量(减少由于网络不稳定而引起的所有路由器洪泛LSA导致的网络拥塞)。

41、 OSPF的1类和2类LSA之间的区别?

LSA类别 传播范围 通告者 携带信息 link-id 发送者
LSA-1 router 本设备所在区域 该区域每台设备的RID 设备所在区域的直连拓扑 通告者的RID 区域内每台设备必须发送
LSA-2 Network 本设备所在区域 DR 单个MA网段的拓扑 DR的接口IP地址 每个MA网段中的DR

42、 在OSPF 中。为什么第三类LSA 传播超过一个区域?路由信息就会被修改呢?他不是使用 SPF 算法么?如果这样那么他跟RIP 的DV 算法有啥区别?OSPF没有形成FULL状态的原因?

​ 因为OSPF不是一个纯链路状态的路由协议。区域内传拓扑,区域间传路由的方式。由于三类LSA携带的是域内路由信息,传播范围为整个OSPF域,故三类LSA的传递方式和距离矢量DV型协议一样,当路由经过ABR时会将下一跳修改为自己,这样其他区域的路由在经过ABR时可以进行递归来找到去自己区域的路径。

OSPF没有形成FULL的原因

​ 1:hello和失效时间不一致。

​ 2:接口网络类型不一致。

​ 3:区域ID不一致。

​ 4:MA网络中的掩码不一致。

​ 5:版本不一致。

​ 6:认证方式不一致。

​ 7:route-id相同。

​ 8:MA网络中所有设备优先级均为0.

​ 9:MTU不匹配。

​ 10:特殊区域标记不一致。

​ 11:路由不可达。

​ 12:NBMA网络中没有指明邻居。

​ 卡在Down状态:OSPF没有运行。

​ 卡在Init状态:没有收到对方的Hello包。

​ 卡在2-way状态:MA网络选举失败。

​ 卡在Exstart状态:MTU不匹配。

​ 卡在Exchange状态:包交互有问题,发出DBD后没有收到LSACK。

​ 卡在Loading状态:LSA加载不完全,包交互有问题。

43、 在什么情况下ospf error的OSPF Router ID confusion 数值会增加

​ 1:骨干区域和骨干区域route-id冲突导致OSPF不能正常建邻,无法传递LSA。

​ 2:非骨干区域和非骨干区域route-id冲突导致路由表中的路由翻滚。

​ 3:区域内虚链路route-id冲突导致无法建邻,无法传递LSA。

44、 说到虚连接。虚连接为什么能保证第三类LSA 的路由信息不被修改呢?

虚连接的本质是将远离骨干区域的ABR逻辑的与骨干区域连接起来,即虚链路相当于属于骨干区域的一条链路,因此不会修改三类LSA。

45、 两台路由器通过直连链路,建立OSPF 邻居,那么在一边使用P2P,而一边使用P2MP 的情况下,能正常建立到邻接状态么?

​ OSPF中P2P与P2MP网络类型都是不需要选举DR/BDR的,只要建立邻居关系,就可以直接成为邻接关系。但hello时间不一致,因此需要修改hello时间一致即可建立邻接关系。

46、 ospf 卡在init 状态机,这样的情况是怎么引发的?

​ 收到邻居的hello包时会从Down状态进入Init状态。但由于hello包内容不匹配,如:hello时间不一致,区域ID不一致、认证方式不一致等原因造成的。

47、 OSPF 在进程重启时,为什么邻居能快速的建立起来。而不是像创建进程一样。需要等待那么长时间?

​ 一般情况下OSPF邻居的存活时间为40S,在路由器成功建立邻居的情况下,一边设备重启进程,另一边设备的邻居表正常存活。当设备重启完成之后,发送hello时,对端会立即转到Init状态,之后的所有状态只需要交互一个报文即可。所以,重启进程比创建进程更快。但重启进程时,若对端的邻居表时间超过40S,那么邻居需要经过7个状态机之后才能建立。

48、 ospf 一直提示LSA disabled。为什么会产生这种情况?

​ 当LSA的老化时间截止后,LSA会在LSDB表中被移除。正常情况下,当邻居正常建立到邻接状态时,会自动更新LSA信息,使用LSA age和LSA的***来区分LSA的新旧,并在LSDB中更新为最新的LSA。LSA出现disabled状态,首先判断邻居是否正常建立,是否能正常交互报文。后续的可参考OSPF常见报文错误代码。

49、 ospf 如果不同进程不同区域使能。邻居能正常建立起来么?

不能建立。OSPF路由器在接收OSPF报文时会验证一些报文是合法。检查的内容有:版本号、区域ID、认证方式和认证信息。

50、 ospf 本身能过滤掉自身产生的LSA 吗?

OSPF本身不能过滤LSA。如果存在过滤机制的话,SPF算法可能会出错。即使存在过滤机制也会限制范围。如:LSDB的超载机制,特殊区域拒绝某些类的LSA。

51、 那虚连接是怎样使用SPF 算法的呢?准确的说。虚连接是怎么确定他报文的目的地址的?

​ 每个虚连接都要生成两棵最短路径树(第一颗为本区域的最短路径树,第二颗为虚连接邻居的最短路径树),计算虚连接最短路径树之后,本地路由器通过查找对端最短路径树,并通过对端的route-id来作为标识。则虚连接到达本地路由器的始发端口的IP地址为本地路由器发给对端虚连接邻居的协议报文的目的IP地址。

52、 为什么ospf 中四种网络类型所定义的hello time 和生存时间都不一样?

OSPF一共定义了四种网络类型,这四种网络类型大部分针对链路(点对点需要手动更改),也是OSPF的特点之一,能适应更多不同类型的网络结构。并且不同的网络类型,邻居的生存时间和hello time也随之改变,且可以手动修改。充分证明了OSPF协议的人性化特点。

53、 OSPF在NBMA网络要配置些什么?

​ 1:NBMA网络中没有指邻居

​ 2:若是一个非全互联的NBMA环境,需要手工指DR

​ 3:考虑到非全互联的NBMA环境中分支节点的连通性,还需手工配置静态映射或修改接口网络类型为点到多点

54、 Ospf 产生环路的原因以及解决的办法?(OSPF防环措施?)

1:区域内使用SPF算法防环。

2:区域间使用3、4类LSA防环。

​ 1>:OSPF要求所有非骨干区域必须与骨干区域直接连接,区域间路由需要经过骨干区域中转。避免了区域间路由环路的发生。

​ 2>:ABR只能将其连接的区域中的内部路由注入到骨干区域,也可以将区域内部路由和区域间路由注入到非骨干区域。ABR从非骨干区域收到的3类LSA不能用于区域间路由的计算。

​ 3>:ABR不会将描述一个区域内部的路由信息的3类LSA再注入回该区域。

​ 注:4类LSA的防环机制与3类LSA的防环相同。

3:区域外防环

​ 5类LSA会被洪泛到整个OSPF域,表面上看不具有什么防环能力。实际上,可以依赖1、4类LSA来实现防环

55、 Ospf 中有哪几种特殊区域?

1:末梢区域stub

​ 拒绝4、5类LSA,生成一条3类的缺省路由指向骨干区域。

2:完全末梢区域

​ 在末梢区域的基础上,进一步拒绝3类LSA,仅保留一条3类LSA的缺省。

3:非完全末梢区域NSSA

​ 拒绝其他区域的ASBR产生的4、5类LSA,本区域内ASBR产生的5类LSA以7类在本区域内传播。从本区域进入骨干区域时由ABR(新的ABR)转换为5类。同时自动产生一条7类的缺省指向骨干区域。

4:完全NSSA

​ 在NSSA的基础上,进一步拒绝3类LSA,生成一条3类的缺省指向骨干区域。

注:ISP连接的区域不能设定为任何的特殊区域。

56、 Stub区域的作用?

减少stub区域中内部路由器上LSDB的大小及储存器的使用,提高路由器计算路由表的速度。

stub区域拒绝4、5类LSA,ABR上会产生一条缺省的3类LSA,区域内不能引入外部路由。

完全stub区域在stub区域基础上进一步拒绝3类LSA,ABR上产生3类的缺省LSA,区域内不能引入外部路由。

57、 为什么在OSPF中要划分区域?

使用单区域容易导致计算量过大,路由器负载能力有限。

划分区域后,各区域内的不稳定路由表不会影响其他区域的稳定性。

58、 OSPF初始化的时候,路由器之间是如何进行交互?(OSPF邻居形成过程?)

​ 1:互相发送Hello包,形成双向通信。

​ 2:根据接口网络类型选举DR/BDR

​ 3:发送类似Hello的DBD包来选主从。

​ 4:使用LSR、LSU、LSACK来进行LSA的同步。

​ 5:同步完成后进入full状态。

59、 OSPF是纯链路状态的协议吗?

不是,为单区域时是纯链路状态协议;为多区域时,区域间路由使用距离矢量算法

60、 OSPF中DR选举的意义?DR选举时的网络类型?DR和其它路由器的关系?

​ 意义:提高LSA同步的效率。

​ DR选举时的网络类型为:广播型和NBMA型

​ DR与其他路由器为邻接关系。

61、 OSPF虚链路在什么情况下用到?为什么要用到虚链路?

​ 远离骨干的非骨干、不连续骨干区域会用到虚链路。

​ 因为要求所有的非骨干区域必须连接骨干区域,当区域被分割后,分割的区域之间不能互相通信。所以要使用虚链路。

62、 OSPF虚链路的作用?为什么有骨干区域?

作用

​ 1:连接远离骨干的非骨干区域。

​ 2:缝合不连续的骨干区域。

​ 骨干区域的存在是为了防止划分多区域时区域间的路由产生环路。

63、 ISIS与OSPF的区别谈一谈吧,各个方面

相同点:

​ 1:都是链路状态型路由协议。

​ 2:都是用SPF算法,VSLM快速汇聚。

​ 3:收敛速度快。

​ 4:支持网络分层和路由分级。适用于大规模网络。

​ 5:都可以在运营商网络中成功运行。

区别:

​ 1:区域设计不同。OSPF使用一个骨干区域和非骨干区域,非骨干区域必须与骨干区域连接;ISIS由L1、L2、L12路由器组成层次结构,使用的LSP要少很多,在同一个区域的扩展性比OSPF好。

​ 2:OSPF有多种LSA,比较复杂且占用资源;ISIS的LSP少,所以CPU占用和处理路由更新更好。

​ 3:ISIS的定时器允许比OSPF更细的调节,可提高收敛速度。

​ 4:OSPF的数据格式不容易增加新的东西,加新的东西需要新的LSA;ISIS可以很容易通过增加TLV进行扩展,包括对IPV等的支持。

​ 5:ISIS更适合运营商级网络;OSPF更适合企业级网络。

64、 BGP是怎样实现跨自治系统交互路由信息?为什么需要BGP路由协议?

​ 通过EBGP、IBGP对等体,BGP边界网关协议用来连接Internet上独立系统的路由选择协议,是一个距离矢量型协议。使用分布式计算,用TCP来传递路由信息(179)保证可靠性,但丧失了邻居自动发现功能。

​ BGP用来处理AS之间的路由协议,重点处理AS之间的路由,AS内部的路由不做重点。

65、 IBGP为什么采用全互联?不采用全互联怎么部署?

全互联:解决了IBGP水平分割的问题。

有条件的打破水平分割:使用联邦或反射器。

66、 IBGP为什么不相互通告路由?

​ 1:IBGP水平分割

​ 2:基于邻居的水平分割

​ 3:带*的路由不是最优

67、 Bgp中团体的作用

​ community属性是一组具有相同策略特性的路由。

路由器通过对路由前缀设置特定的团体属性来让其他BGP邻居可以识别这些路由并应用特定的策略。

68、 如果BGP加上max path,会在哪个BGP选路属性之前应用这个选项?

​ 加在最后一个属性BGP Router-ID之前。

69、 谈谈BGP反射器的缺点

​ 反射器收到两个或两个以上的到达同一目标的路由时,需要判断出最优的路由,然后反射给客户端。这会导致这些设备丧失多条路径判断最优路径的能力

70、 BGP的属性在MPLS中的应用?选路控制?

利用扩展属性实现VPN的选路控制。

71、 QOS,整形和限速的区别以及使用场景

流量监管

​ 在企业网路中,存在语音、视频和数据等多种不同的业务,当大量的业务流量进入网络侧时,可能会因为带宽不足导致拥塞,需要对三种业务提供不同的带宽,优先保证语音业务报文的转发,其次是视频业务,最后是数据业务。因此可以对不同业务进行不同的流量监督,为语音报文提供最大带宽,视频报文次之,数据报文带宽最小,从而在网络产生拥塞时,可以保证语音报文优先通过。

流量整形

​ 企业网络中,受带宽限制,访问网络的流量会因为被限制而丢弃,为了防止流量被丢弃可以在上游设备的出方向进行流量整形,缓存超出限制的流量,不同企业分支可以配置不同速率的流量整形。

接口限速

​ 企业用户某交换机介入了两个不同的部门,要求每个部门的流量不能超过规定速率,因此可以在接入交换机的入接口上配置接口限速,将部门用户的流量均限制在规定范围内,超出的流量将被丢弃

72、 BGP路由协议和IGP路由协议的区别?

1:BGP是AS之间的路由协议,IGP是AS内部的路由协议。

2:BGP基于TCP协议,可以与非直连设备建邻。

3:BGP侧重于路由管理,不负责拓扑的发现。

4:BGP除了第一次外,其余只做增量更新,无定期更新。

5:BGP侧重于路由控制,IGP侧重于路由互通。

73、 BGP的选路原则

1:优选Preference_Value值最高的路由(私有属性,本地有效)

2:优选本地优先级最高的路由(IBGP邻居关系间传递)

3:优选手动聚合>自动聚合>network>import>从对等体学到的。

4:优选AS_Path短的路由。(只能在EBGP邻居间修改)

5:起源类型:IGP>EGP>Incomplete。(可在控制层面任意接口修改)

6:对于来自同一AS的路由,优选MED值最小的。(默认为0)

7:优选从EBGP学来的路由(EBGP>IBGP)

8:优选AS内部IGP的Metric最小的路由。

9:优选Cluster_list最短的路由。

10:优选Originator_ID最小的路由。

11:优选Router_ID最小的路由器发布的路由。

12:优选具有较小IP地址的邻居学来的路由。

74、 BGP的AS-PATH属性有什么作用?

防止环路:收到的BGP路由中若包含自己所在AS号则丢弃。

控制选路:AS-Path越短,该路径越优。

75、 BGP的local-performance属性有什么作用?如何使用?

控制选路

​ 不能在EBGP邻居间传递,可在IBGP邻居间传递,值越大越优(默认为100)。

​ 常用于当本AS区域有多个出口路由器时,选择Local-Preformance值大的路由器作为出口;或到达一个网段时有多个出口路径,选择Local-Preformance值大的路由器所在的路径。

77、 BGP的反射原则?

1:反射器可以反射 反射器之间、客户端与非客户端之间的路由,不能反射非客户端之间的路由。

2:只需要在反射器上定义客户端即可,未定义的为非客户端。

78、 BGP的反射如何防环?

通过Originator-id和Cluster-id来防环。

​ 1:Originator-id:用于防止路由在反射器和客户端/非客户端之间产生环路。Originator-id是由反射器产生的,携带了本地AS内部路由发起者的route-id,当第一条 路由第一次被反射器反射时,会把Originator-id属性加入到路由中,标识这条路由的始发路由器。如果一条路由中已经存在了Originator-id属性,反射器不会创建新的Originator-id。当其他BGP Speaker收到这条路由时,将比较收到的Originator-id和本地的router-id,如果两个ID相同,BGP Speaker会忽略掉这条路由,不做处理。

​ 2:Cluster-id:由反射器产生,当反射器在他的客户端和非客户端之间反射路由时,反射器会把本地Cluster-id添加到Cluster-id前面。当反射器收到一条更新路由时,会检查Cluster-id。若已经有本地的Cluster-id,则丢弃;否则将本地Cluster-id加入该更新路由Cluster-list中,然后发送该更新路由。

79、 谈谈 BGP 反射器的缺点

反射器收到两个及以上到达同一目标的路径时,需要判断出最优的路由,然后反射给客户端,这会导致这些设备丧失多条路径判断最优路径的权利。

80、 MPLS L3 VPN,如果我想让两个不同的 VPN 作单向互访,怎么做?

若是两个VPN之间的互通,将两个VPN的路由信息输出到相同的一个RT并导入,即可实现。

若要单独访问,可建立一个公共VPN,导出两个VPN的RT值,两个VPN即可对公共VPN实现访问。

81、 跨域的 MPLS L3 VPN 可以谈谈思路吗?

RFC2547bis和最新的RFC4364都对其有定义,主要有三种:Option A B C:

​ Option A:back to back VRF互连。两个AS间通过VRF间的背对背的连接,路由可以选择静态或动态路由,这种方法简单实用,适合于不同运营商之间的连接。

​ Option B:MeBGP VPNV4连接。两个AS间通过ASBR间建立MeBGP VPNV4,VPN路由通过MBGP承载,具有较好的扩展性。

​ Option C:反射器间多跳MeBGP。两个AS各自的反射器上建立MeBGP,具有较好的扩展性、灵活性。但比较复杂,要解决下一跳有标签的问题。

82、 MPLS L3 VPN 的一个用户,他有上 internet 的需求,如何实现?有几种实现方法?特点各是什么?

​ 1:通过VPN访问Internet。传统做法是:设置一个集中的防火墙通过NAT实现Internet访问,简单易实现,但不能对Internet流量和VPN流量进行区分,存在安全问题。或在PE路由器上配置PACK Leaking实现。

​ 2:独立的Internet访问。向每个VPN站点提供独立的Internet连接线路,由CE路由器实现NAT到Internet。要求PE路由器向CE提供独立的线路或虚链路,PE路由器要有访问Internet的能力。优点是能将VPN流量和Internet流量分开。

​ 3:通过单独的VPN实现Internet访问。建立一个单独的VPN,将Internet缺省路由和部分路由注入,在需要Internet访问的站点相连的PE路由器上实现VPN互通,从而访问Internet。比较复杂,但支持各种Internet的访问要求。一般建议采用该种方式。

83、 PPP 的协议过程?

1:检测到载波,进入链路建立阶段。

2:进行LCP协商。

3:进行认证。

4:进行NCP(IPCP)协商。

84、 CHAP 认证过程?

1:主认证方发起挑战,携带主认证方的用户名和随机数。

2:被认证方根据用户名查用户数据库,找到对应密码和随机数进行Hash,发送用户名和Hash值。

3:主认证方根据用户名查用户数据库,找到对应的密码和随机数进行Hash,然后对比两个Hash值。若一致,则认证通过;若不一致,则认证失败。

85、 对称性加密算法和非对称型加密算法的不同?

​ 对称加密算法需要双方共同维护一组相同的**,并使用该**加密对方的数据,加密速度快,但需要双方协商,容易被人窃取。

​ 非对称加密算法使用公钥和私钥,双方维护对方的公钥(一对),并各自维护自己的**,在加密过程中,通常使用对端公钥进行加密,对端接受后使用其私钥进行解密,加密性更好且不容易被窃取,但加密速度慢。

86、 什么是 IKE?作用是什么?

​ IKE(因特网**交换)。

作用:为IPSec协商生成**,供AH/ESP加解密和验证使用。

IKE在进行IPSec处理过程中对身份进行鉴别,同时进行安全策略的协商和处理会话**的交换工作。

87、 安全关联的作用?

​ 所谓SA是指通信对等体双方之间为了给需要受保护的数据流提供安全服务而对某些要素的一种协定。

​ 是两个IPSec通信实体之间经协商建立起来的一种共同协定,规定了通信双方使用哪种IPSec协议保护数据安全、应用的算法标识、加密、验证的**取值以及**的生存周期等等安全属性值。

88、 ESP 和 AH 的区别?

安全特性 AH ESP
协议号 51 50
数据完整性校验 支持 支持(不验证IP头)
数据源验证 支持 支持
数据加解密 不支持 支持
抗重放服务 支持 支持
NAT-T(NAT穿越) 不支持 支持

89、 IPSEC VPN 的阶段一与阶段二的作用?

第一阶段

​ 通信双方彼此间建立一个已通过身份验证和安全保护的通道,该阶段的交换建立了一个ISAKMP安全联盟。主要有两种协商模式:主模式、野蛮模式。

​ 1:协商建立IKE安全通道所使用的参数

​ 2:交换DH**数据

​ 3:双方身份认证

​ 4:建立IKE安全通道

第二阶段

用已经建立的安全联盟为IPSec协商安全服务,即为IPSec协商具体的安全联盟,建立IPSec SA,产生真正可以用来加密数据流的**,IPSec SA用于最终的IP数据安全传输。

​ 1:协商IPSec安全参数

​ 2:建立IPSec SA

90、 IPSEC 第一阶段主模式和野蛮模式有什么不同?

主模式 野蛮模式
消息交互 交互6个消息 交互3个消息
身份ID 以IP地址作为身份ID,自动生成本端和对端身份ID 可以多种形式(IP、字符串等)手动或自动地生成本端和对端的身份ID
预共享** 只能基于IP地址来确定预共享** 基于ID信息(主机名和IP地址)来确定预共享**
安全性 较高(前4个交互消息以明文传输,最后两个消息加密,让对端身份得到了保护) 较低(前两个消息以明文传输,最后一个消息进行加密,不保护对端身份)
速度 较慢 较快

91、 什么是 SSL/TLS?

什么是SSL/TLS

SSL(Secure Socket Layer 安全套接字层):位于可靠的面向连接的网络层协议和应用层协议之间的一种协议层。SSL通过互相认证、使用数字签名确保完整性、使用加密确保私密性,以实现客户端和服务器端之间的安全通讯。

​ SSL协议可分为两层:

SSL记录协议:建立在可靠的传输协议(如TCP)之上,为高层协议提供数据封装、压缩、加密等基本功能的支持。

SSL握手协议:建立在SSL记录协议之上,用于在实际的数据传输开始之前,通讯双方进行身份认证、协商加密算法、交换**等。

TLS(Transport Layer Security 安全传输层协议):用于在两个通信应用程序之间提供保密性和数据完整性。

​ TLS协议可分为两层:

TLS记录协议:用于封装各种高层协议。

TLS握手协议:允许服务器和客户端在应用程序协议传输和接收其第一个数据字节前彼此之间相互认证、协商加密算法、交换**等。

SSL和TLS的关系

​ SSL是NetScape开发的专门用于保护WEB通讯的,最新版的TLS是IETF制定的一种新的协议。TLS1.0建立在SSL3.0协议规范之上,是SSL3.0的后续版本,两者差别极小。

SSL/TLS的功能

​ 1:在互联网上传输加密过的数据以达到防窃取的目的。

​ 2:保持从端到端传输过程中数据的完整性。

​ 3:通过SSL证书中的公钥加密,通过私钥来解密。

有效/无效SSL(TLS)证书

有效证书:经过具有公信力的证书签署单位(CA)信任签署过的,且在有效期内。有效期一般为2年,过期需要重新申请续费。

无效证书:缺乏CA的身份核对或服务器的域名和证书的CN不符合,会产生证书连接出错的问题。邮件服务器若使用无效证书,用户端和邮件服务器连线会出现令使用者不胜其扰的警告信息。

92、 什么是数字证书?

数字证书:互联网通讯中标志通讯双方身份信息的一串数字,提供了一种在Internet上验证通信实体身份的一种方式,类似于驾驶执照或身份证。由权威机构—CA,又称证书授权中心发行。人们可以在网上用它来识别对方的身份。

​ 数字证书是一个经证书授权中心数字签名的包含公钥拥有者信息、公钥的文件。最简单的证书包含一个公钥、名称以及CA的数字签名

原理:数字证书中有很多数字和字母,当使用数字证书进行身份认证时,它将随机生成128位的身份码,每份数字证书都能生成相应但每次都不同的数码,从而保证数据传输的保密性。

93、 CA 是什么?

​ CA机构,又称为证书授权中心,作为电子商务交易中受信任的第三方,承当公钥体系中公钥的合法性检验的责任。

​ CA中心为每个使用公钥的用户发放一个数字证书,该证书的作用是证明证书中列出的用户合法拥有证书中列出的公钥。

​ CA机构的数字签名使得攻击者不能伪造和篡改证书。

​ 他负责产生、分配并管理度所有参与网上交易的个体所需的数字证书,因此事安全电子交易的核心环节。

94、 什么是 PKI?

PKI(公钥基础设施):是由公钥密码技术、数字证书、证书认证中心和关于公钥的安全策略等基本成分共同组成,管理**和证书的系统或平台。

​ PKI的目的是为了管理**和证书,一个机构通过采用PKI框架管理**和证书可以建立一个安全的网络环境。

​ 一个典型、完整、有效的PKI应用系统至少应该具有以下五部分:

​ 1:认证中心CA—CA是PKI的核心,负责管理PKI结构下的所有用户(包括各种应用程序)的证书,把用户的公钥和用户的其他信息捆绑在一起,在网上验证用户的身份,CA还要负责用户证书的黑名单登记和黑名单发布。

​ 2:X.500目录服务器—用于发布用户的证书和黑名单信息,用户可通过标准的LDAP协议查询自己或其他人的证书和下载黑名单信息。

​ 3:具有高强度密码算法(SSL)的安全WWW服务器—SSL协议最初由Netscape企业发展,已成为网络用来鉴别网站和网页浏览者身份,以及在浏览器使用者、网页服务器之间进行加密通讯的全球化标准。

​ 4:WEB—WEB有客户端和服务端两部分,分别安装在客户端和服务器端,通过具有高强度密码算法的SSL协议保证客户端和服务器端数据的机密性、完整性、身份验证。

​ 5:自开发安全应用系统—是指各行业自开发的各种具体应用系统,例如,银行、证券的应用系统等。

95、 什么是 DDOS 攻击?和 DOS 攻击有什么区别?

DOS攻击

​ 1:利用自己的计算机攻击目标,也是一对一的关系。

​ 2:是一种拒绝服务式攻击。

DDOS攻击

​ 1:在DOS攻击基础上产生的一种新的攻击方式,利用控制成百上千台肉鸡,组成一个DDOS攻击群,同一时刻对目标发起攻击。

​ 2:是分布式拒绝服务攻击。

防御

​ 1:限制同时打开SYN半连接的数目。

​ 2:缩短SYN半连接的time out时间。

​ 3:关闭不必要的服务。

96、 什么是防火墙?工作原理是什么?

防火墙

​ 是指一个由软件和硬件设备组合而成、在内网和外网之间、专用网和公共网之间的界面上构造的保护屏障,是一种获取安全性方法的形象说法。是一种计算机硬件和软件的结合,在Internet和Intranet之间建立起一个安全网关(Security Gateway),从而保护内网免受非法用户的入侵。

​ 防火墙主要由服务访问规则、验证工具、包过滤和应用网关4部分组成,计算机流入和流出的所有网络通信和数据包均要经过该防火墙。

工作原理

​ 本质是查看会话表。

​ 1:当报文到达防火墙时,优先查看是否有会话表匹配。

​ 2:若有会话表匹配成功,则匹配会话表进行转发。

​ 3:若没有会话表匹配成功,则看能够创建会话表(首包才能创建会话表)

​ 4:然后匹配路由表。

​ 5:最后匹配安全策略进行转发。

主要功能

​ 1:访问控制

​ 2:地址转换

​ 3:网络环境支持

​ 4:带宽管理功能

​ 5:入侵检测和攻击防御

​ 6:用户认证

​ 7:高可用性

97、 谈谈会话表如何建立以及作用?

作用

​ 报文到达防火墙时,先查看是否有会话表匹配。

​ 1:若有会话表匹配,则匹配会话表转发。

​ 2:若没有会话表匹配,则看能够创建会话表。

注:首包才能创建会话表。

98、 防火墙如何处理 FTP 协议的防御问题?

网络防火墙与FTP

​ 大多数网管设置防火墙的默认访问控制策略是:允许从内部到外部的一切流量,禁止从外部到内部的一切流量。

​ 就FTP应用而言,为了简化防火墙策略的配置且兼顾安全策略要求,客户端选择被动模式进行数据连接较好,不需要对其前端的防火墙设置特别的访问控制策略。但要求服务端前端的防火墙能动态打开数据连接所需要的随机端口;服务端选择主动连接较好,为允许客户端的访问,前端防火墙的访问控制策略仅需显式对外开放21端口即可,但需要客户端前端的防火墙能动态打开数据连接所需要的端口。

​ 从方便使用的角度考虑,要提供FTP服务,就要配置好服务端前端的防火墙,让其访问控制策略能支持两种模式下FTP服务正常工作。

​ 若客户端前端的NAT设备为路由器,非防火墙,则不能审查和跟踪FTP应用,从前面的分析可以推断出,主动模式下肯定存在连接性问题,需要被动方式建立数据连接才能使用FTP服务。

​ 若FTP控制端口非模式,而是定制的TCP端口(如2121),这种情况下,服务端前端的防火墙通过配置命令显式指示FTP的控制端口,便可进行审查和跟踪。但客户端前端的防火墙即使能识别默认端口下的FTP应用,此时也会把控制端口非21的FTP服务当做一般的TCP应用对待。这种情况下不能改写主动模式下的客户端地址端口信息,导致服务器在建立数据连接时失败,但客户端使用被动模式可以正常工作。

​ 综上,客户端使用被动方式连接FTP服务器最合适,能最大限度的降低连接性问题,同时降低了对客户端前端防火墙设备的要求。不需要像主动模式则要动态开放允许输入的随机端口,把可能的安全威胁推给了服务端。

主机防火墙与FTP

​ 若将FTP服务器部署在Windows Server 2008上,由于内置Windows防火墙,且默认启用,则客户端建立到该FTP服务器的控制连接便会被*,需要在防火墙上开放对TCP 21端口的传入连接。

​ 被动模式下,由于服务器通过控制信道将用来监听客户端请求的端口号是随机产生的,需要在防火墙上开放的传入连接的端口也是随机的。由于Windows防火墙不能动态打开和关闭FTP服务要求的随机端口,所以需要静态开放全部可能的随机端口。

​ Windows Server 2008默认的动态端口范围是49152-65535,Windows防火墙的例外开放规则只能针对单一端口开放,不能同时开放49152-65535等一万多端口,且会造成安全威胁。

基于IIS7.0建立的FTP服务器运行将端口号固定在自行指定的一个范围中,如50000-50005,此时只需开放一小段范围的端口即可,大大提升了安全性和配置Windows防火墙的效率。若服务器部署的是第三方防火墙,则需慎重考虑如何设置让其能安全保障FTP服务的运行。

99、 描述一下手机上网的过程?

手机开机、扫频

​ 手机开机以后,立刻开始扫描网络,寻找可用的频点。

手机锁频(FCCH)

​ 手机找到可用的频点后,通过FCCH信道上的“频率校正信号”,锁定该频点频率。

手机同步(SCH)

​ 手机锁定该频点后,通过SCH信道上的“同步信号”与该频点的0时隙同步。

手机接收系统消息(BCCH)

​ 手机与该频点的0时隙同步后,即可从该时隙获取该频点所在小区的系统消息。系统消息的内容很多,在这一步,手机主要通过系统消息确定该频点是否为该手机所在网络(移动、联通)的频点。若是,手机开始接入过程;若不是,手机放弃该频点,继续扫频,寻找其他频点。

手机(MS)向基站(BTS)发送“接入请求”消息(RACH)

​ 手机向基站发出“接入请求”,要求基站给他分配一个SDCCH信道。

基站(BTS)向手机(MS)发送“接入允许”消息(AGCH)

​ 若基站有信令信道资源,就会向手机发送“接入允许”消息,并在该消息中告知手机所需的SDCCH信道号。

手机(MS)向基站(BTS)发送“位置更新请求”消息(SDCCH)

​ 在“位置更新请求”消息中,手机会将其IMSI号码上报给BTS,由BTS上报给BSC->MSC->HLR,以检验手机用户的合法性。

基站(BTS)向手机(MS)发送“位置更新接受”消息(SDCCH)

​ 若通过检测,发现用户的IMSI是合法的,基站会向手机发送“位置更新接受”消息;若用户的IMSI是非法的,基站会向手机发送“位置更新拒绝”消息,并说明拒绝的原因。

手机显示网标,上网成功

​ 某些型号的手机,在“位置更新接受”消息下发之前,就把网标显示出来了,这时手机实际并未上网,即所谓的“假上网”。

其他网道的作用:

​ PCH(寻呼信道):用于手机做被叫,寻呼该手机的信息,通过该信道发送。

​ ACCH(随路控制信道,包括SACCH和FACCH):用于手机在通话期间传送必要的信令消息。如,切换。随路,是在“话路”中传送信令消息,区别于只用于传送信令的SDCCH信道。

100、 什么是 1G/2G/3G/4G/5G 谈谈你的认识

1G

​ 第一代移动通讯技术,以模拟技术为基础的蜂窝无线电话系统,如现在已经淘汰的模拟移动网。

2G

​ 第二代移动通讯技术,以数字语音传输技术为核心。一般定义为无法直接传送,如电子邮件、软件等信息。只具有通话和一些时间日期等传送的手机通信技术规格。不过手机短信在它的某些规格中能够被执行。在美国通常称为“个人通讯服务(PCS)”。目前仍在使用。

3G

​ 第三代移动通讯技术,指支持高速数据传输的蜂窝移动通讯技术。3G服务能同时传送声音和数据信息,速率一般在几百kbps以上。3G是指将无线通信与国际互联网等多媒体通信结合的新一代移动通信系统。3G存在3种标准:CDMA2000、WCDMA、TD-SCDMA。3G下行速度峰值理论可达3.6Mbit/s,上行速度峰值可达384kbit/s。3G主要特征是可提供移动宽带多媒体业务。

4G

​ 第四代移动通讯技术。该技术包括TD-LTE和FDD-LTE两种制式(严格来讲,LTE只是3.9G。尽管被宣传为4G无线标准,但并未被3GPP认可为国际电信联盟所描述的下一代无线通讯标准IMT-Advanced,因此严格意义上其并未达到4G标准。只有升级版的LTE Advanced才满足国际电信联盟对4G的要求)。

​ 4G是集3G与WLAN于一体,并能快速、高质量地传输数据、音频、视频和图像等。4G能够以100Mbps以上的速度下载,比家用宽带ADSL(4兆)快25倍,并能满足几乎所有用户对无线服务的要求。同时4G可以在DSL和有线电视调制解调器没有覆盖的地方部署,然后再扩展到整个地区。

5G

​ 第五代移动通讯技术。5G网络的理论下行速度为10Gb/s(相当于下载速度1.25GB/s),可支持的用户连接数增长到100万用户/平方公里,更好地满足物联网这样的海量接入场景。同时端到端延时将从4G的十几毫秒减少到5G的几毫秒。由于强大的通讯和带宽能力,5G一旦应用,车联网、物联网、智慧城市、无人机网络等概念将成为现实,能够极大地促进工业、医疗、安全等领域的生产效率,创新出新的生产方式。

​ 5G网络同样能够让普通用户获益匪浅,除了多样化、不卡顿等各类多媒体娱乐外,智能家庭设备也会接入5G网络,为用户提供更便捷的服务。