Linux基础练习六

  • 练习题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

    1. 高可用性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的查找方式有两种:

    1. 递归(服务器与客户端之间)
    2. 迭代(服务器与服务器之间)

     

    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、作为网管,局域网的某个机器无法上网,如何排查???(局域网与个人电脑的情况)

     

     

    1. 作为linux运维,客户反映打开你部署的网站服务器慢,打不开,如何排查?(linux运维)

    Ping一下看丢包率和速度

    Ping的通丢包说明网络线路有问题,不丢包说明服务有问题

    Ping不通网络出了问题

    检查线路、检查服务端口、带宽、负载

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值