美文网首页
第六周作业

第六周作业

作者: 小邢_ | 来源:发表于2019-03-11 00:05 被阅读0次

    1100.0.0.16/28 对应网段的网关地址、广播地址、可分配IP地址范围

        十进制28位子网掩码对应二进制子网掩码 255.255.255.240

        广播地址:100.0.0.31/28

        可分配ip地址范围:100.0.0.16 -- 100.0.0.31

        可分配16个子网

        网关地址:在学路由交换的时候一般都会将有效ip地址范围最后一个地址设置为网关地址,即100.0.0.30

     100.0.0.16为主机地址,100.0.0.31为广播地址,所以有效的ip地址范围为 100.0.0.17-100.0.0.30


    2、使用man手册学习tcpdump的使用

    (1)概述

    tcpdump是用来抓取网络包内容描述信息的工具,根据使用者的定义对网络上的数据包进行截获的包分析工具,tcpdump可以将网络中传送的数据包的“头”完全截获下来提供分析。它支持针对网络层、协议、主机、网络或端口的过滤,并提供and、or、not等逻辑语句来帮助你去掉无用的信息。

    (2)实用命令实例

    默认启动

    # tcpdump

    普通情况下,直接启动tcpdump将监视第一个网络接口上所流过的数据包。


    监视指定网络接口的数据包

    # tcpdump -i eth1

    如果不指定网卡,默认tcpdump只会监视第一个网络接口,一般是eth0


    监视指定主机的数据包

    打印所有进入或离开HOSTNAME的数据包

    # tcpdump host HOSTNAME

    也可以指定ip,例如截获所有172.16.10.10的主机收到的和发出的所有的数据包

    # tcpdump host 172.16.10.10

    截获主机172.16.10.10和主机172.16.10.6或172.16.10.100的通信

    # tcpdump host 172.16.10.10 and \( 172.16.10.6 or 172.16.100 \)

    打印centos与xingxinchao或者redhat之间通信的数据包

    # tcpdump host centos and \( xingxinchao or redhat \)

    打印ace与任何其它主机之间通信的ip数据包,但不包括helios之间的数据包

    # tcpdump ip host ace and not helios

    监视所有送到主机hostname的数据包

    # tcpdump -i eth0 dst host hostname

    监视指定主机和端口的数据包

    如果想要获取主机210.27.48.1接受或发出的telnet包,使用如下命令

    # tcpdump tcp port 23 and host 210.27.48.1

    对本机的udp 123端口进行监视 123位ntp的服务端口

    # tcpdump udp port 23

    常用选项:

    (1)tcp:ip、icmp、arp、rarp、tcp、udp这些选项等都要放到第一个参数的位置,用来过滤数据的类型

    (2)-i eth0:只抓指定的接口eth0的数据包

    (3)-t:不显示时间戳

    (4)-s 0:抓取数据包时默认抓取长度为68字节。加上-s 0 后可以抓到完整的数据包

    (5)-c 100:只抓取指定的100个数据包

    (6)dst port ! 22:不抓取目标端口是22的数据包

    (7)src net 192.168.1.0/24:数据包的源网络地址为192.168.1.0/24

    (8)-w ./target.cap:保存成cap文件,方便用wireshark分析

    3、详细叙述僵尸进程产生的原因以及危害

    (1)什么是僵尸进程

    当子进程(child process)先于父进程(parent process)退出,但是父进程没有调用wait/waitpid回收子进程的资源,则子进程变成僵尸进程。但是如果该进程的父进程已经结束,那该进程就不会变成僵尸进程,因为每个进程结束的时候,系统会扫描所有运行中的进程,看看有没有哪个进程是刚刚结束的子进程,如果有就由init来接管它,成为它的父进程。

    (2)危害

    如果父进程不调用wait/waitpid,则子进程的保留信息不回被释放,造成内核资源的无法回收,同时进程号会一直被占用,系统所能使用的进程号是有限的,大量的产生僵尸进程将会导致系统不能产生新的进程。

    (3)怎么避免僵尸进程

    防止的办法是当父进程fork一个子进程后,必须通过wait/waitpid等函数等待子进程结束,但这会导致父进程挂起,所以通常的做法使用signal函数为SIGCHLD安装handler,在handler函数中调用wait/waitpid函数进行回收


    4、详细说明vmstat输出结果的含义

    [root@localhost ~]# vmstat

    procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----

    r  b  swpd  free  buff  cache  si  so    bi    bo  in  cs us sy id wa st

    1  0      0 3533764  2084 172880    0    0    3    0  18  16  0  0 100  0  0

    (1)procs:(进程相关信息)

            r:运行和等待运行的进程个数,cpu上等待运行的任务的队列长度

            b:处于不可中断睡眠状态的进程个数;被阻塞的任务队列长度

    (2)memory:(内存相关信息)

            swad:虚拟内存使用量

            free:物理内存使用量

            buffer:用于buffer的内存总量

            cache:用于cache的内存总量

            

     (3)swap:(交换分区信息)

                si:数据进入swap中的数据速率(KB/s)

                so:数据离开swap的速率(KB/s)

        (4)io:io相关信息

                bi:从块设备读入数据到系统的速率(KB/s)

                bo:保存数据至块设备的速率(KB/s)

        (5)system:(内核相关信息)

                in:每秒产生的中断数量

                cs:context switch,每秒上下文切换速率(数量)

           (6)cpu:cpu时间相关信息

                us:user space,用户空间占用CPU的时间百分比

                sy:system,内核空间占用cpu的时间百分比

                id:空闲时间百分比*(2.5.41之前,还包含等待io的时间)

                wa:等待io的时间百分比(2.5.41之前,被包含在id时间里)

                st:被虚拟机偷走的时间(2.6.11之后才有)

        


    相关文章

      网友评论

          本文标题:第六周作业

          本文链接:https://www.haomeiwen.com/subject/yixmpqtx.html