1. 总结raid 0, 1, 5, 10, 01的工作原理。总结各自的利用率,冗余性,性能,至少几个硬盘实现。
答:raid0 - 以chunk为单位,并行处理数据。读写数据性能最快。但既没有冗余功能,也不具备容错能力,一块磁盘损坏,将丢失所有数据。利用率100%;至少1+块实现
raid1 - 镜像理论,两组以上N个磁盘存储处理同样数据,利用率50%,有冗余能力,有容错能力,都存储同样数据,存在一块磁盘即能保存数据。读写性能略微减少。最少2+块磁盘实现
raid5 - 采用如raid0 的并行处理数据的同时,每个磁盘都存有另外磁盘数据的奇偶校验位。读写性能提升,具有容错能力,最多可丢失一块磁盘数据,通过计算复原。利用率n-1/n;至少3+块磁盘实现。
raid10 - 每组先做raid1 后根据raid0 整合。读写性能提升,企业多使用这种方式存储数据。容错能力为每组raid1磁盘至少要有一块完好才能保证数据的储存。利用率50%,至少4块硬盘实现,容错率为1/3
raid01 -每组先做raid0 后根据raid1 整合,读写性能提升。利用率50%,至少4块硬盘实现,容错能力为2/3,
2. 完成对LVM磁盘扩容及缩容示例。
答:
3. 总结程序包管理器有哪些,以及包中包含什么内容的文件,尝试这些文件如何获取命令获取? yum/dnf/apt总结程序包获取途径,以及rpm, yum, apt命令选项示例。
答:rpm、yum|dnf、apt(属于ubuntu)
软件包中包含:二进制文件、库文件、配置文件、帮助文件
常用rpm -ql 、rpm -ivh、rpm --help,安装,但要精确知道依赖包信息
YUM|dnf|apt:可自动查询并安装软件程序所需要的依赖包
yum|dnf -y install nginx
yum provides 查询yumrepo 源
yum search 查询依赖包
apt -y install nginx
apt update 更新源库
dpkg -l 查询
4. 简要总结yum/dnf工作原理。并搭建私有yum仓库(base, epel源)给另一个虚拟机使用。
答:yum 和dnf基于C/S模式
yum服务器存放rpm包和相关包的元数据库
yum客户端访问yum服务器进行安装或查询等
搭建私有yum库:需要将虚拟机以apache或nginx搭建上网站供其它设备访问
5. 总结系统安装之后的常用初始化步骤。rocky/ubuntu
答:关闭防火墙、安装vim、lsof等常用软件、修改网卡配置信息、定制库源文件
6. 解读一键安装httpd脚本,并自行实现一个一键安装脚本,要求
1)基于位置变量传递版本号
2)基于独立函数进行初始化步骤,禁用防火墙,安装开发依赖包。
3)基于独立函数进行下载包,解压包。
4)基于独立函数进行编译,安装包。
5)基于独立函数完成链接包。
6)启动服务,并输出自定义的语句,安装xxx服务
7. 总结开放系统互联OSI模型,每层作用及对应的协议。
答:物、数、网、传、会、表、应
应用层 - 提供为应用软件而设的接口,以设置与另一应用软件之间的通信。如:HTTP、HTTPS、FTP、TELENT、SSH、SMTP、POP3、MYSQL等
表示层 - 把数据转换为能与接收者的系统格式兼容并适合传输的格式
会话层 - 负责在数据传输中设置和维护电脑网络中两台电脑之间的通信连接
传输层 - 把传输表头(TH)加至数据以形成数据包。传输表头包含了所使用的协议等发送信息。如:传输控制协议(TCP)UDP等
网络层 - 决定数据的路径选择和转寄,将网络表头(NH)加至数据包,以形成报文。网络表头包含了网络数据。如:互联网协议(IP)等
数据链接层 - 负责网络寻址、错误侦测和改错。当表头和表尾被加至数据包时,形成信息框(Data Frame)。数据链表头(DLH)包含了物理地址和错误侦测及改错方法(通过循环冗余检验(CRC)等技术,检测并纠正数据链路层传输中的差错)。数据表尾是一串指示数据包末端的字符串。分两个子层:逻辑链路控制子层和介质访问控制子层。
如常用的数据链路层协议和标准包括:以太网协议(Ethernet)、无线局域网协议(Wi-Fi)、透明传输协议(PPP)等
物理层 - 在局部局域网上传送数据帧,负责管理电脑通信设备和网络媒体之间的互通。包括了针脚、电压、线缆规范、集线器、中继器、主机接口卡等
8. 调整动态端口范围为20000-60000
答:
9. 总结TCP包头结构,TCP三次握手,4次挥手。
答:TCP包头结构:
源端口(16位):包含初始化通信的端口。标识报文的放回地址
目的端口(16位):标识目的端口
序列号(32位):标识本报文段发送数据的第一个字节的编号
确认号(32位):表示接收方期望发送方下一个报文段的第一个字节数据的编号
首部长度(32位):表示TCP报文段首部长度,即规定了该报文头的大小确认ACK(1位):表示
紧急URG(1位):表示指示是否有紧急数据;
ACK确认字段是否有效;
同步SYN(1位):表示序列号字段是否有效;
紧急指针(16位):表示需要被优先处理的紧急数据的位置;
推标志PSH:表示是否进行缓存队列处理,1表示尽快将数据转给应用处理;
复位标志RST:1表示连接中断异常,需要重新复位TCP连接;
终止FIN(1位):表示请求终止TCP连接;
窗口大小(16位):用于流量控制,标识接收方当前可接收数据的缓冲区大小;
校验和(16位):包头和数据的检验和;
优先指针(紧急,Urgent Pointer):16位,指向后面是优先数据的字节,在URG标志设置了时才有效。如果URG标志没有被设置,紧急域作为填充。加快处理标示为紧急的数据段。
选项(Option):长度不定,但长度必须以字节。如果 没有 选项就表示这个一字节的域等于0。
数据(Date):应用程序的数据。
TCP三次握手:
第一次握手:发送syn包,请求建立连接,初始化序列号,发送端进入syn_sent状态
第二次握手:接收端收到syn包,发送ack+syn包,初始化序列号。将序列号+1放入确认应答号 中。进入syn_rcvd状态
第三次握手:发送ack包,给确认应答号+1,发送给服务端表示收到报文,进入ESTABLELISEN状态;服务端收到报文后,也进入ESTABLELISEN状态。
TCP四次挥手:
刚开始双方都处于ESTABLISHED 状态,假如是客户端先发起关闭请求。四次挥手的过程如下
1.第一次挥手:
当客户A 没有东西要发送时就要释放 A 这边的连接,A会发送一个报文(没有数据)
Client发送一个FIN报文,用来关闭Client到Server的数据传送,报文中会指定一个序列号,即发出连接释放报文段(FIN=1,序号seq=u);
Client进入FIN_WAIT_1(终止等待1)状态
2.第二次挥手:
即服务端收到连接释放报文段后即发出确认报文段(ACK=1,确认号ack=u+1,序号seq=v);
Server进入CLOSE_WAIT(关闭等待)状态;
此时TCP链接处于半关闭状态,客户端到服务端的连接释放,即客户端已经没有要发送的数据了,但服务端若发送数据,则客户端仍要接收;
客户端收到服务端的确认后,进入FIN_WAIT2(终止等待2)状态,等待服务端发出的连接释放报文段
3.第三次挥手:
Server发送一个FIN,且指定一个序列号,用来关闭Server到Client的数据传送(和客户端的第一次挥手一样);
Server进入LAST_ACK状态。
4.第四次挥手:
Client进入TIME_WAIT状态, 等待 2MSL 时间;
Server进入CLOSED状态
10. 总结主机到主机的包传递过程。
答:先将数据或软件等进行封装打包;
若两台主机可直接通信连接,则可以通过网络将包传送;若无法直接通信,则发起广播查询IP地址,接收方返回MAC地址。发送方接收并记录在ARP表。
接收方接收包。
数据包的传输过程:PC要发送一个数据请求,首先查看ARP表中有没有其IP与MAC地址,有MAC地址就直接封装发送,没有就发送广播获取MAC后在封装发送。不同网段目标MAC填写路由器的MAC,路由器通过路由实现通信。
11. 总结IP地址 A, B, C, D 类,并解析IP地址的组成
答:IP地址由网络地址和主机地址组成,以下X为host即主机地址。网络地址的判断由掩码netmask来表示。
A 类:(0-127) 0-127.X.X.X 主要用于大型网络通讯,0NNNNNNN|host|host|host
B类:(128-191) 主要用于中型网络通讯,10NNNNNN|network|host|host
C类:(192-223)小型网络通信,110NNNNN|net|net|host
D类:(224-239)组通信,1110MMMM|Group|G|G
12. 201.222.200.111/18计算主机数?子网掩码?说明计算方法。
答:头字段201属于C类IP地址,子网掩码一共32位。能容纳的主机数应是=2^(32-18)-2=16382
子网掩码是255.255.192.0;实为11111111,11111111,11000000,0
13. 当A(10.0.1.1/16)与B(10.0.2.2/24)通信,A如何判断是否在同一个网段?A和B能否通信?
答:
A能向B发送访问,B不能访问A
A由自己掩码16判断,网段为10.0.0.0/16,B网的网段也是10.0.0.0/16,因此A认为是同一网段,A可以访问B;
B由自己的掩码24判断,B网段为10.0.1.0/24,A网的网段为10.0.0/24,因此B认为不是同一网段,B不能访问A。
14. 如何将10.0.0.0/8划分32个子网?
求每个子网的掩码,主机数。
答:子网个数=32=2^(网络ID向主机ID借的位数)
借位=5
掩码为8+5=13,即子网掩码为255.248.0.0
主机数=2^(32-13)=2^19=524286
15. 通过网络配置命令,让主机可以上网。 ip, netmask, gateway, dns,主机名。相关命令总结,最终可以通过这些配置让你的主机上网。
答:NETMASK=255.255.255.0 等于PREFIX=24
16. 解析/etc/sysconfig/network-scripts/ifcfg-eth0配置格式。
答:
DEVICE:网卡的设备名(接口名称),比如 eth0、enp3s0 等;
TYPE:网卡类型,通常指 Ethernet;
ONBOOT:开机是否启用该网络接口,值为 yes 或 no;
NM_CONTROLLED:是否使用 NetworkManager 管理网络连接,值为 yes(使用)或 no(不使用);
BOOTPROTO:引导时是否自动配置网络,值可以为 static(静态 IP)、dhcp(动态 IP)或 none(不自动配置);
IPADDR:静态 IP 地址;
PREFIX:子网掩码二进制位数,如 /24(等价于子网掩码为 255.255.255.0);
NETMASK:子网掩码,比如 255.255.255.0;
GATEWAY:默认网关;
DNS1 和 DNS2:首选和备选 DNS 服务器 IP 地址。
17. 基于配置文件或命令完成bond0配置
答:
18. 通过ifconfig命令结果找到ip地址.
答:ifconfig | sed -nr '2s/.*net ([0-9.]+).*/\1/p'
19. 使用脚本判断 你主机所在网络内在线的主机IP有哪些? ping通则在线。