Linux运维常见网络部分面试题库合集
一、三次握手四次挥手
1.1 为什么连接的时候是三次握手,关闭的时候却是四次握手?
1.2 为什么TIME_WAIT状态需要经过2MSL(最大报文段生存时间)才能返回到CLOSE状态?
1.3 为什么建立连接是三次握手,关闭连接确是四次挥手呢?
1.4 为什么不能用两次握手进行连接?
1.5 如果已经建立了连接,但是客户端突然出现故障了怎么办?
1.6 为什么要三次握手?
1.7 为什么要四次挥手?
2,seq=u,u-1是A向B发送的最后一个字节的序号.
第二次挥手:
B收到连接释放请求后,会通知相应的应用程序,告诉它A向B这个方向的连接已经释放.此时B进入CLOSE-WAIT状态,并向A发送连接释放的应答,其报文头包含:ACK=1,seq=v,ack=u+1.
ACK=1:除TCP连接请求报文段以外,TCP通信过程中所有数据报的ACK都为1,表示应答.
1,seq=v,v-1是B向A发送的最后一个字节的序号.
2,ack=u+1表示希望收到从第u+1个字节开始的报文段,并且已经成功接收了前u个字节.A收到该应答,进入FIN-WAIT-2状态,等待B发送连接释放请求.
第二次挥手完成后,A到B方向的连接已经释放,B不会再接收数据,A也不会再发送数据。但B到A方向的连接仍然存在,B可以继续向A发送数据。
第三次挥手:
当B向A发完所有数据后,向A发送连接释放请求,请求头中包含:
FIN=1,ACK=1,seq=w,ack=u+1.随后B进入LAST-ACK状态.
第四次挥手:
A收到释放请求后,向B发送确认应答,此时A进入TIME-WAIT状态.该状态会持续2MSL时间,若该时间段内没有B的重发请求的话,就进入CLOSED状态,撤销TCB.当B收到确认应答后,也便进入CLOSED状态,撤销TCB。
1.8 为什么TCP客户端最后还要发送一次确认呢?
1.9 简述TCP三次握手的过程?
1,client为数据发送方
2,server为数据接收方
好,下面进行三次握手的总结:
1,client想要向server发送数据,请求连接。这时client想服务器发送一个数据包,其中同步位(SYN)被置为1,表明client申请TCP连接,序号为j。
2,当server接收到了来自client的数据包时,解析发现同步位为1,便知道client是想要简历TCP连接,于是将当前client的IP、端口之类的加入未连接队列中,并向client回复接受连接请求,想client发送数据包,其中同步位为1,并附带确认位ACK=j+1,表明server已经准备好分配资源了,并向client发起连接请求,请求client为建立TCP连接而分配资源。
3,client向server回复一个ACK,并分配资源建立连接。server收到这个确认时也分配资源进行连接的建立。
怎么防范这种攻击?
接下来进行一一解答。
1.9.1 为什么需要第三次握手?
1.9.2 第三次握手失败了怎么办?
1.9.3 三次握手有什么缺陷可以被黑客利用,用来对服务器进行攻击?
1.9.4 怎么防范这种攻击?
二、路由
1. 静态 路由设定后,若 网络 拓扑结构发生变化,需由系统 管理员 修改路由的 设置 。
2.网络管理的重要任务是: 控制 和 监控 。
3.在安装Linux系统中,使用 netconfig 程序对网络进行配置,该安装程序会一步步提示用户输入 主机名 、 域名 、 域名服务器 、 IP地址 、 网关地址 和 子网掩码 等必要信息。
4. RIP 协议是最为普遍的一种内部协议,一般称为动态路由信息协议。
5. DHCP 可以实现动态IP地址分配。
6.网络管理通常由 监测 、 传输 和 管理 三部分组成,其中 管理部分 是整个网络管理的中心。
7. Ping 命令可以测试网络中本机系统是否能到达一台远程主机,所以常常用于 测试网络的连通性 。
8.进行远程登录的命令是 telnet 。
9.DHCP是动态主机配置协议的简称,其作用是: 为网络中的主机分配IP 地址。
10.路由选择协议(RIP)的跳数表示到达目的地之前必须通过的网关数,RIP接受的最长距离是 15 跳。
11.ping命令用于测试网络的连通性,ping命令通过 ICMP 协议(internet控制信息协议)来实现。
12.下面的网络协议中,面向连接的的协议是: A 。
A 传输控制协议
B 用户数据报协议
C 网际协议
D 网际控制报文协议
13.一台主机要实现通过局域网与另一个局域网通信,需要做的工作是 C 。
A 配置域名服务器
B 定义一条本机指向所在网络的路由
C 定义一条本机指向所在网络网关的路由
D 定义一条本机指向目标网络网关的路由
14.局域网的网络地址192.168.1.0/24,局域网络连接其它网络的网关地址是192.168.1.1。主机192.168.1.20访问172.16.1.0/24网络时,其路由设置正确的是 B 。
A route add –net 192.168.1.0 gw 192.168.1.1 netmask 255.255.255.0metric1
B route add –net 172.16.1.0 gw 192.168.1.1 netmask 255.255.255.255metric1
C route add –net 172.16.1.0 gw 172.16.1.1 netmask 255.255.255.0metric 1
D route add default 192.168.1.0 netmask 172.168.1.1 metric 1
15.下列提法中,不属于ifconfig命令作用范围的是 D 。
A 配置本地回环地址
B 配置网卡的IP地址
C 激活网络适配器
D 加载网卡到内核中
16.在局域网络内的某台主机用ping 命令测试网络连接时发现网络内部的主机都可以连同,而不能与公网连通,问题可能是 C 。
A 主机IP设置有误
B 没有设置连接局域网的网关
C 局域网的网关或主机的网关设置有误
D 局域网DNS服务器设置有误
17.下列文件中,包含了主机名到IP 地址的映射关系的文件是: B 。
A /etc/HOSTNAME
B /etc/hosts
C /etc/resolv.conf
D /etc/networks
18.在TCP/IP 模型中,应用层包含了所有的高层协议,在下列的一些应用协议中, B 是能够实现本地与远程主机之间的文件传输工作。
A telnet
B FTP
C SNMP
D NFS
19.当我们与某远程网络连接不上时,就需要跟踪路由查看,以便了解在网络的什么位置出现了问题,满足该目的的命令是 C 。
A ping
B ifconfig
C traceroute
D netstat
20.DNS域名系统主要负责主机名和 A 之间的解析。
A IP地址
B MAC地址
C 网络地址
D 主机别名
21.WWW服务器是在Internet上使用最为广泛,它采用的是 B 结构。
A 服务器/工作站
B B/S
C 集中式
D 分布式
22.网络管理具备以下几大功能:配置管理、 A 、性能管理、安全管理和计费管理等。
A 故障管理
B 日常备份管理
C 升级管理
D 发送邮件
23.关于代理服务器的论述,正确的是 A 。
A 使用internet 上已有的公开代理服务器,只需配置客户端。
B 代理服务器只能代理客户端http 的请求。
C 设置好的代理服务器可以被网络上任何主机使用。
D 使用代理服务器的客户端没有自己的ip 地址。
24.实现从IP地址到以太网MAC地址转换的命令为: C 。
A ping
B ifconfig
C arp
D traceroute
25.在DNS系统测试时,设named进程号是53,命令 D 通知进程重读配置文件。
A kill –USR2 53
B kill –USR1 53
C kill -INT 63
D kill –HUP 53
26.在DNS配置文件中,用于表示某主机别名的是: B 。
A NS
B CNAME
C NAME
D CN
27.为保证在启动服务器时自动启动DHCP 进程,应对 B 文件进行编辑。
A /etc/rc.d/rc.inet2
B /etc/rc.d/rc.inet1
C /etc/dhcpd.conf
D /etc/rc.d/rc.S
28.写一条192.168.10.0网段从网关192.168.9.1出去的路由
29.给主机host:172.16.0.2增加gateway10.0.0.1
30.网站出现500,502,400,403,404都是什么意思,怎么排查和解决
403:服务器拒绝请求。检查服务器配置,是不是对客户端做了限制。
404:未找到请求的资源。检查服务器上是否存在请求的资源,看是否是配置问题。
31.TCP有哪些了解,TCP连接状态中“TIME_WAIT”是什么意思,影响什么?
答:关于tcp有点复杂,直接上图吧,更直观
状态描述:
CLOSED:这个没什么好说的了,表示初始状态。
LISTEN:这个也是非常容易理解的一个状态,表示服务器端的某个SOCKET处于监听状态,可以接受连接了。
SYN_RCVD:这个状态表示接受到了SYN报文,在正常情况下,这个状态是服务器端的SOCKET在建立TCP连接时的三次握手会话过程中的一个中间状态,很短暂,基本上用netstat你是很难看到这种状态的,除非你特意写了一个客户端测试程序,故意将三次TCP握手过程中最后一个ACK报文不予发送。因此这种状态时,当收到客户端的ACK报文后,它会进入到ESTABLISHED状态。
SYN_SENT:这个状态与SYN_RCVD遥想呼应,当客户端SOCKET执行CONNECT连接时,它首先发送SYN报文,因此也随即它会进入到了SYN_SENT状态,并等待服务端的发送三次握手中的第2个报文。SYN_SENT状态表示客户端已发送SYN报文。
ESTABLISHED:这个容易理解了,表示连接已经建立了。
FIN_WAIT_1:这个状态要好好解释一下,其实FIN_WAIT_1和FIN_WAIT_2状态的真正含义都是表示等待对方的FIN报文。而这两种状态的区别是:FIN_WAIT_1状态实际上是当SOCKET在ESTABLISHED状态时,它想主动关闭连接,向对方发送了FIN报文,此时该SOCKET即进入到FIN_WAIT_1状态。而当对方回应ACK报文后,则进入到FIN_WAIT_2状态,当然在实际的正常情况下,无论对方何种情况下,都应该马上回应ACK报文,所以FIN_WAIT_1状态一般是比较难见到的,而FIN_WAIT_2状态还有时常常可以用netstat看到。
FIN_WAIT_2:上面已经详细解释了这种状态,实际上FIN_WAIT_2状态下的SOCKET,表示半连接,也即有一方要求close连接,但另外还告诉对方,我暂时还有点数据需要传送给你,稍后再关闭连接。
TIME_WAIT:表示收到了对方的FIN报文,并发送出了ACK报文,就等2MSL后即可回到CLOSED可用状态了。如果FIN_WAIT_1状态下,收到了对方同时带FIN标志和ACK标志的报文时,可以直接进入到TIME_WAIT状态,而无须经过FIN_WAIT_2状态。
CLOSING:这种状态比较特殊,实际情况中应该是很少见,属于一种比较罕见的例外状态。正常情况下,当你发送FIN报文后,按理来说是应该先收到(或同时收到)对方的ACK报文,再收到对方的FIN报文。但是CLOSING状态表示你发送FIN报文后,并没有收到对方的ACK报文,反而却也收到了对方的FIN报文。什么情况下会出现此种情况呢?其实细想一下,也不难得出结论:那就是如果双方几乎在同时close一个SOCKET的话,那么就出现了双方同时发送FIN报文的情况,也即会出现CLOSING状态,表示双方都正在关闭SOCKET连接。
CLOSE_WAIT:这种状态的含义其实是表示在等待关闭。怎么理解呢?当对方close一个SOCKET后发送FIN报文给自己,你系统毫无疑问地会回应一个ACK报文给对方,此时则进入到CLOSE_WAIT状态。接下来呢,实际上你真正需要考虑的事情是察看你是否还有数据发送给对方,如果没有的话,那么你也就可以close这个SOCKET,发送FIN报文给对方,也即关闭连接。所以你在CLOSE_WAIT状态下,需要完成的事情是等待你去关闭连接。
LAST_ACK:这个状态还是比较容易好理解的,它是被动关闭一方在发送FIN报文后,最后等待对方的ACK报文。当收到ACK报文后,也即可以进入到CLOSED可用状态了。
32.简述DNS进行域名解析的过程。
(3)若没有查到,则将请求发给根域DNS 服务器,并依序从根域查找顶级域,由顶级查找二级域,二级域查找三级,直至找到要解析的地址或名字,即向客户机所在网络的DNS服务器发出应答信息,DNS服务器收到应答后现在缓存中存储,然后,将解析结果发给客户机。
(4)若没有找到,则返回错误信息。
33.什么是静态路由,其特点是什么?什么是动态路由,其特点是什么?
34.linux下常用的DNS服务软件是什么,举出几种常用的DNS记录,如果域名abc.com配置好了一台邮件服务器,IP地址为202.106.0.20,我该如何做相关的解析?是否了解bind的智能解析,如果了解请简述一下其原理。
CNAME记录别名域记录
3)修改abc.com 域名的配置文件,增加以下记录
INMX 10 mail.abc.com.
mailIN A 202.106.0.20
4)bind根据请求解析客户端的IP地址,做出不同的解析,其原理是在配置文件中,设定了view,在每个view都有客户端的IP地址段,bind服务器根据请求解析客户端的IP地址,匹配不同的view,再根据该view的配置,到相应的配置文件进行查询,将结果返回给请求的客户端。
35.AB网络是通的,最少列出五种传输文件的服务
36.我们都知道,dns既采用了tcp协议,又采用了udp协议,什么时候采用tcp协议?什么时候采用udp协议?为什么要这么设计?
三、七层模型
3.1 说说TCP/IP的七层模型
数据的表示、安全、压缩。(在五层模型里面已经合并到了应用层)
格式有,JPEG、ASCll、DECOIC、加密格式等
会话层(Session Layer):
建立、管理、终止会话。(在五层模型里面已经合并到了应用层)
对应主机进程,指本地主机与远程主机正在进行的会话
传输层 (Transport):
定义传输数据的协议端口号,以及流控和差错校验。
协议有:TCP UDP,数据包一旦离开网卡即进入网络传输层
网络层 (Network):
进行逻辑地址寻址,实现不同网络之间的路径选择。
协议有:ICMP IGMP IP(IPV4 IPV6) ARP RARP
数据链路层 (Link):
建立逻辑连接、进行硬件地址寻址、差错校验等功能。(由底层网络定义协议)
将比特组合成字节进而组合成帧,用MAC地址访问介质,错误发现但不能纠正。
物理层(Physical Layer):
是计算机网络OSI模型中最低的一层。
物理层规定:为传输数据所需要的物理链路创建、维持、拆除而提供具有机械的,电子的,功能的和规范的特性。
评论