练习题7
1、查看当前系统每ip的连接数?
环境:多使用几个用户登录再进行查看
netstat -an |grep 'ESTABLISHED' |awk -F "[ :]+" '{print $6}'|sort -n|uniq –c
sort –n 按数字排序
uniq –c 合并相同项并统计
2、请列出以下服务使用的端口
http 80
https 443
ftp 20/21
telnet 23
ssh 22
rsync 873
dns 53
mysql 3306
方法一(不完善):
cat /etc/services |grep -Ew '^(http|https|ftp|telnet|ssh|rsync|dns|mysql)'
方法二:
[root@tdf tdf]# cat /etc/services |awk '$1~/^(http|https|ftp|telnet|ssh|rsync|dns|mysql)$/{print $0}'
ftp 21/tcp
ftp 21/udp fsp fspd
ssh 22/tcp # The Secure Shell (SSH) Protocol
ssh 22/udp # The Secure Shell (SSH) Protocol
telnet 23/tcp
telnet 23/udp
http 80/tcp www www-http # WorldWideWeb HTTP
http 80/udp www www-http # HyperText Transfer Protocol
http 80/sctp # HyperText Transfer Protocol
https 443/tcp # http protocol over TLS/SSL
https 443/udp # http protocol over TLS/SSL
https 443/sctp # http protocol over TLS/SSL
rsync 873/tcp # rsync
rsync 873/udp # rsync
mysql 3306/tcp # MySQL
mysql 3306/udp # MySQL
ftp 21/sctp # FTP
ssh 22/sctp # SSH
awk参数
~ 匹配正则
! ~ 取反,不匹配
3、请列出linux下系统常用的几种文件系统格式,并比较各自特点。
ext2
1、文件更新策略的谨慎实现将系统崩溃的影响减到最少。
2、在启动时支持对文件系统的状态进行自动的一致性检查。
3、支持不可变(immutable)的文件(不能修改、删除和更名)和仅追加(append-only)的文件(只能把数据追加在文件尾)。4、既与Unix System V Release
4(SVR4)相兼容,也与新文件的用户组ID的BSD语义相兼容。
总结:高效率、不带日志
ext3
- 高可用性2、数据的完整性:3、文件系统的速度:4、数据转换5、多种日志模式
总结:Ext2的升级版,带日志,相对安全,性能略低,中庸
ext4
第四代扩展文件系统(英语:Fourth EXtended filesystem,缩写为ext4)是Linux系统下的日志文件系统
总结:Ext3的升级版,带日志,相对安全,中庸,
Xfs
是一个64位文件系统,最大支持8EB减1字节的单个文件系统,实际部署时取决于宿主操作系统的最大块限制。对于一个32位Linux系统,文件和文件系统的大小会被限制在16TB。
总结:高性能的带日志的64位文件系统,centos7的文件系统就是这个
Reiserfs
适合大量小文件的系统。
注意:如果服务器较少,没必要去改文件系统,保持默认就好。如果服务器多则另说
如何查看linux支持的文件系统格式
[root@tdf tdf]# ls /lib/modules/2.6.32-431.el6.x86_64/kernel/fs/
autofs4 cifs dlm ext2 fat gfs2 jffs2 nfs nls udf
btrfs configfs ecryptfs ext3 fscache jbd lockd nfs_common squashfs xfs
cachefiles cramfs exportfs ext4 fuse jbd2 mbcache.ko nfsd ubifs
而且支持并不代表已经安装了。
4、在linux下给服务器的第一个网卡配置IP,网关和增加路由,请写出命令行的具体步骤:
IP:10.10.10.10/24 网关:10.10.10.1 需要增加的路由:到网段192.168.1.0/24 通过下一跳地址10.10.10.2.
临时操作
Ifconfig eth0 10.10.10.10 配置IP:10.10.10.10/24
Route add default gw 10.10.10.1 配置网关10.10.10.1
Route add –net 192.168.1.0/24 gw 10.10.10.2 配置一条路由到网段192.168.1.0/24 通过下一跳地址10.10.10.2.
5、请详细描述DNS解析过程,以请求www.baidu.com为例。
第一步:先查找linux本地恩建hosts和本地缓存,如果没有找到执行第二步。
第二步:查找dns服务器,使用迭代查询,先查找.根域名服务器,没有指向com.服务器,再查找com.服务器,也没有,就指向baidu.com.服务器,查找baidu.com.服务器。
第三步:dig @202.101.172.35 www.baidu.com +trace 可以使用这个命令来详细查看dns解析过程
Dns的查找方式有两种:
- 递归(服务器与客户端之间)
- 迭代(服务器与服务器之间)
6、请描述TCP连接和断开的流程
Tcp链接流程(三次握手)
第一步:客户端发送syn请求
第二步:服务端syn和ack
第三步:客户端发送ack确认
Tcpdump port 22 –Stn –c 3
-S 用绝对值而不是相对数值列出tcp关联数
-t 不显示时间戳
-n 不把ip地址显示成主机名
-c 指定收包的个数
F:fin断开
所谓三次握手(Three-Way Handshake)即建立TCP连接,就是指建立一个TCP连接时,需要客户端和服务端总共发送3个包以确认连接的建立。
(1)第一次握手:Client将标志位SYN置为1,随机产生一个值seq=J,并将该数据包发送给Server,Client进入SYN_SENT状态,等待Server确认。
(2)第二次握手:Server收到数据包后由标志位SYN=1知道Client请求建立连接,Server将标志位SYN和ACK都置为1,ack=J+1,随机产生一个值seq=K,并将该数据包发送给Client以确认连接请求,Server进入SYN_RCVD状态。
(3)第三次握手:Client收到确认后,检查ack是否为J+1,ACK是否为1,如果正确则将标志位ACK置为1,ack=K+1,并将该数据包发送给Server,Server检查ack是否为K+1,ACK是否为1,如果正确则连接建立成功,Client和Server进入ESTABLISHED状态,完成三次握手,随后Client与Server之间可以开始传输数据了。
注意:三次握手的序列号和确认号,如果用(序列号,确认号)表示一次握手,则三次握手的过程序列号和确认号如下:
1) 第1步:客户端向服务器发送一个同步数据包请求建立连接,该数据包中,初始序列号(ISN)是客户端随机产生的一个值,确认号是0;
2) 第2步:服务器收到这个同步请求数据包后,会对客户端进行一个同步确认。这个数据包中,序列号(ISN)是服务器随机产生的一个值,确认号是客户端的初始序列号+1;
3) 第3步:客户端收到这个同步确认数据包后,再对服务器进行一个确认。该数据包中,序列号是上一个同步请求数据包中的确认号值,确认号是服务器的初始序列号+1。
1、(X,0)
2、(Y,X+1)
3、(X+1,Y+1)
TCP断开连接过程(四次挥手)
【注意】中断连接端可以是Client端,也可以是Server端。
假设Client端发起中断连接请求,也就是发送FIN报文。Server端接到FIN报文后,意思是说"我Client端没有数据要发给你了",但是如果你还有数据没有发送完成,则不必急着关闭Socket,可以继续发送数据。所以你先发送ACK,"告诉Client端,你的请求我收到了,但是我还没准备好,请继续你等我的消息"。这个时候Client端就进入FIN_WAIT状态,继续等待Server端的FIN报文。当Server端确定数据已发送完成,则向Client端发送FIN报文,"告诉Client端,好了,我这边数据发完了,准备好关闭连接了"。Client端收到FIN报文后,"就知道可以关闭连接了,但是他还是不相信网络,怕Server端不知道要关闭,所以发送ACK后进入TIME_WAIT状态,如果Server端没有收到ACK则可以重传。“,Server端收到ACK后,"就知道可以断开连接了"。Client端等待了2MSL后依然没有收到回复,则证明Server端已正常关闭,那好,我Client端也可以关闭连接了。Ok,TCP连接就这样关闭了!
由于TCP连接时全双工的,因此,每个方向都必须要单独进行关闭,这一原则是当一方完成数据发送任务后,发送一个FIN来终止这一方向的连接,收到一个FIN只是意味着这一方向上没有数据流动了,即不会再收到数据了,但是在这个TCP连接上仍然能够发送数据,直到这一方向也发送了FIN。首先进行关闭的一方将执行主动关闭,而另一方则执行被动关闭,上图描述的即是如此。
(1)第一次挥手:Client发送一个FIN,用来关闭Client到Server的数据传送,Client进入FIN_WAIT_1状态。
(2)第二次挥手:Server收到FIN后,发送一个ACK给Client,确认序号为收到序号+1(与SYN相同,一个FIN占用一个序号),Server进入CLOSE_WAIT状态。
(3)第三次挥手:Server发送一个FIN,用来关闭Server到Client的数据传送,Server进入LAST_ACK状态。
(4)第四次挥手:Client收到FIN后,Client进入TIME_WAIT状态,接着发送一个ACK给Server,确认序号为收到序号+1,Server进入CLOSED状态,完成四次挥手。
四次挥手的序列号和确认号
(u,0)
(v,u+1)
(w,u+1)
(u+1,w+1)
上面是一方主动关闭,另一方被动关闭的情况,实际中还会出现同时发起主动关闭的情况,具体流程如下图:
7、如何查看路由规划,开放端口,tcp连接状态
路由规划:
route –n (一般来说命令行设置的默认路由,静态路由都是临时生效的,如果要永久生效(或者说重启后还是生效)可以将配置文件写入/etc/rc.local)
开放端口:
Netstat –ln
Tcp链接状态:
Netstat –t
-t tcp
8、192.168.1.20/25的子网掩码、子网数、每个子网可用IP地址数是多少、每个子网的广播地址、可用IP地址范围、网络地址范围、反掩码??
192默认是c类地址,24位子网掩码,现在是25位
子网掩码 255.255.255.128
子网数 2^25-2^24=2^1=2
Ip地址数 2^32-2^25=128
广播地址 192.168.1.127 192.168.1.255
可用地址范围 192.168.1.1~126 192.168.1.129~254
11、描述下列端口所运行的服务
21、22、23、25、110、143、873、3306
21:ftp 文本传输协议
22:ssh 加密的远程链接
23:Telnet 不加密的远程链接
25:smtp 邮件服务(用在服务器 之间)
110:pop3 邮件服务(用在服务器与终端之间)
143:imap 等同于pop3
873:rsync 远程和本地的文件复制工具
3306:mysql
两道企业面试题,网络与服务的故障处理
1、作为网管,局域网的某个机器无法上网,如何排查???(局域网与个人电脑的情况)
- 作为linux运维,客户反映打开你部署的网站服务器慢,打不开,如何排查?(linux运维)
Ping一下看丢包率和速度
Ping的通丢包说明网络线路有问题,不丢包说明服务有问题
Ping不通网络出了问题
检查线路、检查服务端口、带宽、负载
Linux基础练习六
最新推荐文章于 2022-07-10 19:47:24 发布